-
-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix abi issue #10
Comments
Thanks for opening the issue! Can you give me more information to work with?
|
App's version : 2.0.0 rc 1 |
Field : CPU_ABI It should not be like this as instruction set used by the app we are patching may be different. I hope my point is clear. A possible solution : "base.apk" -> parent file -> + /oat -> arm64 or arm or x86 ... |
Wait, you mean compiled ".so" libraries? |
Yes |
Odex Patcher doesn't touch shared libraries, I don't understand what the problem is. Can you give me the APK that you have problem with, so I can replicate it and fix it? |
Okay here is a dummy apk. Remove .zip extension and it will be installable |
Now try patching the odex, you will see : After : Here the arm64 folder contains patched oat, while the app uses arm one. |
I would have sent a PR with fix for these issues but the project is in kotlin and i am a java person😄. |
I have never encountered such a case, but now I understand better. I will try as soon as possible, thank you!
Don't worry, currently the code is very messy, so it's not a problem if it's not good, in case I'll fix it later. 😉 |
Thanks! |
I have found the problem and am starting to write the fix. I need to rewrite the ISA "detection". |
Yeah, removing dependence on CPU_ABI would fix it. |
I don't want to go that way, because in the rare case that the app is not already optimized, there is no |
Okay, that seems plausible ;) |
Any updates? |
Not yet, I was working on it in September, but now I have to study. You can check the progress here: https://github.com/giacomoferretti/odex-patcher/tree/dev It's almost a complete rewrite, because the structure wasn't optimal. |
Okay! |
Compile odex and vdex per the instruction set app uses.
Example :
When an app contains arm7 binaries, it compiles odex and vdex with arm7 instruction set.
I am on Arm64 device and trying to do odex patching an app which only contains arm7 binaries. I patched the odex but seems it didnt work, i troubleshooted a bit and found that there was a created a new folder at oat dir, arm64.
But it should compile odex vdex as arm7 not arm64.
Kindly check out the issue
The text was updated successfully, but these errors were encountered: