usb 发表于 2022-9-4 14:59

Auto.js_4.1.1 Alpha2版本修改权限文件后回编译后无法使用

本帖最后由 usb 于 2022-9-4 15:01 编辑

Auto.js_4.1.1 Alpha2版本没有办法访问个人手机/sdcard/android/data目录,无法进行一些个性化操作
按照资料(详见:https://developer.aliyun.com/article/979349),
在Android 11以上需要在AndroidManifest.xml有如下权限配置并在脚本运行时动态申请权限
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" tools:ignore="ScopedStorage" />
尝试通过论坛apk easy tool工具(底层工具是apktool, 参考链接:APK Easy Tool_v1.59.2 --Windows下使用的安卓逆向工具)
进行反编译后在AndroidManifest.xml文件添加此权限配置并回编译成功,但是安装此apk后打开即闪退,不知道是我过程中哪里不对了(是不是反编译参数或者回编译参数不对了?),还请不吝赐教

以下是反编译和回编译过程的命令行和日志:


反编译APK文件中... 按ESC取消

/c "java -jar "D:\APK Easy Tool\Apktool\apktool_2.5.0.jar" d -f -m -s --no-assets --only-main-classes -o "D:\APK Easy Tool\1-Decompiled APKs\Auto.js_4.1.1 Alpha2" "D:\APK Easy Tool\1-Decompiled APKs\Auto.js_4.1.1 Alpha2.apk""

I: Using Apktool 2.5.0 on Auto.js_4.1.1 Alpha2.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: C:\Users\Administrator\AppData\Local\apktool\framework\1.apk
I: Decoding file-resources...

I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Baksmaling classes2.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
反编译成功

【接下来修改AndoirdMainfest.xml添加<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" tools:ignore="ScopedStorage" />】

回编译APK文件中... 按ESC取消

/c "java -jar "D:\APK Easy Tool\Apktool\apktool.jar" b -f -o "D:\APK Easy Tool\2-Recompiled APKs\Auto.js_4.1.1 Alpha2 add Permission.apk" "D:\APK Easy Tool\1-Decompiled APKs\Auto.js_4.1.1 Alpha2" "

I: Using Apktool 2.6.1
I: Smaling smali folder into classes.dex...
I: Smaling smali_classes2 folder into classes2.dex...
I: Building resources...
W: D:\APK Easy Tool\1-Decompiled APKs\Auto.js_4.1.1 Alpha2\AndroidManifest.xml:8: error: Error parsing XML: unbound prefix
W:
brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1):

回编译失败。请看日志

单击获取有关Apktool的更多信息
https://forum.xda-developers.com/t/tool-windows-apk-easy-tool-v1-58-3-dec-2020.3333960/#post-65775601

【把修改为<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />后再次编译】


回编译APK文件中... 按ESC取消

/c "java -jar "D:\APK Easy Tool\Apktool\apktool_2.5.0.jar" b -f -o "D:\APK Easy Tool\2-Recompiled APKs\Auto.js_4.1.1 Alpha2 add permission.apk" "D:\APK Easy Tool\1-Decompiled APKs\Auto.js_4.1.1 Alpha2" "

I: Using Apktool 2.5.0
I: Smaling smali folder into classes.dex...
I: Smaling smali_classes2 folder into classes2.dex...
I: Building resources...
I: Copying libs... (/lib)
I: Copying libs... (/kotlin)
I: Building apk file...
I: Copying unknown files/dir...
I: Built apk...
回编译成功

正在优化中...

-p 4 "D:\APK Easy Tool\2-Recompiled APKs\Auto.js_4.1.1 Alpha2 add permission.apk" "D:\APK Easy Tool\2-Recompiled APKs\Auto.js_4.1.1 Alpha2 add permission zipalign temp.apk"

优化成功

正在签名中...

/c "java -jar "D:\APK Easy Tool\Resources\ApkSigner.jar" sign--key "D:\APK Easy Tool\Resources\apkeasytool.pk8" --cert "D:\APK Easy Tool\Resources\apkeasytool.pem"--v4-signing-enabled false --out "D:\APK Easy Tool\2-Recompiled APKs\Auto.js_4.1.1 Alpha2 add permission.apk" "D:\APK Easy Tool\2-Recompiled APKs\Auto.js_4.1.1 Alpha2 add permission.apk""

签名成功

以下是工具配置截图:



页: [1]
查看完整版本: Auto.js_4.1.1 Alpha2版本修改权限文件后回编译后无法使用