Comment déterminer si un raccourci de l'écran d'accueil existe?

Existe-t-il un moyen de déterminer si un raccourci particulier de l'écran d'accueil existe?

Mon application installe un raccourci sur l'écran d'accueil à l'heure de démarrage de l'appareil sous certaines conditions et je ne veux pas que les raccourcis en double apparaissent. Je ne veux pas non plus que les messages de Toast apparaissent en disant que «Raccourci créé» ou «Raccourci existe déjà» chaque fois que le périphérique démarre. J'ai trouvé un Intent Extra sans papiers appelé EXTRA_SHORTCUT_DUPLICATE qui empêchera les raccourcis en double d'être installés, mais le lanceur affiche toujours le message «Raccourci déjà existant». Je préfère ne pas compter sur Intent Extra sans document s'il y a une technique prise en charge.

  • Historique d'installation insuffisant dans l'annonce de Facebook
  • Latitude / Longitude et mètres
  • Android: activez le sélecteur parent lorsque vous sélectionnez un enfant
  • Comment voir l'aperçu de xml dans Android Studio
  • Le projet dit ne utilise pas le système de génération de gradle lorsqu'il est
  • Android: n'a pas réussi à allouer de la mémoire
  • 3 Solutions collect form web for “Comment déterminer si un raccourci de l'écran d'accueil existe?”

    Ce type d'intrusif n'est-il pas? Pourquoi ne pas simplement l'ajouter une fois, et laisser l'utilisateur décider s'ils veulent le garder ou non?

    Lorsque votre application crée un raccourci, définissez "true" pour un Boolean et rangez-le dans un stockage (par exemple un petit fichier ou des préférences partagées). Et vérifiez sa valeur lorsque votre application essaie de créer un raccourci.

    **// Checking if ShortCut was already added SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE); boolean shortCutWasAlreadyAdded = sharedPreferences.getBoolean("PREF_KEY_SHORTCUT_ADDED", false); if (shortCutWasAlreadyAdded) return; Intent shortcutIntent = new Intent(getApplicationContext(), MainActivity.class); shortcutIntent.setAction(Intent.ACTION_MAIN); Intent addIntent = new Intent(); addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "SBM"); addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.ic_launcher)); addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); sendBroadcast(addIntent); // Remembering that ShortCut was already added SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putBoolean("PREF_KEY_SHORTCUT_ADDED", true); editor.commit();** 
    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.