安装应用到/system/priv-app后无法运行的问题解决指南

8次阅读
没有评论

问题描述

在一款基于Rockchip的中国平板设备上,该设备运行Android 6并进行了SystemUI禁用补丁。开发者开发了一个应用,该应用声明了LAUNCHER类别,旨在全面控制设备。开发者尝试将应用安装为系统应用以避免处理SDK 23+权限问题。通过Android Studio常规安装后,将应用移动到了/system/priv-app目录下,但在安装后发现应用未在启动时运行,也无法手动启动。

解决方案

方案1

根据最佳回答者建议,更改应用权限并重启设备应解决问题。具体操作如下:
1. 更改应用文件权限为 -rw-r--r--
2. 将文件所有者更改为 root
3. 执行重启操作。

以下是具体命令:

(root)
ls /data/app/my.package.name-1
base.apk
lib
oat
mount -o rw,remount /system
mv /data/app/my.package.name-1 /system/priv-app/AppName
chown root:root /system/priv-app/AppName
chmod -R 0755 /system/priv-app/AppName
chmod -R 0644 /system/priv-app/AppName/*.apk
reboot

方案2

对于签名问题,需要进行额外处理。即使更改了应用文件的所有权和权限,由于应用签名问题,系统可能仍不会自动授予所需权限。建议考虑以下方法:
1. 目标API级别为22或更低,这样可以获取任何所需的权限,只需安装APK即可。
2. 如果需要更高API级别的权限,可以尝试使用第三方签名工具进行签名,但这可能会引入安全风险。
3. 将应用提交给Google Play商店进行签名,确保应用被Google签名包管理器白名单。

通过上述方法,应该可以解决应用无法运行的问题。如果仍然存在问题,请检查应用日志以获取更多信息。

正文完