列出已安装应用程序的所有资源(通过反射)不能作为例外工作

时间:2014-07-23 23:48:03

标签: java android reflection android-resources

我需要获取应用程序的所有资源的列表。由于android没有提供特定的,我开始使用反射来获取应用程序的R类并阅读其字段。代码如下:

//

这适用于相同的应用程序和我开发的另一个应用程序(但没有签名/ zipaligned。安装了调试密钥),但不与其他应用程序一起安装。然后它抛出这个异常(在这个例子中我用facebook应用程序试了一下):

W/System.err﹕ java.lang.ClassNotFoundException: Didn't find class "com.facebook.katana.R" on path: DexPathList[[zip file "/data/app/com.facebook.katana-1.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
W/System.err﹕ at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
W/System.err﹕ at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
W/System.err﹕ at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
W/System.err﹕ at com.example.restest.MyActivity$Adapter.listDrawables(MyActivity.java:59)
W/System.err﹕ at com.example.restest.MyActivity$Adapter.<init>(MyActivity.java:46)
W/System.err﹕ at com.example.restest.MyActivity.set(MyActivity.java:37)
More, unimportant stuff

我忘记了什么,还是需要一些权限?我的应用需要root,所以这不会有问题!

非常感谢你!

0 个答案:

没有答案