我想在Android应用程序中加载密钥库。我已将密钥(truststore.bks
)复制到文件夹res/raw
中。来自Android的SDK生成带有trustsotre条目的R.java。在App中尝试使用:
Resources.getSystem().openRawResource(R.raw.truststore);
但我总是例外:
android.content.res.Resources$NotFoundException: Resource ID #0x7f040000
我查看apk文件,看到truststore.bks文件位于res/raw/
文件夹中。
我的错误是什么?
答案 0 :(得分:5)
问题是您正在使用系统级资源来调用Resources.getSystem。具体而言,文档指出这不提供对应用程序资源的访问。您需要在应用程序中的Context对象上调用getResources - 您的所有活动都是Context对象,因为它们是从Context继承的。
答案 1 :(得分:0)
你的R.java是否包含相应的条目.....
尝试删除R.java并再次构建....
虽然我不完全清楚你的问题....
这也不是一个合适的解决方案......