我目前正在尝试制作一个可以安装其他应用的Android应用。 我将我的应用程序移至/ system / apps,但发现这还不够。 该应用必须使用系统证书签名。
Process installAPK = Runtime.getRuntime().exec("pm install "+filePath);
运行居屋代码时,出现以下错误。
java.lang.SecurityException: Permission Denial: runInstallCreate from pm command asks to run as user -1 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
要解决我的问题(在Android仿真器中),我可以使用系统证书对我的应用进行签名。
但是我搜索了一下,发现了另一种方法。我找到了权限及其对应的保护级别的列表。
List of android permissions with their protection level
权限android.permission.INTERACT_ACROSS_USERS_FULL具有保护级别的签名或安装程序
The Android API将以下内容指定为“安装程序”类型
来自基本权限类型的附加标志:此权限可以自动授予安装软件包的系统应用程序。
系统如何知道特定的应用程序为“安装程序”类型。我可以在Android模拟器中将我的应用设置为“安装程序”吗? 如果没有,是否可以创建我自己的Android仿真器Rom并将我的应用定义为“安装程序”?