web-dev-qa-db-fra.com

GET_TASKS Autorisation obsolète

J'ai une application de sécurité (App Locker) qui utilise cette autorisation:

Android.permission.GET_TASKS

Dans Android Lollipop, cette autorisation est obsolète et je veux que mon application fonctionne dans une API +21.
Quelqu'un peut-il me guider comment?

Thnx :)

40
Saman Sattari

Il y a une raison pour laquelle il est déconseillé. Le niveau de protection de Android.permission.GET_TASKS a été élevé à signatureOrSystem. Il n’existe pas de solution simple et peu nuisible pour cela.

Depuis Lollipop, cette méthode n’est plus disponible pour les applications tierces: l’introduction de renvois centrés sur les documents signifie qu’elle peut divulguer des informations personnelles à l’appelant. Pour assurer la compatibilité ascendante, il retournera tout de même un petit sous-ensemble de ses données: au moins les tâches propres à l'appelant (bien que consultez getAppTasks () pour connaître le moyen correct de récupérer ces informations), et éventuellement d'autres tâches, telles que home, connues de ne pas être sensible.

http://developer.Android.com/reference/Android/app/ActivityManager.html#getRecentTasks (int,% 20int)

29
Caqtus

J'ai vu une nouvelle permission REAL_GET_TASKS qui serait utilisée à la place de GET_TASKS:

Nouvelle version de GET_TASKS pouvant être demandée par les applications, car GET_TASKS ne donne pas vraiment accès aux informations sur les tâches. Nous avons besoin de cette nouvelle, car de nombreuses applications existantes utilisent des bibliothèques d'ajout et disposent d'un code de validation pour garantir que l'application a demandé l'autorisation GET_TASKS en vérifiant si elle a été accordée. Si ce n'est pas le cas, l'application tue l'application avec un message d'être bouleversé. Nous devons donc continuer à donner l'impression que l'application obtient cette autorisation, même si elle ne sera jamais vérifiée, et les nouvelles applications privilégiées peuvent désormais demander à celle-ci un accès réel.

Voir la différence de code Android à l'adresse: https://Android.googlesource.com/platform/frameworks/base/+/2d7576b%5E!/

9
Gürol Canbek