【发布时间】:2011-08-13 19:46:43
【问题描述】:
我正在尝试以静默方式将 apk 安装到系统中。 我的应用位于 /system/app 并成功授予权限“android.permission.INSTALL_PACKAGES”
但是我在任何地方都找不到如何使用此权限。我试图将文件复制到 /data/app 并没有成功。我也尝试使用此代码
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(
Uri.parse("file:///sdcard/app.apk"),
"application/vnd.android.package-archive");
startActivity(intent);
但此代码会打开标准安装对话框。如何在授予android.permission.INSTALL_PACKAGES 的情况下在没有 root 的情况下静默安装应用程序?
PS 我正在编写一个应用程序,它将在第一次启动时将许多 apk 从文件夹安装到系统中(替换安装向导)。我需要它来使固件更轻。
如果你认为我在写病毒:所有程序都安装到/data/app。权限 Install_packages 只能授予位于 /system/app 或使用系统密钥签名的系统级程序。所以病毒无法到达那里。
正如http://www.mail-archive.com/android-porting@googlegroups.com/msg06281.html 所说,如果应用程序具有 install_packages 权限,则可以静默安装。此外,您不需要 Install_packages 权限来安装包而不是静默安装。加号http://www.androidzoom.com/android_applications/tools/silent-installer_wgqi.html
【问题讨论】:
-
@Fosco 假设他正在制造这样的设备作为原始设备制造商?
-
@Fosco 谁在乎?这是一个像 dascandy 描述的有效问题。当人们用“你不应该那样做”来回答这样的问题时,通常是没有效率的。有了这样的答案,我们获得了什么理解?
-
说到效率低下.. 你参加这个派对 Zach 晚了 2 年多一点,而且这个问题看起来与原来的大不相同。
-
@Fosco 哈哈。此外,我可以确认这仍然适用于最新的 android 操作系统。
-
@LarsH 我刚刚安装了 F-Droid 应用程序:他们不会静默安装东西,他们只是提示 Android 的包管理器。
标签: android installation silent