Androc Posté(e) 8 janvier 2013 Share Posté(e) 8 janvier 2013 (modifié) Bonjour, je suis actuellement en train de tester une application sur le Market et celle-ci propose un paramètre "Garder l'écran allumé". Cette application ne requiert pas la permission "Empêcher la mise en veille du téléphone". En pratique, cette application maintient bien l'écran allumé, comme elle l'annonce. Du coup, je me pose la question : comment fait-elle ? Est-ce qu'il y a une manière propre d'arriver à ce résultat ou bien est-ce une méthode un peu sale (ou astucieuse) qui consisterait à maintenir l'écran allumé de manière active (en simulant une activité tactile, par exemple) ? D'avance merci pour vos réponses. Edit : réponse validée : http://forum.frandro...n/#entry2166375 Modifié 8 janvier 2013 par Androc Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
chpil Posté(e) 8 janvier 2013 Share Posté(e) 8 janvier 2013 Effectivement, une permission est normalement nécessaire pour qu'une application puisse garder le téléphone éveillé. Mais il existe (au moins) une façon de contourner cela, en passant par deux applications qui se partagent le même processus: une première application déclare une permission; la seconde ne la déclare pas, mais l'obtient effectivement si la première application est aussi installée. Tu peux regarder cette présentation qui explicite cela Quelle est l'application en question ? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Androc Posté(e) 8 janvier 2013 Auteur Share Posté(e) 8 janvier 2013 (modifié) Merci pour cette réponse rapide. Présentation intéressante. J'ai installé les applications de démo et au final, si je regarde les permissions depuis le téléphone, Android détecte bien les permissions de l'application avec élévation de privilèges. Au passage, je m'étonne que l'application "Real privileges" puisse voir les applications et leurs permissions sans avoir besoin de permissions particulières. Dans le cas de l'application que j'étudie (https://play.google....sportcoach.free), ce n'est pas le cas. Du coup, j'hésite à décompiler l'application pour voir d'où ça vient, car ça m'intrigue. Modifié 8 janvier 2013 par Androc Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
chpil Posté(e) 8 janvier 2013 Share Posté(e) 8 janvier 2013 Ce ne paraît pas spécialement gênant qu'une application puisse voir les permissions des autres applications, ça ne lui donne aucune permissions pour autant Pour ce qui est de l'application dont tu parles qui arrive à maintenir allumé le téléphone sans la permission WAKE_LOCK, c'est assez étrange, ce n'est pas pour rien qu'il y a une API pour faire cela. Peut-être peux tu t'adresser au développeur de la dite application, pour lui demander quelle technique il utilise pour arriver à ses fins ? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Androc Posté(e) 8 janvier 2013 Auteur Share Posté(e) 8 janvier 2013 Ce qui me semble gênant dans le fait de voir les autres applications, c'est que du coup une application qui n'aurait en théorie que accès à internet, pourrait récupérer la liste des applications d'un utilisateur et l'exporter à son insu. J'ai la même problématique avec une fonctionnalité que j'ai testé pour une application perso : l'Intent Filter sur le montage de la SD. On peut demander à être prévenu lorsque la SD est montée, sans permission particulière et du coup, en pratique, on peut demandé à être lancé au démarrage du téléphone sans avoir besoin de la permission adéquate. Je vais envoyer un mail au développeur et dans le pire des cas, je décompilerait l'application. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Androc Posté(e) 8 janvier 2013 Auteur Share Posté(e) 8 janvier 2013 (modifié) Le mec m'a répondu très gentiment et j'ai trouvé la solution. ... Bon, je plaisante, je vais pas faire comme tous les gens sur internet qui postent juste pour dire "yepeee j'ai trouvé" et c'est tout. En fait, il y a 3 façon de faire qui sont très bien expliquées ici : http://blog.blundell...-possible-ways/. Apparemment, la solution du WakeLock est à éviter si possible. C'est un usage à réserver seulement si on a vraiment besoin du processeur, de la connexion réseau, etc. Dans le cas de l'application qui m'intéresse, il s'agit du maintient de l'écran pour un simple compte à rebours grâce à la méthode par programmation, c'est donc très largement suffisant. Modifié 8 janvier 2013 par Androc Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
chpil Posté(e) 8 janvier 2013 Share Posté(e) 8 janvier 2013 Finalement, quand on connait la réponse, elle paraît évidente. J'avais oublié l'existence de ce flag dans le layout... Merci de nous avoir fait part de la solution Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Rejoignez la conversation
Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.