pour certains besoins spécifiques je dois changer l'application d'accueil par défaut Android avec ma demande d'accueil personnalisée (un réglage dans mon application qui permet de basculer par défaut home = ma demande ou à la maison précédente)Android: défaut de changement Accueil application
Je ne veux pas que l'utilisateur Voyage paramètres Android qui sont très compliqués.
peut me aider comme où il enregistre launcher.apk pour une application à domicile par défaut ou comment changer cette
La seule chose que je pouvais trouver était cette vieille question: How to change default Android's Desktop application?
mais pas de réponses du tout.
J'ai vu HomeSwitcher sur le marché qui fait l'affaire, mais pas de réponse pour le développeur qui pourrait être occupé.
EDIT
J'ai trouvé sur le web http://www.mail-archive.com/[email protected]/msg74167.html
Mais je suis arrivé la même question:
voici mon code:
private void makePreferred() {
PackageManager pm = getPackageManager();
IntentFilter f = new IntentFilter("android.intent.action.MAIN");
f.addCategory("android.intent.category.HOME");
f.addCategory("android.intent.category.DEFAULT");
ComponentName cn = new ComponentName("com.example.android.home", "com.example.android.home.Home");
pm.addPreferredActivity(f, IntentFilter.MATCH_CATEGORY_EMPTY, null, cn);
Je l'ensemble android.permission.SET_PREFERRED_APPLICATIONS
dans le manifeste . Après l'exécution du code ci-dessus, les journaux affirment que les choses ont été ajoutées comme prévu (mêmes journaux que lorsque je coche "Make default" de la liste d'IntentResolver). Cependant, quand je passe en cliquant sur la maison, la liste apparaît toujours et les journaux disent:
INFO/PackageManager(52): Result set changed, dropping preferred
activity for Intent { act=android.intent.action.MAIN cat=
[android.intent.category.HOME] flg=0x10200000 } type null
Il semble donc le résolveur supprime l'entrée par défaut. Est-ce que je fais quelque chose ne va pas, ou est-ce une mesure de sécurité? Quelles sont les idées derrière cela?
Je suis sûr que vous ne pouvez pas forcer un utilisateur à utiliser votre intention par défaut pour quoi que ce soit - il devrait toujours être leur choix. L'enregistrer comme une intention Home devrait suffire à l'utilisateur pour obtenir une boîte de dialogue demandant quelle application home ils veulent lancer. –
Cela n'est pas possible SAUF si vous travaillez avec une version principale pour un téléphone et même si c'est encore risqué. Pensez à dire à votre demandeur NON. Parce que ce comportement n'est pas attendu du point de vue d'une application. – JoxTraex