Как установить номеронабиратель по умолчанию для тестируемых функций? - PullRequest
0 голосов
/ 05 декабря 2018

Из https://developer.android.com/guide/topics/connectivity/telecom/selfManaged, я знаю, что вы можете установить номеронабиратель по умолчанию, указав необходимые элементы в манифесте и указанные разрешения.Одним из них является намерение набора номера.

То, что я пытаюсь сделать, - это создать библиотеку, которая выполняет все эти вызовы контент-провайдера и обеспечивает хороший реактивный способ работы с моим приложением.При создании библиотеки я хотел бы добавить несколько интеграционных тестов для этих вызовов устройств.

Существует GrantPermissionsRule, который помогает с настройкой разрешений, уже определенных в вашем манифесте, но как справиться с тем, чтобы стать приложением для набора номера по умолчанию или SMS-приложением?Я бы даже принял команду adb, которую можно запустить с помощью команды выполнения Runtime.

Я также попытался протестировать на эмуляторе и заметил, что вы можете дать вашему приложению WRITE_SECURE_SETTINGS, но не MANAGE_USERS, который является другим необходимым разрешениемвам нужно, если вы используете отражение для доступа к https://android.googlesource.com/platform/frameworks/base/+/master/telecomm/java/android/telecom/DefaultDialerManager.java

Любая помощь очень ценится!

1 Ответ

0 голосов
/ 05 декабря 2018

вы можете попробовать команду adb:

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

, заменив com.google.android.dialer вашим пакетом.

...