首先,感谢您在 Sof 中将这个问题作为一个新问题提出(正如所讨论的),以便其他开发人员可以做出贡献,并且它可能会在未来帮助其他人。
我对您的解决方案和应用程序有疑问...为什么不选择连接服务 https://developer.android.com/reference/android/telecom/ConnectionService作为自我管理的应用程序,因此您将无需成为系统中的默认电话应用程序,并且您将能够使用自己的自定义 Ui 而不是 CallUi 中的默认系统。
另外一点,安装在完全托管和专用设备上的 DPC 称为设备所有者 https://developers.google.com/android/work/terminology#device_owner_do并且设备所有者仅在首次安装设备时设置,而不是稍后设置(使用 Nfc 或 QrCode 配置)。
另外一点是,“设备管理员”不是设备所有者,并且不再支持设备管理 https://developers.google.com/android/work/device-admin-deprecation所以这个解决方案也无济于事。
我不熟悉 Android Management API,但只是找到这个:将自助服务终端应用程序链接到其他应用程序 https://developers.google.com/android/management/policies/dedicated-devices#kiosk_mode.
"applications": [
{
"packageName": "com.example.app",
"installType": "KIOSK",
"defaultPermissionPolicy": "GRANT"
},
{
"packageName": "com.google.android.dialer",
"installType": "FORCE_INSTALLED",
"defaultPermissionPolicy": "GRANT"
},
{
"packageName": "com.android.server.telecom",
"installType": "FORCE_INSTALLED",
"defaultPermissionPolicy": "GRANT"
}
]
请告诉我这是否对你有用,谢谢