QR 码置备到设备所有者模式失败
QR code provisioning into Device Owner mode fails
我有一个设备 运行ning Android 7.1.1,我正在构建示例 DPC 应用程序以准备制作 COSU 信息亭应用程序,但我一直 运行ning 出错在配置设置中。
我采取的步骤:
- 恢复出厂设置
- 从 QR 配置屏幕成功扫描代码
- 应用下载成功,校验和校验通过。我知道这一点,因为起初它一直在错误生成校验和时失败。
- 安装应用程序消息顺利通过。
- 消息更改为 "Setting the device owner..." 并立即失败并显示通用消息 "Oops! Couldn't set up your device..."
我已将 DeviceAdminReceiver
子类中的简单 Toast
放入 onEnabled
和 onProvisioningComplete
函数中。 onEnabled
中的 Toast 显示,onProvisioningComplete
中的 Toast 不出所料。
该应用程序使用正确的发布证书签名,通过 adb 设置设备所有者也可以正常工作,这也让我相信组件名称和清单没问题,否则 adb 命令也会失败。
二维码文字:
{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "component name",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "the checksum",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "the link",
"android.app.extra.PROVISIONING_SKIP_ENCRYPTION" : "True",
"android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED" : "True"
}
有什么问题吗?我的 运行 没了。感谢您的任何输入!
{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "com.my.app/com.my.app.MyDeviceAdminReceiver",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "the checksum",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "the link",
"android.app.extra.PROVISIONING_SKIP_ENCRYPTION" : true,
"android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED" : true
}
PROVISIONING_SKIP_ENCRYPTION 和 PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED 的值应该是布尔值,而不是字符串。至少它在我的应用程序中是布尔值并且有效。
还要确保您以正确的方式指定了设备管理接收器的组件名称。指定的组件必须扩展 android.app.admin.DeviceAdminReceiver.
我有一个设备 运行ning Android 7.1.1,我正在构建示例 DPC 应用程序以准备制作 COSU 信息亭应用程序,但我一直 运行ning 出错在配置设置中。
我采取的步骤:
- 恢复出厂设置
- 从 QR 配置屏幕成功扫描代码
- 应用下载成功,校验和校验通过。我知道这一点,因为起初它一直在错误生成校验和时失败。
- 安装应用程序消息顺利通过。
- 消息更改为 "Setting the device owner..." 并立即失败并显示通用消息 "Oops! Couldn't set up your device..."
我已将 DeviceAdminReceiver
子类中的简单 Toast
放入 onEnabled
和 onProvisioningComplete
函数中。 onEnabled
中的 Toast 显示,onProvisioningComplete
中的 Toast 不出所料。
该应用程序使用正确的发布证书签名,通过 adb 设置设备所有者也可以正常工作,这也让我相信组件名称和清单没问题,否则 adb 命令也会失败。
二维码文字:
{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "component name",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "the checksum",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "the link",
"android.app.extra.PROVISIONING_SKIP_ENCRYPTION" : "True",
"android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED" : "True"
}
有什么问题吗?我的 运行 没了。感谢您的任何输入!
{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "com.my.app/com.my.app.MyDeviceAdminReceiver",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "the checksum",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "the link",
"android.app.extra.PROVISIONING_SKIP_ENCRYPTION" : true,
"android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED" : true
}
PROVISIONING_SKIP_ENCRYPTION 和 PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED 的值应该是布尔值,而不是字符串。至少它在我的应用程序中是布尔值并且有效。
还要确保您以正确的方式指定了设备管理接收器的组件名称。指定的组件必须扩展 android.app.admin.DeviceAdminReceiver.