gpt4 book ai didi

android - 如何使用系统签名 key 签署我的应用程序?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:56:48 24 4
gpt4 key购买 nike

我需要创建一个 Robotium 应用程序,该应用程序将使用设置应用程序从菜单设置->无线和网络->Wi-Fi 打开/关闭 WIFi。我设法找到了一些示例代码 here这演示了如何仅通过 apk 文件启动应用程序。问题是我的 Robotium 应用程序应该与(系统)设置应用程序具有相同的签名。在尝试运行应用程序时,我收到错误消息:

Test run failed: Permission Denial: starting instrumentation ComponentInfo{com.jayway.test/android.test.InstrumentationTestRunner} from pid=354, uid=354 not allowed because package com.jayway.test does not have a signature matching the target com.android.settings

  1. 我能否以某种方式让它与 Android 模拟器一起工作?
  2. 如果我编译了 Android 手机镜像,我该如何在我的应用程序中使用 Android 系统签名?

最佳答案

我遇到了同样的问题。有些权限只有系统应用程序才能拥有。我试图访问adb shell dumpsys 来 self 的应用程序的命令,权限为 android.permission.DUMP

解决办法是...

在你项目的Android manifest 文件的manifest 标签中添加以下行

android:sharedUserId="android.uid.system"

您需要在用于构建二进制文件的代码中存在两个签名 key 。

platform.x509.pem

platform.pk8

存在于

android/build/target/product/security

从网上下载一个工具,即

signapk.jar

从 eclipse 导出未签名的 apk。通过右键单击android工具中的项目。将所有内容(即 keys 、未签名的 apk 和 signapk.jar )保存在一个文件夹中。运行以下命令

java -jar signapk.jar platform.x509.pem platform.pk8 unsigned.apk signed.apk

unsigned apk 是您的 apk 的名称,signed apk 是您想要的新名称。在此之后,只需使用命令在手机中安装您签名的应用程序

adb install signed.apk

关于android - 如何使用系统签名 key 签署我的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3557159/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com