13
App Inventor 2 Concevez des applications Android pour mobile Ronan CHARDONNEAU

Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

App Inventor 2 Concevez des applications Android pour mobile

ISBN

: 97

8-2-

409-

0068

6-9

26,5

0 €

Ce livre a pour objectif de vous former à la réalisation d’applica-tions Android pour appareils mobiles à l’aide de la plateforme App Inventor 2 initialement conçue par Google, des premières étapes de réflexion jusqu’à la mise en ligne sur le Play Store. Il s’adresse aux non développeurs ayant besoin de monter en compétence sur ce sujet et aux passionnés avides de faire leurs propres expériences.Le premier chapitre présente App Inventor 2, la popularité de cette solution, son contexte d’utilisation, ses possibilités, en se basant sur des exemples d’applications existantes.Le deuxième chapitre vous montre comment créer, en quelques minutes, une application pour mobile fonctionnelle sur App Inventor 2, sans être développeur.Le chapitre suivant présente une méthodologie de travail repo-sant sur la réflexion que vous devez avoir en amont, avant la créa-tion de toute application sur mobile, afin de mener votre projet à terme sans avoir à le reconsidérer durant la phase de conception ; il présente également des outils pratiques qui vous permettront de créer des applications robustes que vous pourrez par la suite partager autour de vous, voire commercialiser sur le Play Store de Google.Le quatrième chapitre présente en détail l’environnement de travail d’App Inventor 2 et de nombreuses techniques pour être encore plus efficace au quotidien.Les chapitres suivants, qui représentent le cœur de l’ouvrage, dé-taillent l’ensemble des composants présents sur la plateforme, ils comprennent de nombreux exemples que vous pourrez repro-duire afin de vous approprier au mieux cette solution.Le livre se termine par la publication d’une application et vous présente quelques solutions (AdMob, Android Studio) permettant d’aller plus loin dans la conception d’application mobile.

Pour plus d’informations :

App

Inve

ntor

2

App Inventor 2 Concevez des applications Android pour mobile

Ronan CHARDONNEAU est un passionné de marketing digital depuis ses premières années d’études à l’université ; depuis, il a eu l’occasion d’évoluer auprès de nom-breuses agences web et annonceurs en France et à l’étranger. Aujourd’hui Maître de conférence associé à l’université d’Angers, il forme tous les ans plusieurs centaines d’étudiants au marketing en ligne. Ronan travaille sur le sujet des objets connectés depuis 2015, notamment pour montrer à ses étudiants que le marketing digital ne se limite pas aux sites internet et que les problématiques ne sont pas résolues tant que le client final n’est pas satisfait à 100%. Il est également auteur de plusieurs ouvrages parus aux Éditions ENI sur ces thématiques : Google Analytics, Piwik, Google Tag Manager.

Ronan CHARDONNEAU

Téléchargementwww.editions-eni.fr.fr

sur www.editions-eni.fr : b Webographie

Ronan CHARDONNEAU

Page 2: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

Table des matières 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .©

Edi

tions

EN

I - A

ll rig

hts r

eser

ved

Avant-proposA. À propos de l’auteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9B. À propos de ce livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9C. Remerciements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Chapitre 1 : Qu’est-ce qu’AI 2 ?A. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15B. Présentation d’App Inventor 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15C. Présentation d’Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17D. Qu’est-ce que le MIT ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18E. Présentation d’applications déjà réalisées avec AI2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18F. Qu’est-ce qu’App Inventor 2 ne peut pas faire ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19G. Les conditions générales d’utilisation d’App Inventor 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20H. Scratch : apprenez à développer sans savoir coder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20I. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Chapitre 2 : Création d’une application sur AI 2 en quelques minutesA. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27B. Création d’une application sur AI2 en quelques minutes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27C. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Chapitre 3 : Le cahier des chargesA. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39B. Pourquoi réaliser un cahier des charges ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39C. Les différentes manières de réaliser une application sur mobile. . . . . . . . . . . . . . . . . . . . . . . . . . . 39D. Que doit contenir un cahier des charges pour la réalisation

