【问题标题】:Unable to install apk after device provisioning (Android 8.0)设备配置后无法安装 apk (Android 8.0)
【发布时间】:2019-04-03 07:17:21
【问题描述】:

我们正在开发一个使用 Android Management API 和 QR 码配置的 COSU 应用程序。我们计划通过私人 Google Play 分发应用程序,但现在我正试图使其与使用 apk 的手动安装一起工作。它应该是这样工作的:

  1. 客户从我们那里收到二维码,该二维码将政策应用到设备上而不受限制。
  2. 配置后,客户端从其他来源(可能通过电子邮件)下载 apk 并安装它。
  3. 客户端通过调用 API 应用限制应用的策略。

所以,我被困在第二步 - 尝试安装下载的 apk 会导致此错误:

默认策略似乎没问题:

  {
   "name": "enterprises/<enterpriseName>/policies/policy_unlocked",
   "version": "11",
   "applications": [
    {
     "packageName": "com.axmor.fsinphone",
     "installType": "AVAILABLE",
     "defaultPermissionPolicy": "GRANT"
    }
   ],
   "persistentPreferredActivities": [
    {
     "receiverActivity": "com.axmor.fsinphone",
     "actions": [
      "android.intent.action.MAIN"
     ]
    }
   ],
   "systemUpdate": {
    "type": "WINDOWED",
    "startMinutes": 120,
    "endMinutes": 240
   },
   "debuggingFeaturesAllowed": true
  }
 ]
}

此政策适用于设备:

   "policyName": "enterprises/<enterpriseName>/policies/policy_unlocked",
   "appliedPolicyName": "enterprises/<enterpriseName>/policies/policy_unlocked",

我尝试过的:

  1. 安装发布 apk 和签名 apk(结果相同)
  2. 从 Android Studio 安装带有 adb 的 apk - 这可行,但这不是我想要的。

【问题讨论】:

  • 您是否尝试过从 Play 安装 APK?您显示的屏幕截图看起来不像来自 Play 的消息,您是如何触发的?
  • 不,我只是在 Android Studio 中构建 apk,将其放在设备上的“Downloads”文件夹中并尝试从那里安装它。我们还不确定我们的客户是否会批准使用 Google play 进行分发,无论如何我们必须在开发时以某种方式向客户展示应用程序。
  • 我明白了,有道理。在这种情况下,您可以尝试在策略中将installUnknownSourcesAllowed 设置为true,看看是否能解决问题?
  • 谢谢,成功了!但重要的是要提到,由于某种原因,我不得不再次重置和配置设备。
  • 很高兴它成功了。而且您必须重置确实很奇怪,因为通常该政策应该在您更新后应用。

标签: android cosu android-management-api


【解决方案1】:

(从 cmets 复制这里的解决方案)

为了能够从 Play 商店之外安装应用,您需要在政策中将 installUnknownSourcesAllowed 设置为 true。更多详情见policy references

【讨论】:

    猜你喜欢
    • 2013-03-11
    • 2020-06-18
    • 2015-07-17
    • 2011-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-10
    相关资源
    最近更新 更多