{"id":963,"date":"2019-01-04T16:24:58","date_gmt":"2019-01-04T15:24:58","guid":{"rendered":"http:\/\/chezdom.net\/etu\/?page_id=963"},"modified":"2019-01-11T21:46:41","modified_gmt":"2019-01-11T20:46:41","slug":"sujet-14-permissions","status":"publish","type":"page","link":"https:\/\/chezdom.net\/etu\/android-sujets\/sujet-14-permissions\/","title":{"rendered":"Sujet #14 &#8211; Runtime Permissions"},"content":{"rendered":"<p>Nous avons vu en cours le syst\u00e8me de permissions d&rsquo;Android. Une fonctionnalit\u00e9 int\u00e9ressante a \u00e9t\u00e9 introduite dans l&rsquo;API 23, les permissions \u00e0 l&rsquo;ex\u00e9cution (<em>Runtime Permissions<\/em>). Il s&rsquo;agit de ne demander une permission que lorsque l&rsquo;application a besoin de l&rsquo;utiliser. Cela permet en particulier de s&rsquo;assurer de l&rsquo;accord de l&rsquo;utilisateur d&rsquo;une mani\u00e8re plus pertinente, en effet lorsque les permissions sont demand\u00e9es \u00e0 l&rsquo;installation, on peut consid\u00e9rer que la majorit\u00e9 des utilisateurs les accordent sans y pr\u00eater attention, alors que dans ce cas l&rsquo;utilisateur sera probablement plus attentif \u00e0 la permission demand\u00e9e.<\/p>\n<p>Docs :<\/p>\n<ul>\n<li>https:\/\/developer.android.com\/guide\/topics\/permissions\/overview<\/li>\n<li>http:\/\/www.vogella.com\/tutorials\/AndroidPermissions\/article.html<\/li>\n<\/ul>\n<h2>Application de d\u00e9mo<\/h2>\n<p>Cr\u00e9er une application de test qui va demander 2 ou 3 permissions lorsqu&rsquo;on appuiera sur des boutons. Il n&rsquo;est pas n\u00e9cessaire d&rsquo;impl\u00e9menter les fonctions qui n\u00e9cessiteraient ces permissions. On veillera \u00e0 indiquer au d\u00e9marrage si ces permissions sont d\u00e9j\u00e0 accept\u00e9s ou non (sur l&rsquo;\u00e9cran, par exemple un textview \u00e0 c\u00f4t\u00e9 de chaque bouton).<\/p>\n<h2>Pr\u00e9sentation<\/h2>\n<p>Expliquer le syst\u00e8me de permissions d&rsquo;Android en d\u00e9taillant les permission \u00e0 l&rsquo;ex\u00e9cution. Montrer comment l&rsquo;utiliser sur un exemple.<br \/>\nComment peut-on r\u00e9silier des permissions ?<\/p>\n<p><a href=\"http:\/\/chezdom.net\/etu\/android-sujets\/\">Retour aux sujets<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nous avons vu en cours le syst\u00e8me de permissions d&rsquo;Android. Une fonctionnalit\u00e9 int\u00e9ressante a \u00e9t\u00e9 introduite dans l&rsquo;API 23, les permissions \u00e0 l&rsquo;ex\u00e9cution (Runtime Permissions). Il s&rsquo;agit de ne demander une permission que lorsque l&rsquo;application a besoin de l&rsquo;utiliser. Cela<span class=\"ellipsis\">&hellip;<\/span> <span class=\"read-more\"><a href=\"https:\/\/chezdom.net\/etu\/android-sujets\/sujet-14-permissions\/\">Lire la suite &#8250;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":903,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"jetpack_post_was_ever_published":false,"footnotes":""},"class_list":["post-963","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/P9qu1A-fx","_links":{"self":[{"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/pages\/963","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/comments?post=963"}],"version-history":[{"count":5,"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/pages\/963\/revisions"}],"predecessor-version":[{"id":1001,"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/pages\/963\/revisions\/1001"}],"up":[{"embeddable":true,"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/pages\/903"}],"wp:attachment":[{"href":"https:\/\/chezdom.net\/etu\/wp-json\/wp\/v2\/media?parent=963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}