在Android下输入一个apk,然后解析其中的Androidmanifest.xml文件,得到其中的permission信息。
所以先用XMLPrinter进行解码,得到Androidmanifest.xml解密后正常的xml,再进行xml解析。
但是结果出现这种错误。求解!
Process: com.softsec.konghaohao.permissionxml, PID: 5147
java.lang.IllegalAccessError: tried to access class android.content.res.StringBlock from class android.content.res.AXmlResourceParser
at android.content.res.AXmlResourceParser.doNext(AXmlResourceParser.java:767)
at android.content.res.AXmlResourceParser.next(AXmlResourceParser.java:72)
at test.AXMLPrinter.getManifestXMLFromAPK(AXMLPrinter.java:108)
at com.softsec.konghaohao.permissionxml.MainActivity.onCreate(MainActivity.java:20)
at android.app.Activity.performCreate(Activity.java:5231)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5001)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
你好,你的问题解决了吗,
我之前碰到和你一样的问题,给我卡了很久很久,知道原因,但是就是解决不了。
最终还是找到解决办法了,现在特地登陆给你说一声。
我想你之前下载的是axmlprinter2.jar吧,现在不用,直接下载axmlprinter2 的源码,
然后将其中的android.content.res包的名字改一下,比如android.content.res2,
ok,解决问题。