Les applications peuvent avoir un nombre quelconque d'activités pouvant être lancées. Je sais comment obtenir la liste de ces activités via PackageManager.Déterminer si une activité spécifique d'une application peut être lancée
Existe-t-il un moyen de déterminer quelles activités peuvent être lancées via startActivity? Par exemple, l'application Documents To Go a différentes activités qui vont démarrer Word, Excel, Powerpoint, PDF, etc ... Je suis capable de lancer tout cela très bien.
Cependant, il contient aussi des activités que je ne suis pas capable de lancer avec startActivity ... Si j'essaie de faire cela, j'ai une SecurityException.
Je veux être en mesure de déterminer quelles activités que je peux en toute sécurité et lancer que je ne peux pas je présente donc que l'utilisateur une liste des activités que je peux en toute sécurité à partir de lancer mon application ...
Est-ce possible?
Merci! Je vais regarder dans cela ... – Justin
Malheureusement, la méthode resolveActivity() est seulement pour les intentions implicites. Puisque j'ai les noms de paquet et de classe pour les activités que je lance (je les reçois via PackageManager) cette méthode ne fonctionnera pas pour ce que je veux faire. Je n'ai aucun problème à trouver l'activité à lancer. Le problème est que lorsque j'essaie de le lancer via startActivity(), j'obtiens une erreur SecurityException ... Toutes les autres suggestions sont les bienvenues. – Justin
Pour ce que ça vaut, l'erreur exacte que je reçois de la SecurityException est la suivante: Permission Denial: début Intention {flg = 0x10600000 cmp = com.dataviz.docstogo/com.dataviz.dxtg.common.android.WelcomeScreenActivity} de ProcessRecord { 43565cb0 14660: com.magouyaware.appswipe/10043} (pid = 14660, uid = 10043) requiert null – Justin