web-dev-qa-db-fra.com

Ajouter mon application à la liste des applications AutoStart dans Android par programme

Je veux que mon application soit dans la liste de démarrage automatique après l'installation.

Je sais que lorsque j'installe une application comme (WhatsApp), elle passe automatiquement à la liste de démarrage automatique. Je veux que mon application soit la même

enter image description here

J'ai essayé le code dans cette question Comment démarrer automatiquement une Android?

mais malheureusement aucune des réponses n'a fait démarrer automatiquement l'application.

Je ne sais pas si je fais quelque chose de mal

la raison pour laquelle j'ai besoin que l'application soit à démarrage automatique est simplement pour recevoir des notifications du webservice. car l'application ne reçoit pas de notifications sauf si son ouverture ou son démarrage automatique est activé

apprécierait votre aide

merci

15
asmgx

Peu d'applications populaires s'exécutent en arrière-plan sans être détruites pendant le cycle de nettoyage de la mémoire (de nombreux fabricants OEM populaires personnalisent la pile ROM pour l'optimisation de la batterie/mémoire), car ils sont "sur liste blanche" par ces fabricants. Pour votre application, vous pouvez la mettre en liste blanche manuellement (via les "paramètres" correspondants pour les appareils) ou de manière pragmatique en redirigeant les utilisateurs vers la page de paramètres correspondante pour mettre la liste en blanc sur l'application.

Veuillez consulter les détails ici

2
Akki

Certaines applications telles que Whatsapp et Facebook ont ​​peut-être été répertoriées, c'est pourquoi l'option de démarrage automatique est activée.

Mais j'ai essayé le code suivant pour Xiaomi Devices j'espère que cela pourrait aider !!

    String manufacturer = "xiaomi";
    if(manufacturer.equalsIgnoreCase(Android.os.Build.MANUFACTURER)) {
        //this will open auto start screen where user can enable permission for your app
        Intent intent = new Intent();
        intent.setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity"));
        startActivity(intent);
    }
6
Karan sharma

Cet écran/comportement n'est pas natif d'Android, ce qui signifie que l'écran que vous affichez provient d'une rom personnalisée, probablement d'un fabricant particulier.

Comme vous l'avez dit, les réponses à l'autre question ne fonctionnent pas, mais elles sont le seul moyen natif de démarrer une application au démarrage/démarrage.

Vérifiez si l'application/la rom personnalisée possède une API (un récepteur de diffusion particulier à implémenter ou un SDK ...). Vous pouvez toujours décompiler l'une des applications qui implémentent ce comportement pour voir comment elles apparaissent dans ce menu.

4
galex