You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

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

火山引擎 最新活动