Rooted Android 13替换已安装应用SO文件遇权限拒绝问题求助
问题:Android 13中Root替换应用SO文件权限拒绝的原因
背景
Android应用的lib目录通常包含SO格式的原生库。我的项目需要在不重新编译安装APK的前提下,快速替换已安装应用的SO文件,目标路径示例:/data/app/~~hU4TMUlqGWmn_lDTOca2fQ==/com.rockstargames.gtasa_x-jYaHvUmlwiQpOdGiFYR-9Q==/lib/arm/libGTASA.so
使用的Batch脚本
"adb.exe" shell "su -c 'rm %NATIVE_LIB_DIR%/libGTASA.so'" "adb.exe" shell "su -c 'rm /data/local/tmp/update.so'" "adb.exe" push -p "R:\Android plugin deployment solution\Android plugin deployment solution\bin\Release\deployment\GTA San Andreas\2.00\ANDROID_ARMEABI_V7A\modified_lib\libGTASA.so" "/data/local/tmp/update.so" "adb.exe" shell "su -c 'chmod 555 /data/local/tmp/update.so'" "adb.exe" shell "su -c 'chown system /data/local/tmp/update.so'" "adb.exe" shell "su -c 'chown :system /data/local/tmp/update.so'" "adb.exe" shell "su -c 'cp -p /data/local/tmp/update.so %NATIVE_LIB_DIR%/libGTASA.so'"
现象
- 该脚本在Rooted Android 11设备上运行正常
- 在Rooted Android 13设备(两台小米机型)中,执行SO文件复制到应用lib目录的步骤时,出现权限拒绝错误
- 仅当目标应用仅采用v1签名方案时,替换操作才能成功
- 已执行
setenforce 0禁用SELinux,但问题仍未解决
求助
此权限拒绝问题的具体原因是什么?
内容的提问来源于stack exchange,提问作者fastman92




