使用平台密钥签名的应用程序的Android设备所有者模式(或将签名的应用程序用于自定义设备策略)

使用平台密钥签名的应用程序的Android设备所有者模式(或将签名的应用程序用于自定义设备策略),android,kotlin,android-device-owner,Android,Kotlin,Android Device Owner,我有平台密钥签署的应用程序,我需要将设备移动到kiosk模式 在我的例子中,kiosk模式是什么意思: 设置用户限制(更改默认活动、设置VPN等) 阻止用户访问第三方应用程序、某些系统应用程序等 将自定义活动设置为没有用户交互的主活动 将应用程序移动到锁定任务模式 我知道DevicepolicManager可以做到这一点。但该设备并没有任何谷歌的资源调配系统(如NFC或QR)。是否有任何方法可以使用由平台密钥签名的应用程序设置设备所有者,或使用具有设备所有者应用程序优点的应用程序?平台密钥仅

我有平台密钥签署的应用程序,我需要将设备移动到kiosk模式

在我的例子中,kiosk模式是什么意思:

  • 设置用户限制(更改默认活动、设置VPN等)
  • 阻止用户访问第三方应用程序、某些系统应用程序等
  • 将自定义活动设置为没有用户交互的主活动
  • 将应用程序移动到锁定任务模式

我知道DevicepolicManager可以做到这一点。但该设备并没有任何谷歌的资源调配系统(如NFC或QR)。是否有任何方法可以使用由平台密钥签名的应用程序设置设备所有者,或使用具有设备所有者应用程序优点的应用程序?

平台密钥仅授予您担任特定角色或进行某些系统设置的特定权限,但对于您的任务,您主要使用DevicePolicyManager。我不明白你为什么需要NFC或QR,你可以实现一个简单的代码来解锁信息亭模式


当然,有一些已完成的应用程序可以做到这一点,您不需要重新发明轮子,因为这种应用程序并不琐碎。

我发现,具有系统权限的应用程序可以完成许多使用DevicePolicyManager可以完成的事情。但作为隐藏API提供的一些功能:

  • 设置用户限制-可以使用UserManager完成
  • 阻止用户访问第三方应用程序-可以通过使用package manager禁用此类应用程序来实现
  • 将自定义活动设置为没有用户交互的主活动-可以使用PackageManager完成
  • 将应用程序移动到锁定任务模式-可以通过使用StatusBarService禁用状态栏和系统导航栏中的UI组件来完成

  • 对于我的情况,它应该是自定义应用程序。(c) “我不明白你为什么需要NFC或QR,你可以实现一个简单的代码来解锁信息亭模式。”-因为我发现在没有谷歌服务的设备上实现这一点的唯一方法是通过adb设置。但我需要为普通用户提供可用的资源调配系统。你能给我提供(c)“解锁信息亭模式的简单代码”吗?NFC的优点是你可以在后台收听,而不需要UI(按钮等)。QR无论如何都需要任何东西来实例化扫描。我曾经实现了一个不可见按钮的组合,需要以某种方式触摸这些按钮,以显示一个对话框来输入可定制的解锁代码(数字),但这取决于您的应用程序