alibaba / alibaba/AndFix

app加固后,andfix出错

Open
#54 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
7k
Forks
1.6k
PR merge metrics
No merged PRs in 30d

Description

使用的是360加固,加固后app加载out.apatch时报错

10-14 03:14:06.137 2541-2541/? E/dalvikvm﹕ Unable to extract+optimize DEX from '/data/data/com.yang.tony.andfixdemo/files/apatch/out.apatch'
10-14 03:14:06.137 2541-2541/? E/AndFixManager﹕ pacth
java.io.IOException: unable to open DEX file
at dalvik.system.DexFile.openDexFile(Native Method)
at dalvik.system.DexFile.(DexFile.java:109)
at dalvik.system.DexFile.loadDex(DexFile.java:149)
at com.alipay.euler.andfix.AndFixManager.fix(Unknown Source)
at com.alipay.euler.andfix.patch.PatchManager.loadPatch(Unknown Source)
at com.alipay.euler.andfix.patch.PatchManager.addPatch(Unknown Source)
at com.yang.tony.andfixdemo.MainApplication.onCreate(Unknown Source)
at com.qihoo.util.StubApplication.onCreate(StubApplication.java:74)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1000)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4391)
at android.app.ActivityThread.access$1300(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1294)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)

出错是在AndFixManager的fix方法下:
final DexFile dexFile = DexFile.loadDex(file.getAbsolutePath(),optfile.getAbsolutePath(),Context.MODE_PRIVATE);

不知道如何才能做到兼容,其他加固平台还未试过^-^

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the reported call in AndFixManager.fix, especially the DexFile.loadDex invocation, and reproduce loading out.apatch after 360 hardening using the supplied stack trace. Compare behavior with an unhardened app and inspect the patch-loading path. Done means identifying whether this configuration can be supported and recording a verified fix or a clear compatibility limitation.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, java
Domain
mobile-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.