JCE无法在Robolectric中验证提供商BC

时间:2015-09-05 11:01:36

标签: robolectric

我正在尝试在我的应用中测试密钥库签名,但无法从资产中加载密钥库,因为错误被抛出:

  

java.io.IOException:构造MAC时出错:   java.lang.SecurityException:JCE无法验证提供程序BC

这是代码

@Test
public void testKeyStore() {

    try {
        KeyStore keyStore = KeyStore.getInstance("PKCS12");
        InputStream inputStream = RuntimeEnvironment.application.getAssets().open(fileName);
        keyStore.load(inputStream, password.toCharArray());

    } catch (Exception e) {
        e.printStackTrace();
    }
}

如果没有使用Robolectric,是否有人知道如何进行此测试? 感谢

1 个答案:

答案 0 :(得分:0)

你真的不需要 Robolectric 。尝试下一步:

@Test
public void testKeyStore() throws Exception {
        KeyStore keyStore = KeyStore.getInstance("PKCS12");
        String path = System.getProperty("user.dir") + "src/main/assets/filename.key";
        InputStream inputStream = TimerTest.class.getResourceAsStream(path);
        keyStore.load(inputStream, "test".toCharArray());
}