web-dev-qa-db-fra.com

Comment créer un téléphone par défaut d'application ou un gestionnaire d'assistant sur l'appareil en donnant à l'utilisateur une option pour en faire une application par défaut

Nous avons reçu un avis de politique de playStore comme:

Le manifeste de votre application demande le groupe d'autorisations Journal des appels (par exemple, READ_CALL_LOG, WRITE_CALL_LOG, PROCESS_OUTGOING_CALLS)
Il doit être activement enregistré en tant que gestionnaire par défaut du téléphone ou de l'assistant sur l'appareil.

Je ne suis pas en mesure de comprendre ce que Assistant gestionnaire sur l'appareil. Toute contribution ou suggestion est la bienvenue.

quelles sont les exigences minimales de l'application Android pour remplir l'exigence.

25
Wasim

Consultez la documentation sur: https://developer.Android.com/reference/Android/telecom/TelecomManager#ACTION_CHANGE_DEFAULT_DIALER

Exemple de code:

Intent intent = new Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER);
intent.putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, getActivity().getPackageName());
startActivity(intent);
3
marmor

En plus de ce que marmor a déclaré, la documentation mise à jour pour Android 10 Q indique: -

Ceci n'est plus supporté depuis Q, veuillez utiliser RoleManager.createRequestRoleIntent(String) avec RoleManager.ROLE_DIALER au lieu.

Le code a réellement fonctionné lorsque j'ai suivi la réponse de freezo9 concernant les filtres d'intention dans le fichier manifeste: - https://stackoverflow.com/a/55716209/7552894

en ajoutant ceux-ci: -

<intent-filter>
<action Android:name="Android.intent.action.VIEW"/>
<action Android:name="Android.intent.action.DIAL"/>

<category Android:name="Android.intent.category.DEFAULT"/>
<category Android:name="Android.intent.category.BROWSABLE"/>

<data Android:scheme="tel"/>
</intent-filter>
<intent-filter>
<action Android:name="Android.intent.action.DIAL"/>

<category Android:name="Android.intent.category.DEFAULT"/>
</intent-filter>
0
Omar Boshra

Vous ne pouvez pas en faire la valeur par défaut par programme. Le fait est que l'utilisateur doit choisir la valeur par défaut, afin qu'il puisse choisir quelle application reçoit ses SMS et ses appels. Vous pourrez peut-être le faire avec root, mais rien d'autre.

0
Gabe Sechan

Soit dit en passant, si votre application n'est pas un gestionnaire de téléphone, mais que vous en avez toujours besoin pour que les fonctionnalités fonctionnent, vous pouvez essayer d'obtenir une dérogation (voir le dernier paragraphe de l'article): https://support.google. com/googleplay/Android-developer/answer/9047303? hl = en afin que votre application ne soit pas un gestionnaire de téléphone mais puisse toujours obtenir ces autorisations.

0
Mara