d’une application pour mobile ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40E. Exemple de cahier des charges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43F. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Chapitre 4 : Installer et configurer AI 2A. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49B. Mise à jour de l’application en temps réel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49C. Installation de l'émulateur App Inventor 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56D. Installation d’App Inventor 2 en local sur votre ordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Page 3: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

App Inventor 2 - Concevez des applications Android pour mobile2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Chapitre 5 : L’espace d’administration d’App Inventor 2A. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67B. Les menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

1. Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672. Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703. Build . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704. Help. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715. Gallery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746. Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 757. Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

C. Profil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Chapitre 6 : Les composantsA. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79B. User Interface (Interface utilisateur) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82C. Layout (Disposition). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88D. Media (Média) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89E. Drawing and Animation (Dessin et animation) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91F. Sensors (Capteurs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92G. Social . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94H. Storage (Stockage) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97I. Connectivity (Connectivité). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98J. LEGO® MINDSTORMS®. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99K. Experimental (Expérimental) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102L. Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103M. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103

Chapitre 7 : Le designA. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107B. Charte graphique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107C. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111

Chapitre 8 : Les propriétésA. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115B. Catégorie User Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115

1. Les propriétés du composant Screen (écran). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1152. Les propriétés du composant Button (bouton). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1193. Les propriétés du composant CheckBox (case à cocher) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1204. Les propriétés du composant DatePicker (Sélectionneur de dates) . . . . . . . . . . . . . . . . . . .1205. Les propriétés du composant Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120

Page 4: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

Table des matières 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .©

Edi

tions

EN

I - A

ll rig

hts r

eser

ved

6. Les propriétés du composant Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1217. Les propriétés du composant ListPicker (Sélectionneur de liste) . . . . . . . . . . . . . . . . . . . . . .1228. Les propriétés du composant ListView (Vue liste) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1239. Les propriétés du composant Notifier (Notificateur). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12310. Les propriétés du composant PasswordTextBox (Zone de texte mot de passe) . . . . . . . .12311. Les propriétés du composant Slider (Ascenseur) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12412. Les propriétés du composant Spinner (Curseur animé). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12413. Les propriétés du composant TextBox (Zone de texte) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12414. Les propriétés du composant WebViewer (Afficheur web). . . . . . . . . . . . . . . . . . . . . . . . . . . .125

C. Catégorie Layout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1271. Les propriétés du composant HorizontalArrangement (Arrangement horizontal) . . . . .1272. Les propriétés du composant TableArrangement (Arrangement_tableau) . . . . . . . . . . . .127

D. Catégorie Média . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1271. Les propriétés du composant Player (Lecteur) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1272. Les propriétés du composant Sound (Son). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1283. Les propriétés du composant SoundRecorder (Enregistreur_son) . . . . . . . . . . . . . . . . . . . .1284. Les propriétés du composant TextToSpeech (Texte à parole) . . . . . . . . . . . . . . . . . . . . . . . . .128

E. Catégorie Drawing and Animation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1281. Les propriétés du composant Ball (Balle). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1282. Les propriétés du composant Canvas (cadre) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129

F. Catégorie Sensors (Capteurs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1291. Les propriétés du composant AccelerometerSensor (Accéléromètre) . . . . . . . . . . . . . . . . .1292. Les propriétés du composant BarcodeScanner (Scanneur_code_à_barre) . . . . . . . . . . . .1293. Les propriétés du composant Clock (Horloge) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1294. Les propriétés du composant LocationSensor (Capteur_position) . . . . . . . . . . . . . . . . . . . .1305. Les propriétés du composant NearField (Champ_proche) . . . . . . . . . . . . . . . . . . . . . . . . . . . .1306. Les propriétés du composant Pedometer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1307. Les propriétés du composant ProximitySensor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130

G. Catégorie Social. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1301. Les propriétés du composant PhoneCall (Appel_téléphonique) . . . . . . . . . . . . . . . . . . . . . .1302. Les propriétés du composant Texting (SMS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1313. Les propriétés du composant Twitter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131

H. Catégorie Storage (Stockage). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1311. Les propriétés du composant FusiontablesCentre (ContrôleFusionTables) . . . . . . . . . . . .1312. Les propriétés du composant TinyWebDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132

I. Catégorie Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1321. Les propriétés du composant Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132

J. Catégorie Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1321. Les propriétés du composant FirebaseDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132

Page 5: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

App Inventor 2 - Concevez des applications Android pour mobile4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Chapitre 9 : Les blocs logiquesA. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137B. Présentation de l'écran Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137C. Gérer les blocs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141D. Les différentes catégories de blocs logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .146

1. Control (Contrôle) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1462. Logic (Logique) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1493. Math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1504. Text (Texte). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1535. Lists (Listes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1556. Colors (Couleurs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1587. Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1598. Procédures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160

E. Les fonctions des composants User interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1601. Composant Screen (écran) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1612. CheckBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1643. DatePicker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1654. Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1685. Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1696. ListPicker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1707. ListView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1708. Notifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1709. Spinner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17910. TextBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18211. TimePicker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18512. WebViewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188

F. Les fonctions des composants Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190G. Les fonctions des composants Media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197

1. Camcorder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1972. Camera. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1993. ImagePicker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1994. Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2015. Sound. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2036. SoundRecorder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2047. SpeechRecognizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2048. TextToSpeech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2069. VideoPlayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20710. YandexTranslate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207

Page 6: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

Table des matières 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .©

Edi

tions

EN

I - A

ll rig

hts r

eser

ved

H. Les fonctions des composants Drawing and Animation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2091. Canvas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2092. Ball. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2173. ImageSprite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220

I. Les fonctions des composants Sensor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2221. AccelerometerSensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2222. BarcodeScanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2253. Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2274. GyroscopeSensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2315. LocationSensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2316. NearField. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2347. OrientationSensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2398. Pedometer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2419. ProximitySensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243

J. Les fonctions des composants Social . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2441. ContactPicker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2442. EmailPicker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2473. PhoneCall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2474. PhoneNumberPicker. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2485. Sharing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2486. Texting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2517. Twitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252

K. Les fonctions des composants Storage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2541. File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2542. FusiontablesControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2563. TinyDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2654. TinyWebDB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267

L. Les fonctions des composants Connectivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2681. ActivityStarter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2682. Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2713. Web. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .277

M. Les fonctions des composants LEGO® Mindstorms® . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .279N. Les fonctions des composants Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .280

1. FirebaseDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .280

Chapitre 10 : Faire connaître son applicationA. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .287B. Publier son application dans la communauté App Inventor 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . .287C. Play Store. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .289

Page 7: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

App Inventor 2 - Concevez des applications Android pour mobile6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Chapitre 11 : Aller plus loin qu’AI 2A. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .295B. AdMob . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .295C. Android Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .298D. Différences entre Android Studio et App Inventor 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299

1. Installation d'Android Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2992. Création d'une application toute simple avec Android Studio . . . . . . . . . . . . . . . . . . . . . . . .3023. Mise en place de Google Analytics sur Android Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .312

E. Keosu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .322

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .323

Page 8: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

Chapitre 9 : Les blocs logiques©

Edi

tions

EN

I - A

ll rig

hts r

eser

ved

137. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Chapi tre 9 : Les b locs logiques

App Inventor 2 - Concevez des appl icat ions Android pour mo bileA. IntroductionDans ce chapitre, nous entrons dans le cœur d’App Inventor 2. C’est ici que votre application"prendra vie".

Les blocs logiques sont des morceaux qui représentent du code et qui vont vous permettre dedéterminer les comportements attendus de la part de votre application. Découvrons sans plusattendre les possibilités qui s’offrent à vous. Nous avons fait en sorte de présenter le plus defonctionnalités possible avec des applications concrètes, n’hésitez pas à les refaire afin de vousapproprier App Inventor 2.

B. Présentation de l'écran Blocks

v Vous accéderez aux blocs logiques en cliquant en haut à droite sur le bouton Blocks, juste àcôté du bouton Designer dans l’interface d’App Inventor 2 :

Page 9: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

App Inventor 2 - Concevez des applications Android pour mobile138 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

L’écran des blocs logiques se présente de la manière suivante :

Dans la colonne de gauche se trouve l’ensemble des instructions que vous pouvez utiliser afin deréaliser votre application :

Ces instructions vous permettent de lier les comportements des composants que vous allez ajou-ter avec l’ensemble de l’application.

Page 10: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

Chapitre 9 : Les blocs logiques©

Edi

tions

EN

I - A

ll rig

hts r

eser

ved

139. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Tous les composants que vous ajoutez dans la partie Designer vont apparaître en dessous de cesblocs d’instruction ; dans l’exemple ci-dessous les composants ajoutés sont un écran (toujoursprésent dans chaque application) et un bouton :

v Lorsque vous souhaitez utiliser un bloc logique, il vous suffit de le sélectionner en cliquantdessus, un nouveau menu va alors apparaître :

Page 11: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

App Inventor 2 - Concevez des applications Android pour mobile140 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

v Choisissez alors le bloc logique de votre choix en fonction du comportement que voussouhaitez que votre application provoque et faites glisser le bloc logique choisi dans l’espacevide à droite du menu :

En cas d’anomalie, c’est-à-dire si votre code n’a pas de logique ou si certains blocs de code entrenten conflit, vous verrez que les panneaux de danger de couleur jaune et rouge seront incrémentésen bas à gauche de votre écran.

Un avertissement de couleur jaune signifie que votre application sera fonctionnelle mais compor-tera des bugs, alors que l’avertissement de couleur rouge vous empêchera de pouvoir créer votreapplication.

v À noter qu’à tout moment vous pouvez connaître le comportement du bloc logique que vousavez ajouté en passant votre souris dessus (le curseur de votre souris prendra alors la formed’une main), les instructions apparaîtront alors sous la forme d’une info-bulle :

Page 12: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

Chapitre 9 : Les blocs logiques©

Edi

tions

EN

I - A

ll rig

hts r

eser

ved

141. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C. Gérer les blocsDe nombreuses options sont disponibles pour chacun de ces blocs lorsque vous effectuez un clicdroit dessus. Découvrons-les maintenant.

Duplicate (Dupliquer)

Cette option effectue un copier-coller de votre bloc. Vous pouvez également effectuer cettemanipulation à l’aide de votre clavier. Cette fonction vous sert à aller beaucoup plus vite dans ledéveloppement de votre application. Vous découvrirez également plus loin l’option Add to Back-pack qui permet également de gagner un temps considérable.

Add Comment (Ajouter un commentaire)

Cette option permet d’ajouter des informations relatives au bloc logique sur lequel vous êtes entrain de travailler, cela vous permet de commenter votre code, par exemple :

Il s’agit d’une fonctionnalité très utile quand vous travaillez à plusieurs sur le même projet ou quevous développez une portion de code très complexe. Il vous suffit de cliquer sur le point d’inter-rogation pour le faire apparaître et disparaître.

Page 13: Ronan CHARDONNEAUmultimedia.fnac.com/multimedia/editorial/pdf/... · 2017-04-14 · thématiques : Google Analytics, Piwik, Google Tag Manager. Ronan CHARDONNEAU Té léchar gement

App Inventor 2 - Concevez des applications Android pour mobile142 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Collapse Block (Réduire le bloc)

Cette option permet de minimiser l’affichage d’un groupe de code, cela vous permet de gagneren lisibilité, notamment lorsqu’un comportement est bien connu et ne nécessite plus demodification ; voici un exemple avant réduction :

Et voici un exemple une fois ce même bloc de code réduit (la diminution se fait uniquement auniveau graphique, il ne s’agit pas d’une compression de code).

À noter que cette opération peut s’effectuer sur n’importe quel bloc de la chaîne.

Disable Block (Désactiver le bloc)

Cette option va rendre le bloc sélectionné non fonctionnel, c’est notamment ce type d’option quivous permet de voir si un bloc entre en conflit avec un autre. C’est une option de débogage.

Add to Backpack (0)

Le sac à dos, de l’anglais "backpack" :

Il s'agit de l’une des fonctionnalités les plus utiles d’App Inventor 2, elle vous permet de copier-coller des blocs de code entre applications. Par exemple, imaginons que vous découvrez uneapplication qui vous plaît dans la galerie d’AI 2 et que vous décidez de l’installer sur votre compte,vous pourrez reprendre en quelques clics, les bouts de code qui vous intéressent pour ensuite lesutiliser directement dans votre application.