0

我从https://developer.android.com/guide/topics/connectivity/telecom/selfManaged知道,您可以通过在清单中列出必要的项目和权限来设置默认拨号器。其中之一是拨号意图。

我想要做的是构建一个库来执行所有这些内容提供程序调用,并为我的应用程序提供一种很好的反应方式。在构建库时,我想围绕这些设备调用添加一些集成测试。

GrantPermissionsRule 有助于设置清单中已经定义的权限,但是如何处理成为默认拨号程序或 SMS 应用程序?我什至接受您可以使用运行时执行命令运行的 adb 命令。

我还尝试在模拟器上进行测试,我注意到您可以为您的应用提供 WRITE_SECURE_SETTINGS 但不能提供 MANAGE_USERS 如果您要使用反射访问https://android.googlesource.com/platform/frameworks ,这是您需要的其他必要权限/base/+/master/telecomm/java/android/telecom/DefaultDialerManager.java

任何帮助深表感谢!

4

1 回答 1

0

你可以试试 adb 命令:

adb shell settings put secure dialer_default_application com.google.android.dialer

用你的包替换 com.google.android.dialer。

于 2018-12-05T09:03:44.603 回答