add howtos

This commit is contained in:
Nils 2021-09-27 19:00:16 +02:00
parent cd7b809b31
commit 3e5c051d11
Signed by: byreqz
GPG Key ID: 396A62D7D436749E

View File

@ -12,13 +12,58 @@ includes tools used to patch the jar
default folder for builds to end up in, also includes prebuilt zips default folder for builds to end up in, also includes prebuilt zips
# how-to # how-to
## prerequisites
- TWRP and Magisk already being present on the phone
- access to a Linux shell (WSL also works)
- ADB + drivers if required
- Java
## Android 5-9 ## Android 5-9
Your system is most likely supported by NanoDroid Patcher and can be patched by flashing the magisk module: https://gitlab.com/Nanolx/NanoDroid
If manual deodexing is still needed, as for example AOSP 9, you can follow the tutorial down below:
1. Boot your phone into TWRP and mount the system
2. Pull the services.jar from your system
- `adb pull /system/framework framework`
- on OxygenOS you might need to pull from `/system/system/framework/` or `/system_ext/system/framework/services.jar`
3. Back up the file
- `cp framework/services.jar services.jar.bak`
4. Determine your architecture
- this will most likely be `arm64` but could be `arm` on older phones
5. Extract the required files with baksmali
- `java -jar baksmali.jar x framework/oat/[arch]/services.odex -d framework/[arch] -d framework/ -o services-new`
6. Patch the extracted files with smali
- `java -jar smali.jar a services-new -o classes.dex`
7. If it was successfully patched, add the new dex to the jar
- `zip -j framework/services.jar classes*.dex`
8. Push the new jar to the device
- `adb push framework/services.jar /system/framework`
- `adb shell chmod 0644 /system/framework/services.jar`
- `adb shell chown root:root /system/framework/services.jar`
9. Now flash NanoDroid Patcher
## Android 10 ## Android 10
As far as I know, its not possible to patch the vdex files in OxygenOS 10. As far as I know, its not possible to patch the vdex files in OxygenOS 10.
(for generic Android 10 systems, check here: https://gitlab.com/Nanolx/NanoDroid/-/blob/master/doc/DeodexServices.md#vdex)
## Android 11 ## Android 11
1. Boot your phone into TWRP and mount the system
2. Pull the services.jar from your system
- `adb pull /system/framework/services.jar`
- on OxygenOS you might need to pull from `/system/system/framework/services.jar` or `/system_ext/system/framework/services.jar`
3. Back up the file
- `cp services.jar services.jar.bak`
4. Patch the jar using oF2pks' haystack and his custom OxygenOS hook
- `java -jar dexpatcher-1.8.0-beta1.jar -a 30 -M -v -d -o ./ services.jar 11-hook-services.jar.dex 11core-services.jar.dex`
5. add the resulting dex files back into a new jar
- `mkdir -p build/system/framework && cd build`
- `zip -j system/framekwork/services.jar ../classes*.dex`
6. replace the services.jar in spoof_AVDapi30.zip
- `cp bin/spoof_AVDapi30.zip .`
- `zip -u spoof_AVDapi30.zip /system/framework/services.jar`
7. flash the module (build/spoof_AVDapi30.zip) through Magisk manager while booted into the system
# credits # credits
this project was mostly inspired by https://gitlab.com/Nanolx/NanoDroid/-/issues/169 and most things here have been derived from that thread. <br> this project was mostly inspired by https://gitlab.com/Nanolx/NanoDroid/-/issues/169 and most things here have been derived from that thread. <br>