【问题标题】:App signature changes after installing app on the system partition在系统分区上安装应用程序后应用程序签名更改
【发布时间】:2018-05-18 15:53:56
【问题描述】:

我正在为特定平板电脑开发一个应用程序,该应用程序应通过我们的自定义服务器进行更新(只需检查带有版本的 json,如果该版本大于当前版本 - 我们下载新的 apk 并安装它。 并面临一些奇怪的签名行为。

我使用发布密钥签署了一个应用程序,并将其安装到设备上后 - 一切正常。 但 当平板电脑的制造商将该签名的 apk 安装为系统应用程序时 - 然后以某种方式更改应用程序的签名证书并且我无法更新它(因为证书因控制台而异)。

我尝试记录证书的哈希值以及我收到的内容:

  • 简单的安装方式:

    • 当前:1925650013
    • 下一个版本:1925650013
  • 应用安装为系统

    • 当前:-1314815697
    • 下一个版本:1925650013

看起来它变成了“调试”键,我不明白为什么。

【问题讨论】:

    标签: android signing


    【解决方案1】:

    您的问题已经包含答案:when tablets' manufacturer installs that signed apk as system app

    系统应用程序(原始含义)被授予系统权限,并且为了获得此权限,应用程序必须使用系统制造商的密钥进行签名。

    如果您的应用不需要系统权限,我认为这是您和平板电脑制造商之间的误解 - 在这种情况下,您只想将您的应用预安装在系统分区上。大多数用户将此类应用称为“系统应用”,但实际上它只是系统分区上的常规应用。

    【讨论】:

    • 嘿,感谢您的关注:) 是的,可能他们刚刚按照您所说的将它安装在系统分区上。但是您有什么想法可以更改应用程序的签名证书吗?因为除了开启wifi和蓝牙外,我们的app并没有和native端做任何事情,所以我们可以很容易的把它算作预装。我们所需要的只是能够更新它:)
    猜你喜欢
    • 2016-05-10
    • 2016-01-21
    • 2018-03-16
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 2016-10-01
    • 1970-01-01
    • 2011-07-17
    相关资源
    最近更新 更多