{"id":1213,"date":"2010-05-02T19:00:29","date_gmt":"2010-05-02T17:00:29","guid":{"rendered":"http:\/\/blogs.wittwer.fr\/whiler\/?p=1213"},"modified":"2012-03-03T13:02:55","modified_gmt":"2012-03-03T12:02:55","slug":"widget-euromillions-android","status":"publish","type":"post","link":"https:\/\/blogs.wittwer.fr\/whiler\/2010\/05\/02\/widget-euromillions-android\/","title":{"rendered":"Mon premier widget pour Android"},"content":{"rendered":"<p>Apr\u00e8s avoir effectu\u00e9 une recherche sur l'<a href=\"http:\/\/fr.wikipedia.org\/wiki\/Android_Market\" rel=\"glossary\" target=\"_blank\" title=\"Wikipedia, D&eacute;finition de&nbsp;: Android Market\" style=\"\" >Android Market<\/a><sup style=\"font-family: Georgia, Times New Roman, Serif; font-weight: bold; color: #AAAAAA\" ><em>W<\/em><\/sup> \u00e0 la recherche d&rsquo;un <a href=\"http:\/\/fr.wikipedia.org\/wiki\/widget\" rel=\"glossary\" target=\"_blank\" title=\"Wikipedia, D&eacute;finition de&nbsp;: widget\" style=\"\" >widget<\/a><sup style=\"font-family: Georgia, Times New Roman, Serif; font-weight: bold; color: #AAAAAA\" ><em>W<\/em><\/sup>, \u00e0 savoir une fen\u00eatre capable de s&rsquo;afficher sur le bureau d&rsquo;un t\u00e9l\u00e9phone <a href=\"http:\/\/fr.wikipedia.org\/wiki\/Android\" rel=\"glossary\" target=\"_blank\" title=\"Wikipedia, D&eacute;finition de&nbsp;: Android\" style=\"\" >Android<\/a><sup style=\"font-family: Georgia, Times New Roman, Serif; font-weight: bold; color: #AAAAAA\" ><em>W<\/em><\/sup> dans le cas pr\u00e9sent, et ne trouvant que des applications&#8230; je me suis d\u00e9cid\u00e9 \u00e0 l&rsquo;\u00e9crire moi-m\u00eame&#8230;<\/p>\n<p>Je voulais la publier sur le Market, mais comme il s&rsquo;av\u00e8re que c&rsquo;est payant (25$), je me contente dans l&rsquo;imm\u00e9diat de la partager sur mon blog&#8230;<\/p>\n<p>Mon cahier des charges \u00e9tait simple&nbsp;:<\/p>\n<ul>\n<li>Afficher les derniers r\u00e9sultats de l&rsquo;<a href=\"https:\/\/www.fdjeux.com\/jeux\/euromillions\/#\" target=\"_blank\">EuroMillions<\/a> directement sur le bureau<\/li>\n<li>Faire un minimum de cache (malgr\u00e9 mon forfait data illimit\u00e9&#8230; utile en cas de <a href=\"http:\/\/fr.wikipedia.org\/wiki\/roaming\" rel=\"glossary\" target=\"_blank\" title=\"Wikipedia, D&eacute;finition de&nbsp;: roaming\" style=\"\" >roaming<\/a><sup style=\"font-family: Georgia, Times New Roman, Serif; font-weight: bold; color: #AAAAAA\" ><em>W<\/em><\/sup> plut\u00f4t que de ne rien afficher)<\/li>\n<\/ul>\n<p>C&rsquo;est chose faite. Voici les captures r\u00e9alis\u00e9es depuis l&rsquo;\u00e9mulateur&nbsp;:<!--more--><\/p>\n<div id=\"attachment_1250\" style=\"width: 330px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1250\" src=\"\/whiler\/wp-content\/uploads\/2010\/05\/widgets.png\" alt=\"Capture d&#039;\u00e9cran\" title=\"Widget EuroMillions\" width=\"320\" height=\"480\" class=\"size-full wp-image-1250\" srcset=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/widgets.png 320w, https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/widgets-200x300.png 200w\" sizes=\"auto, (max-width: 320px) 100vw, 320px\" \/><p id=\"caption-attachment-1250\" class=\"wp-caption-text\">Widget EuroMillions<\/p><\/div>\n<div id=\"attachment_1241\" style=\"width: 330px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1241\" src=\"\/whiler\/wp-content\/uploads\/2010\/05\/configuration.jpg\" alt=\"configuration-widget-euromillions\" title=\"Configuration du widget\" width=\"320\" height=\"480\" class=\"size-full wp-image-1241\" srcset=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/configuration.jpg 320w, https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/configuration-200x300.jpg 200w\" sizes=\"auto, (max-width: 320px) 100vw, 320px\" \/><p id=\"caption-attachment-1241\" class=\"wp-caption-text\">Configuration du widget<\/p><\/div>\n<p>Si ce petit widget vous int\u00e9resse, vous pouvez le t\u00e9l\u00e9charger depuis ce <a href=\"\/whiler\/wp-content\/uploads\/2010\/05\/W2EuroMillions.apk\">lien<\/a>, ou directement en scannant le code QR de la capture de la page de configuration.<\/p>\n<p>C&rsquo;est la premi\u00e8re (et peut-\u00eatre derni\u00e8re) version&#8230; Je vais la tester \u00e0 plus long terme que dans l&rsquo;\u00e9mulateur pour voir si je dois la faire \u00e9voluer pour l&rsquo;optimiser ou si elle est d\u00e9j\u00e0 satisfaisante&#8230;<\/p>\n<p>Les sources qui m&rsquo;ont \u00e9t\u00e9 utiles pour r\u00e9aliser ce widget sont&nbsp;:<\/p>\n<ul>\n<li><a title=\"Android Developers\" href=\"https:\/\/developer.android.com\/intl\/fr\/guide\/topics\/appwidgets\/index.html\" target=\"_blank\">La documentation<\/a><\/li>\n<li><a title=\"Android Developers Blog\" href=\"https:\/\/android-developers.blogspot.com\/2009\/04\/introducing-home-screen-widgets-and.html\" target=\"_blank\">Introducing home screen widgets and the AppWidget framework<\/a><\/li>\n<li><a title=\"Developer.com\" href=\"https:\/\/www.developer.com\/ws\/article.php\/3837531\/Handling-User-Interaction-with-Android-App-Widgets.htm\" target=\"_blank\">Handling User Interaction with Android App Widgets<\/a><\/li>\n<\/ul>\n<blockquote><p>Si je gagne le premier rang un jour, je publierais un autre article <img src=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-includes\/images\/smilies\/skype\/\/dull.gif\" alt=\"|-(\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/><\/p><\/blockquote>\n<h3>Avenant au cahier des charges&nbsp;: <img src=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-includes\/images\/smilies\/skype\/\/cool.gif\" alt=\"8-)\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/><\/h3>\n<p>Possibilit\u00e9 d&rsquo;ajouter ses propres num\u00e9ros &amp; \u00e9toiles dans la configuration afin de les afficher d&rsquo;une autre couleur (en vert) lorsqu&rsquo;ils sont sortis lors du dernier tirage.<\/p>\n<p>La version 1.1 remplace la version pr\u00e9c\u00e9dente et inclue cette mise \u00e0 jour.<\/p>\n<p><del datetime=\"2010-05-06T13:00:00+00:00\">J&rsquo;en ai \u00e9galement profit\u00e9 pour migrer l&rsquo;application de la plateforme 1.5 \u00e0 la 1.6 (<code class=\"codecolorer text dawn\"><span class=\"text\">target=android-4<\/span><\/code>) afin de supprimer la permission suivante lors de l&rsquo;installation car je ne m&rsquo;en sers pas et que je trouvais que cela faisait spyware&#8230;<br \/>\nPromis, yen a pas<\/del>  <img src=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-includes\/images\/smilies\/skype\/\/bow.gif\" alt=\"(bow)\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/><\/p>\n<div id=\"attachment_1235\" style=\"width: 269px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1235\" class=\"size-full wp-image-1235\" title=\"Lire l'\u00e9tat et l'identit\u00e9 du t\u00e9l\u00e9phone\" src=\"\/whiler\/wp-content\/uploads\/2010\/05\/calls.jpg\" alt=\"Appels\" width=\"259\" height=\"40\" \/><p id=\"caption-attachment-1235\" class=\"wp-caption-text\">Lire l&#39;\u00e9tat et l&#39;identit\u00e9 du t\u00e9l\u00e9phone<\/p><\/div>\n<p><del datetime=\"2010-05-06T13:00:00+00:00\">Si vous avez un t\u00e9l\u00e9phone sur 1.5, n&rsquo;h\u00e9sitez pas \u00e0 publier un commentaire et je vous recompilerai un build d\u00e9di\u00e9&#8230;<\/del> <img src=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-includes\/images\/smilies\/skype\/\/yes.gif\" alt=\"(y)\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/> <ins datetime=\"2010-05-06T13:00:00+00:00\">Widget migr\u00e9 en 1.5 suite \u00e0 la demande de <a href=\"\/whiler\/2010\/05\/02\/widget-euromillions-android\/#comment-68\">Djukbox<\/a>.<\/ins><\/p>\n<p><center><div id=\"Perm.org.whiler.widget.euromillions\" class=\"permissions\"><a href=\"javascript:void(0);\" onclick=\"android_permissions_show(&quot;org.whiler.widget.euromillions&quot);\" >Afficher les permissions<\/a><\/div><\/center><br \/>\n&nbsp;<\/p>\n<p>Quelques d\u00e9tails compl\u00e9mentaires&nbsp;:<\/p>\n<ul>\n<li>Les param\u00e8tres qui sont configurables, \u00e0 savoir, l&rsquo;ordre d&rsquo;affichage, vos num\u00e9ros et les \u00e9toiles sont propres \u00e0 chaque widget ajout\u00e9 sur le bureau, tandis que le cache du dernier tirage est commun \u00e0 tous les widgets&nbsp;:\n<ul>\n<li>donc, si vous jouez plusieurs grilles, il vous suffit d&rsquo;ajouter plusieurs fois le widget et de sp\u00e9cifier des num\u00e9ros diff\u00e9rents<\/li>\n<li>le tirage \u00e9tant toujours le m\u00eame, on \u00e9vite de t\u00e9l\u00e9charger inutilement plusieurs fois les donn\u00e9es<\/li>\n<\/ul>\n<\/li>\n<li>Le nombre de num\u00e9ros et d&rsquo;\u00e9toiles n&rsquo;est pas limit\u00e9, et je n&rsquo;ai pas mis de composant sp\u00e9cifique dans ce but&#8230; donc, si vous jouez des grilles avec plus de 5 num\u00e9ros ou 2 \u00e9toiles, vous pouvez les saisir sans probl\u00e8me&nbsp;!<\/li>\n<li>Un long click sur le <a href=\"http:\/\/fr.wikipedia.org\/wiki\/Code_QR\" rel=\"glossary\" target=\"_blank\" title=\"Wikipedia, D&eacute;finition de&nbsp;: code QR\" style=\"\" >code QR<\/a><sup style=\"font-family: Georgia, Times New Roman, Serif; font-weight: bold; color: #AAAAAA\" ><em>W<\/em><\/sup> vous permet de directement t\u00e9l\u00e9charger la derni\u00e8re version&#8230; un click normal vous permet de naviguer sur cette page&#8230; le code QR lui-m\u00eame vous permet de facilement donner l&rsquo;application \u00e0 quelqu&rsquo;un d&rsquo;autre&#8230;<\/li>\n<li>Lorsque vous cliquez sur le widget, une barre avec 3 boutons apparait.. si vous cliquez ensuite sous cette barre, celle-ci se masquera&#8230; (elle se masque \u00e9galement lorsque vous cliquez sur une des 3 ic\u00f4nes&nbsp;!)<\/li>\n<li>Les photos de <a href=\"\/whiler\/category\/belly\/\">Belly<\/a> (la jolie minette sur les captures ci-dessus) ne sont pas obligatoires pour que le widget fonctionne <img src=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-includes\/images\/smilies\/skype\/\/rofl.gif\" alt=\"(rofl)\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/> <\/li>\n<\/ul>\n<p><!--nextpage--><br \/>\nJ&rsquo;ai finalement publi\u00e9 le widget sur le Market&#8230; Il faut reconna\u00eetre que tout le processus est extr\u00eamement rapide et bien fait&nbsp;! <img src=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-includes\/images\/smilies\/skype\/\/yes.gif\" alt=\"(y)\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/> <\/p>\n<p>J&rsquo;ai ensuite effectu\u00e9 une mise \u00e0 jour pour changer le lien afin qu&rsquo;il pointe sur le Market et non plus sur mon site, et j&rsquo;en ai profit\u00e9 pour faire une version anglaise par d\u00e9faut pour les utilisateurs non francophone&nbsp;:<br \/>\n<div id=\"attachment_1244\" style=\"width: 330px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1244\" src=\"\/whiler\/wp-content\/uploads\/2010\/05\/configuration-en.jpg\" alt=\"configuration-widget-euromillions-english\" title=\"Configuration du widget en anglais\" width=\"320\" height=\"480\" class=\"size-full wp-image-1244\" srcset=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/configuration-en.jpg 320w, https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/configuration-en-200x300.jpg 200w\" sizes=\"auto, (max-width: 320px) 100vw, 320px\" \/><p id=\"caption-attachment-1244\" class=\"wp-caption-text\">Configuration du widget en anglais<\/p><\/div><\/p>\n<hr>\n<p>Nouvelle mise \u00e0 jour pour prendre en charge les <em>Homes<\/em> qui ont des bureaux horizontaux&#8230; avant la mise \u00e0 jour 2.1.2, seul le logo \u00e9tait visible en mode horizontal, maintenant, on voit les r\u00e9sultats, que le bureau soit vertical ou horizontal&nbsp;!<br \/>\n<div id=\"attachment_1286\" style=\"width: 190px\" class=\"wp-caption aligncenter\"><a href=\"\/whiler\/wp-content\/uploads\/2010\/05\/vertical.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1286\" src=\"\/whiler\/wp-content\/uploads\/2010\/05\/vertical-180x300.png\" alt=\"Affichage vertical\" title=\"Affichage vertical\" width=\"180\" height=\"300\" class=\"size-medium wp-image-1286\" srcset=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/vertical-180x300.png 180w, https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/vertical.png 480w\" sizes=\"auto, (max-width: 180px) 100vw, 180px\" \/><\/a><p id=\"caption-attachment-1286\" class=\"wp-caption-text\">Affichage vertical<\/p><\/div><br \/>\n<div id=\"attachment_1285\" style=\"width: 310px\" class=\"wp-caption aligncenter\"><a href=\"\/whiler\/wp-content\/uploads\/2010\/05\/horizontal.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1285\" src=\"\/whiler\/wp-content\/uploads\/2010\/05\/horizontal-300x180.png\" alt=\"Affichage horizontal\" title=\"Affichage horizontal\" width=\"300\" height=\"180\" class=\"size-medium wp-image-1285\" srcset=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/horizontal-300x180.png 300w, https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/horizontal.png 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-1285\" class=\"wp-caption-text\">Affichage horizontal<\/p><\/div><\/p>\n<hr>\n<p>Nouvelle mise \u00e0 jour ajoutant la langue allemande. Merci \u00e0 <a target=\"_blank\" href=\"https:\/\/www.xishirt.com\/\">Christian<\/a> <img src=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-includes\/images\/smilies\/skype\/\/bow.gif\" alt=\"(bow)\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/><br \/>\n<div id=\"attachment_1671\" style=\"width: 210px\" class=\"wp-caption aligncenter\"><a href=\"\/whiler\/wp-content\/uploads\/2010\/05\/austrian.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1671\" src=\"\/whiler\/wp-content\/uploads\/2010\/05\/austrian-200x300.jpg\" alt=\"Version allemande\" title=\"Version allemande\" width=\"200\" height=\"300\" class=\"size-medium wp-image-1671\" srcset=\"https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/austrian-200x300.jpg 200w, https:\/\/blogs.wittwer.fr\/whiler\/wp-content\/uploads\/2010\/05\/austrian.jpg 320w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/a><p id=\"caption-attachment-1671\" class=\"wp-caption-text\">Version allemande<\/p><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apr\u00e8s avoir effectu\u00e9 une recherche sur l\u2019Android Market \u00e0 la recherche d\u2019un widget, \u00e0 savoir une fen\u00eatre capable de s\u2019afficher sur le bureau d\u2019un t\u00e9l\u00e9phone AndroidW dans le cas pr\u00e9sent, et ne trouvant que des applications\u2026 je me suis d\u00e9cid\u00e9 \u00e0 l\u2019\u00e9crire moi-m\u00eame\u2026<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"categories":[132],"tags":[158,133,112],"class_list":["post-1213","post","type-post","status-publish","format-standard","hentry","category-android","tag-android","tag-euromillions","tag-widget"],"_links":{"self":[{"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/posts\/1213","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/comments?post=1213"}],"version-history":[{"count":0,"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/posts\/1213\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/media?parent=1213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/categories?post=1213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.wittwer.fr\/whiler\/wp-json\/wp\/v2\/tags?post=1213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}