android - 在 Android 模拟器中向应用程序授予系统权限

标签 android installation apk silent

我正在构建一个将作为系统应用程序 bundle 在 Android 设备上的应用程序。制造商是将设备交付给我们的一种方式,所以与此同时,我想在模拟器中授予我的应用程序系统级权限,这样我就可以使用自动更新功能,无需任何交互即可静默安装 APK来自用户。根据我的阅读,我的理解是,如果您的应用程序使用与操作系统相同的证书进行签名,那么能够在 android 上进行静默安装的唯一方法。那么如何在模拟器中模拟呢?

最佳答案

如果想要signatureOrSystem权限,只需要放在系统镜像上即可;您不需要签署任何特殊证书。您可以像这样一次性执行此操作(直到退出模拟器):

> adb root
> adb remount
> adb push /path/to/My.apk /system/app/My.apk

完成后,您可以使用正常过程在数据分区上安装更多更新(“adb install -r/path/to/My.apk”,这是从 Eclipse 运行时开发人员工具所做的).以这种方式安装时,应用会保留它向系统镜像上的原始版本请求的任何 signatureOrSystem 权限,但无法获得任何新的此类权限。

如果您需要纯签名权限,则需要使用与声明这些权限的证书相同的证书(通常是核心框架,但媒体系统是单独的证书等)对您的应用进行签名。如果您请求签名权限,则不需要安装在系统镜像上,您可以将其作为普通应用程序安装,并且由于签名仍然可以获得权限。

关于android - 在 Android 模拟器中向应用程序授予系统权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9494965/

相关文章:

multithreading - pthread 在 php 中不工作

android - 我可以推送更新以播放我的原生应用程序的商店吗(而前一个构建是在 ionic 上开发的)

更改设备语言时更改了 Android APK 名称?

android - picasso 显示的图像小于预期(预期大小的一半)

air - 当我已经安装了 AIR 应用程序时,为什么 AIR 徽章总是显示 'install'?

c# - VS2008,Windows Mobile 安装程序项目

从 android studio 和控制台构建的 Android APK 具有不同的 SHA 指纹

java - 使用 Android 注释绑定(bind)到现有服务?

android - 使用OpenSL ES在Android上生成声音

java - 使用较新版本的 Android Studio 构建应用程序一年后广告停止运行