SlideShare uma empresa Scribd logo
1 de 199
Baixar para ler offline
27/02/2016
1
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Présentation
Android expert
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
2
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Présentation du formateur
• Pourquoi Android Expert?
• Présentation de votre formation
• Le plan de la formation
• Publics concernés
• Prérequis de la formation
27/02/2016
2
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Présentation du formateur
• Pourquoi Android Expert?
• Présentation de votre formation
• Le plan de la formation
• Publics concernés
• Prérequis de la formation
27/02/2016
4
Formation Android 6, niveau Expert alphorm.com™©
Mes formations sur alphorm
27/02/2016
5
Formation Android 6, niveau Expert alphorm.com™©
Pourquoi Android Expert ?
• Android est une plateforme vaste
• De nombreux usages, de nombreuses APIs
• Nous centrons notre formation sur des aspects exotiques
• L’usage du C pour créer des applications
• Les besoins en performances
• Les objets connectés
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
7
Formation Android 6, niveau Expert alphorm.com™©
Publics concernés
• Cette formation s’adresse à des développeurs
• Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe
• La connaissance du C ou C++ est souhaitable
• Nous ne reviendrons pas sur les concepts des langages
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
9
Formation Android 6, niveau Expert alphorm.com™©
Les outils nécessaires
• L’IDE principal est Android Studio 1.5.x
• Nous utilisons aussi Android Studio 2.0
• La présentation sera faite sous Windows 10
27/02/2016
10
Formation Android 6, niveau Expert alphorm.com™©
Les autres formations dév sur Alphorm
27/02/2016
11
Formation Android 6, niveau Expert alphorm.com™©
Are you ready ? ☺
27/02/2016
12
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Généralités
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
13
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Package et classes
• Mode de fonctionnement
• Mise en œuvre
• Etablissement de la connexion
• Communiquer
• Les authentifications
27/02/2016
14
Formation Android 6, niveau Expert alphorm.com™©
Package et classes
• Les packages com.google.android.gms
• La classe com.google.android.gms.common.api.GoogleApiClient
• Chaque API est représentée par un package
27/02/2016
15
Formation Android 6, niveau Expert alphorm.com™©
Mode fonctionnement
• Architecture
Un proxy côté client va servir la communication
Nécessite le « Google Play Services SDK »
• Pour accéder aux services Google non concernés par le SDK
Utiliser la classe GoogleAuthUtil
Permet la manipulation d’un jeton OAuth2.0
27/02/2016
16
Formation Android 6, niveau Expert alphorm.com™©
Mise en oeuvre
• Configurer le projet(fichier Gradle sous Android Studio)
• GoogleApiClient est la classe à utiliser
• Avec le builder associé, afin de faciliter la configuration
• Possibilités de gérer les exceptions liées
27/02/2016
17
Formation Android 6, niveau Expert alphorm.com™©
Etablissement de la connexion
• Etablir la connexion pour communiquer
• GoogleApiClient servira de proxy
• Bonnes pratiques pour établir/couper la connexion
• Ignorer ou non les erreurs de connexion
• Accéder à différentes APIs, cas particulier de Wearable
27/02/2016
18
Formation Android 6, niveau Expert alphorm.com™©
Communiquer
• Les accès aux services peuvent nécessiter des paramètres
supplémentaires
Un certificat récupérable sur la console
• La communication peut être synchrone ou non synchrone
27/02/2016
19
Formation Android 6, niveau Expert alphorm.com™©
Les authentifications
• Pour les services qui nécessitent une authentification
Authentifier l’utilisateur de l’application
• Définit un ensemble de droits
Certifier l’application elle-même
• Il faut enregistrer l’application
• Le token obtenu sera fourni dans l’entête HTTP
API REST
27/02/2016
20
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Package et classes
• Mode de fonctionnement
• Mise en œuvre
• Etablissement de la connexion
• Communiquer
• Les authentifications
27/02/2016
21
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
La console
développeur
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
22
Formation Android 6, niveau Expert alphorm.com™©
Plan
• L’accès à la console
• Comptes de service
• Les identifiants
• La configuration
27/02/2016
23
Formation Android 6, niveau Expert alphorm.com™©
L’accès à la console
• Url : https://console.developers.google.com
• Gérer les projets
• Associer les APIs google
27/02/2016
24
Formation Android 6, niveau Expert alphorm.com™©
Comptes de service
• Les comptes de service permettent d’identifier les utilisateurs autorisés
à modifier les projets
27/02/2016
25
Formation Android 6, niveau Expert alphorm.com™©
Les identifiants
• Pour donner accès aux services google
Identifier votre appli
Demander une autorisation
Accéder au Cloud
27/02/2016
3
Formation Android 6, niveau Expert alphorm.com™©
Présentation du formateur
• Fabien Brissonneau
• Email : fabien.brissonneau@gmail.com
• Consultant Concepteur et Formateur
• Missions d’architecture, de conception , de réalisation logicielles
• Fondateur de eiXa6
• Actuellement en mission sur un projet de gestion
• Mes références :
Mon profil Viadeo : http://fr.viadeo.com/fr/profile/fabien.brissonneau
Mon profil LinkedIn : http://fr.linkedin.com/pub/fabien-brissonneau/65/902/92a/
27/02/2016
27
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• L’accès à la console
• Comptes de service
• Les identifiants
• La configuration
27/02/2016
28
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Location
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
29
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Package et classes
• La dernière localisation connue
• Suivre la localisation
• Trouver une adresse
• La détection de zones
27/02/2016
30
Formation Android 6, niveau Expert alphorm.com™©
Package et classes
• Package com.google.android.gms.location
• Location
• FusedLocationApi
• LocationRequest
• LocationListener
• GeoCoder
• GeoFence
• Et ne pas oublier les permissions dans AndroidManifest.xml
27/02/2016
31
Formation Android 6, niveau Expert alphorm.com™©
La dernière localisation connue
• Le proxy
• La localisation
27/02/2016
32
Formation Android 6, niveau Expert alphorm.com™©
Suivre la localisation
• Utiliser un LocationListener
• Abonner
• Implémenter
27/02/2016
33
Formation Android 6, niveau Expert alphorm.com™©
Trouver une adresse
• Geocoder retrouve une adresse à partir de ses cordonnées
• Les accès sont longs, donc penser à des appels asynchrones
• Il faut aussi que la recherche continue même si l’application est arrêtée
27/02/2016
34
Formation Android 6, niveau Expert alphorm.com™©
La détection de zones
• Créer des objets Geofence
• Utiliser Geofence.Builder
• Passer la liste des Geofence à une GeofenceRequest
• Les transitions déclencheront l’Intent enregistré
GEOFENCE_TRANSITION_EXIT
GEOFENCE_TRANSITION_ENTER
GEOFENCE_TRANSITION_DWELL
27/02/2016
35
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Package et classes
• La dernière localisation connue
• Suivre la localisation
• Trouver une adresse
• La détection de zones
27/02/2016
36
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google SignIn
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
37
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Mise en place du projet
• Démarrer Google SignIn
• Exploiter Google SignIn
• Récupérer les informations
27/02/2016
38
Formation Android 6, niveau Expert alphorm.com™©
Mise en place du projet
• Récupérer le hash SHA1 du certificat que vous utilisez pour signer votre
projet
• Utiliser Google Developer Console
Fournir le nom du projet, le package et le hash
Générer le fichier de configuration
Copier le fichier de configuration
• Répertoire /app
• Attention à la compatibilité entre versions
27/02/2016
39
Formation Android 6, niveau Expert alphorm.com™©
Démarrer Google SignIn
• La méthode concernée est onCreate
• Spécifier les options d’accès aux infos de l’utilisateur
Avec : GoogleSignInOptions
Infos de base : DEFAULT_SIGN_IN
La méthode requestEmail permet la récupération de l’email
La méthode requestScopes permet l’accès aux Google Apis
• Créer le GoogleApiClient nécessaire
com.google.android.gms.auth.api.signin.GoogleSignInOptions
27/02/2016
40
Formation Android 6, niveau Expert alphorm.com™©
Exploiter Google SignIn
• Utilisez un bouton de type SignInButton
• Réagir sur le clic bouton
• Démarrer l’activité pour engager le SignIn
27/02/2016
41
Formation Android 6, niveau Expert alphorm.com™©
Récupérer les informations
• Le nom de l’utilisateur
27/02/2016
42
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Mise en place du projet
• Démarrer Google SignIn
• Exploiter Google SignIn
• Récupérer les informations
27/02/2016
43
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google Fit
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
44
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Généralités
• Les senseurs
• L’enregistrement
• L’historique
• Les sessions
27/02/2016
45
Formation Android 6, niveau Expert alphorm.com™©
Généralités
• Google Fit est composées de plusieurs APIs
Les senseurs : accès aux capteurs du mobile et des wearables
L’enregistrement : enregistrement automatique des données
L’historique : accès aux historiques de données
Les sessions : gestion des intervalles de temps
La gestion du Bluetooth Low Energy : gestion des périphériques BLE
• Google Fit doit être activée
27/02/2016
46
Formation Android 6, niveau Expert alphorm.com™©
Activation de Google Fit
• Il faut utiliser la console développeur
Nécessite un compte google
• Activer Google Fit
• Créer un identifiant client OAuth 2.0
• Enregistrer le certificat public
27/02/2016
47
Formation Android 6, niveau Expert alphorm.com™©
Les senseurs
• Fonctionnalités :
Lister les sources de données disponibles
Abonner des observateurs aux capteurs
Désabonner
• Les données lues ne sont pas enregistrées
• Ne persistent pas
27/02/2016
48
Formation Android 6, niveau Expert alphorm.com™©
L’enregistrement
• Permet d’enregistrer automatiquement des données des capteurs
• Une souscription correspond à une application, une source de données,
un type de données
• Les enregistrements sont réalisés même lorsque l’application est arrêtée
• Ces données alimentent l’historique
27/02/2016
49
Formation Android 6, niveau Expert alphorm.com™©
L’historique
• Pour visualiser et traiter des données enregistrées préalablement
• Pour importer des données
• Pour supprimer des données
27/02/2016
50
Formation Android 6, niveau Expert alphorm.com™©
Les sessions
• Une session est un intervalle de temps dans lequel sont enregistrés des
données
• Une session peut être temps réel ou bien créée a posteriori
27/02/2016
51
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Généralités
• Les senseurs
• L’enregistrement
• L’historique
• Les sessions
27/02/2016
52
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google Analytics
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
53
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Créer le projet
• Suivre l’utilisateur
• Consulter les résultats
• Autres indicateurs
27/02/2016
54
Formation Android 6, niveau Expert alphorm.com™©
Créer le projet
• Modifier le AndroidManifest.xml, afin d’introduire les permissions
INTERNET et ACCESS_NETWORK_STATE
• Modifier le script Gradle niveau projet afin d’utiliser google-services et
le plugin google
• Modifier le script Gradle niveau application afin d’ajouter la dépendance
de compilation vers google-services
• Récupérer un fichier de configuration json utilisé par le plugin
27/02/2016
55
Formation Android 6, niveau Expert alphorm.com™©
Suivre l’utilisateur
• Le suivi de base décrit ici concerne le suivi des écrans que l’utilisateur va
parcourir
• Modifier l’Application pour fournir un accès au « tracker »
Dériver la classe Application
• Pour chaque activité, créer un accès au « tracker »
Méthode onCreate
• Invoquer le « tracker » lorsque la page change
Méthode onResume
27/02/2016
56
Formation Android 6, niveau Expert alphorm.com™©
Consulter les résultats
• Accéder au site : https://www.google.com/analytics/web
• Nécessite de se créer un compte,
et des codes de suivi
• Obtention des rapports
27/02/2016
57
Formation Android 6, niveau Expert alphorm.com™©
Autres indicateurs
• Connaître quel lien a mené au chargement de l’application
• Suivre les exceptions gérées ou non
• Créer ses propres indicateurs, relevés par Google Analytics
• Connaître les publicités utilisées
• Mesures des actions liées au e-commerce
• Suivre les événements liés aux actions de l’utilisateur
• Gestion de sessions pour regrouper les métriques
• Interactions avec les réseaux sociaux (quel réseau, quelle action…)
• Mesure du temps (pour charger une ressource…)
• Identifier l’utilisateur à travers plusieurs applications
27/02/2016
58
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Créer le projet
• Suivre l’utilisateur
• Consulter les résultats
• Autres indicateurs
27/02/2016
59
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google+
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
60
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Ajouter Google SignIn
• Activer Google+ API
• Créer des posts
• Gérer les applications
• Récupérer des informations sur les utilisateurs
27/02/2016
61
Formation Android 6, niveau Expert alphorm.com™©
Ajouter Google SignIn
• Récupérer le hash SHA1 du certificat que vous utilisez pour signer votre
projet
• Utiliser Google Developer Console
Fournir le nom du projet, le package et le hash
Générer le fichier de configuration
Copier le fichier de configuration
• Répertoire /app
• Attention à la compatibilité entre versions
27/02/2016
62
Formation Android 6, niveau Expert alphorm.com™©
Activer Google+
• Utiliser la console développeurs
27/02/2016
63
Formation Android 6, niveau Expert alphorm.com™©
Créer des posts
• Utiliser PlusShare
27/02/2016
64
Formation Android 6, niveau Expert alphorm.com™©
Gérer les applications
• Ecrire une activité d’application
Inscrire que l’utilisateur fait usage d’une application
Utiliser MomentsApi
• Lister les activités d’applications
• Supprimer une activité
27/02/2016
65
Formation Android 6, niveau Expert alphorm.com™©
Récupérer des informations
• Récupérer la liste des personnes du cercle de l’utilisateur
Plus.PeopleApi
• Récupérer des informations de profil
• Récupérer email et adresse
Attention aux permissions
Plus.AccountApi
27/02/2016
66
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Ajouter Google SignIn
• Activer Google+ API
• Créer des posts
• Gérer les applications
• Récupérer des informations sur les utilisateurs
27/02/2016
67
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google Maps
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
68
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Obtenir une clé
• MapsActivity
• L’objet Map
27/02/2016
69
Formation Android 6, niveau Expert alphorm.com™©
Obtenir une clé
• Récupérer une clé d’accès auprès de Google
27/02/2016
70
Formation Android 6, niveau Expert alphorm.com™©
MapsActivity
• Activité préparée pour accueillir une carte
• Méthode onCreate pour déclencher le chargement asynchrone
• Traiter la carte lorsqu’on la récupère
27/02/2016
71
Formation Android 6, niveau Expert alphorm.com™©
L’objet Map
• La classe GoogleMap
• Connexion aux services de cartes
• Chargement des tuiles
• Affichage des titres
• Contrôles supplémentaires
• Réponse standard zoom
27/02/2016
72
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Obtenir une clé
• MapsActivity
• L’objet Map
27/02/2016
73
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google Drive
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
74
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Enregistrer un certificat
• Accéder à Google Drive
• Exemples d’opérations
27/02/2016
75
Formation Android 6, niveau Expert alphorm.com™©
Enregistrer un certificat
• Utilisation de google play services sdk
• Sur la console developer
https://console.developers.google.com/flows/enableapi?apiid=drive&credent
ial=client_key
• Le certificat Oauth 2.0 est nécessaire
• Pour des niveaux d’accès autres que drive.file et drive.appfolder, il faut
utiliser l’API REST
27/02/2016
76
Formation Android 6, niveau Expert alphorm.com™©
Accéder à Google Drive
• Créer un client (proxy) pour accéder aux services
• Gérer les connexions et déconnexions
27/02/2016
77
Formation Android 6, niveau Expert alphorm.com™©
Exemples d’opérations
• Lire des fichiers, répertoires…
• Créer des fichiers, des répertoires
• Faire des recherche de fichiers…
• Supprimer fichiers et répertoires
• Etre à l’écoute des modifications
27/02/2016
78
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Installation du projet
• Enregistrer un certificat
• Accéder à Google Drive
• Exemples d’opérations
27/02/2016
79
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google Mobile Ads
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
80
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Déclarer les permissions
• Les identifiants de publicité
• Insérer une vue publicitaire
27/02/2016
81
Formation Android 6, niveau Expert alphorm.com™©
Déclarer les permissions
• Modifier le AndroidManifest.xml le cas échéant
• Modifier le script Gradle du module pour ajouter la dépendance vers les
services Google, spécialement ads
27/02/2016
82
Formation Android 6, niveau Expert alphorm.com™©
Les identifiants
• Créer un bloc d’annonce et suivant les instructions
• Le lien https://support.google.com/admob/answer/3052638
27/02/2016
4
Formation Android 6, niveau Expert alphorm.com™©
Mes formations sur alphorm
27/02/2016
4
Formation Android 6, niveau Expert alphorm.com™©
Mes formations sur alphorm
27/02/2016
85
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Déclarer les permissions
• Les identifiants de publicité
• Insérer une vue publicitaire
27/02/2016
86
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google Pay
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
87
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Obtenir l’identifiant client Oauth 2.0
• La classe WalletFragment
• La clé à fournir
27/02/2016
88
Formation Android 6, niveau Expert alphorm.com™©
Obtenir l’identifiant Oauth 2.0
• Enregistrer l’application et obtenir un certificat
• Permet de s’authentifier tout en demandant l’autorisation auprès de
l’utilisateur proprétaire
27/02/2016
89
Formation Android 6, niveau Expert alphorm.com™©
La classe WalletFragment
• Prise en charge du flux d’achat
• Les acheteurs permettent aux vendeurs d’accéder à leurs infos de
paiement
• L’application récupère un objet MaskedWallet : carte bancaire partielle,
infos adresses…
• Puis requête de FullWallet : toutes les infos nécessaires pour valider le
paiement
27/02/2016
90
Formation Android 6, niveau Expert alphorm.com™©
La clé publique à fournir
• Format Elliptic Curve Integrated
• Utiliser OpenSSL pour l’obtenir
27/02/2016
91
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Obtenir l’identifiant client Oauth 2.0
• La classe WalletFragment
• La clé publique à fournir
27/02/2016
92
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Google Wear
Google Play Services
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
93
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Packages et classes
• MessageApi
• Data Layer Api
27/02/2016
94
Formation Android 6, niveau Expert alphorm.com™©
Package et classes
• CapabilityApi : propose une API pour découvre les possibilités des
wearables
• DataApi : propose une API pour gérer les accès aux données
• MessageApi : propose une API pour envoyer des messages
• NodeApi : propose une API pour parcourir et découvrir les nœuds des
wearables
27/02/2016
95
Formation Android 6, niveau Expert alphorm.com™©
MessageApi
• Obtenir une connexion
• Savoir où envoyer ce message
• Envoyer le message
• Il est possible de recevoir les messages
27/02/2016
96
Formation Android 6, niveau Expert alphorm.com™©
DataLayer Api
• Obtention d’une connexion
• Objectif de synchronisation de données entre mobile et wearable
• Créer un objet de type PutDataRequest
• Ou mieux PuDataMapRequest, paires clés –valeurs
Sérialisation simple et efficace
27/02/2016
5
Formation Android 6, niveau Expert alphorm.com™©
Pourquoi Android Expert ?
• Android est une plateforme vaste
• De nombreux usages, de nombreuses APIs
• Nous centrons notre formation sur des aspects exotiques
• L’usage du C pour créer des applications
• Les besoins en performances
• Les objets connectés
27/02/2016
5
Formation Android 6, niveau Expert alphorm.com™©
Pourquoi Android Expert ?
• Android est une plateforme vaste
• De nombreux usages, de nombreuses APIs
• Nous centrons notre formation sur des aspects exotiques
• L’usage du C pour créer des applications
• Les besoins en performances
• Les objets connectés
27/02/2016
5
Formation Android 6, niveau Expert alphorm.com™©
Pourquoi Android Expert ?
• Android est une plateforme vaste
• De nombreux usages, de nombreuses APIs
• Nous centrons notre formation sur des aspects exotiques
• L’usage du C pour créer des applications
• Les besoins en performances
• Les objets connectés
27/02/2016
5
Formation Android 6, niveau Expert alphorm.com™©
Pourquoi Android Expert ?
• Android est une plateforme vaste
• De nombreux usages, de nombreuses APIs
• Nous centrons notre formation sur des aspects exotiques
• L’usage du C pour créer des applications
• Les besoins en performances
• Les objets connectés
27/02/2016
101
Formation Android 6, niveau Expert alphorm.com™©
Le contrôle WebView
• Le contrôle WebView permet d’inclure un accès web dans une activité
• Interface spécifique
• Support normal du HTML et du Javascript
• Possibilités d’interactions avec l’application locale
• Nécessité de déclarer les permissions
27/02/2016
102
Formation Android 6, niveau Expert alphorm.com™©
L’accès aux Webservices
• Il est possible d’accéder aux serveur web par le protocole HTTP
• Google propose une API dite REST pour ses applications
27/02/2016
103
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Avec le navigateur Android
• Le contrôle Webview
• L’accès aux webservices
27/02/2016
104
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Le packaging
Web et Android
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
105
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Le problème de la compression
• Trouver une solution de déploiement
• Le transfert de l’application
27/02/2016
106
Formation Android 6, niveau Expert alphorm.com™©
Le problème de la compression
• Il peut être nécessaire de compresser les infos à télécharger
• Utiliser un fichier jar
• L’outil yuicompressor permet de compresser les js
27/02/2016
107
Formation Android 6, niveau Expert alphorm.com™©
Trouver une solution de déploiement
• Combien de domaines j’obtiens ?
• Quelle réactivité du support ?
• Quels outils de gestion ?
• Que se passe-t-il quand je dépasse mes plans ?
• Y a-t-il un accès CRON ?
27/02/2016
108
Formation Android 6, niveau Expert alphorm.com™©
Le transfert de l’application
• Réalisée en général via FTP
• Besoin de transfert sécurisé, SFTP
• L’outil Filezilla par exemple
27/02/2016
109
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Le problème de la compression
• Trouver une solution de déploiement
• Le transfert de l’application
27/02/2016
110
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Les résolutions
Web et Android
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
111
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Le problème des résolutions
• La solution avec CSS
27/02/2016
112
Formation Android 6, niveau Expert alphorm.com™©
Le problème des résolutions
• Les résolutions sont très différentes d’un appareil à l’autre
• Sans compter les ordinateurs de bureau
27/02/2016
113
Formation Android 6, niveau Expert alphorm.com™©
La solution avec CSS
• Réorganiser les pages en fonctions de la résolution
• Les javascript media queries
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
6
Formation Android 6, niveau Expert alphorm.com™©
Le plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
134
Formation Android 6, niveau Expert alphorm.com™©
Accéder à une collection d’élements
• Faire une requête avec GET en fournissant l’URI
• Penser à l’asynchrone …
27/02/2016
135
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Principe
• Créer un élément par REST
• Accéder à une collection d’éléments
27/02/2016
136
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Webservice REST et JSON
Web et Android
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
137
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Le format JSON
• Créer un élément par REST
• Accéder à une collection d’éléments
27/02/2016
138
Formation Android 6, niveau Expert alphorm.com™©
Le format JSON
• JavaScript Object Notation
• Format d’échange standard
27/02/2016
139
Formation Android 6, niveau Expert alphorm.com™©
Les méthodes
• L’application android utilise les méthodes :
GET pour récupérer
POST pour créer
PUT pour modifier
DELETE pour supprimer
• Les autres méthodes peuvent avoir d’autres usages
• Pas de gestion d’états sur le serveur
27/02/2016
140
Formation Android 6, niveau Expert alphorm.com™©
Créer un élément par REST
• Faire un accès avec POST
27/02/2016
141
Formation Android 6, niveau Expert alphorm.com™©
Accéder à une collection d’élements
• Faire une requête avec GET en fournissant l’URI
• Désérialiser
27/02/2016
142
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Le format JSON
• Créer un élément par REST
• Accéder à une collection d’éléments
27/02/2016
143
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Création packaging
Android natif
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
144
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Le NDK dans Android Studio
• Le projet et Gradle
• Intégrer du C
27/02/2016
145
Formation Android 6, niveau Expert alphorm.com™©
Le NDK dans Android Studio
• Sur le projet en cours …
Open Module Settings -> SDK Location
27/02/2016
146
Formation Android 6, niveau Expert alphorm.com™©
Le projet et Gradle
• Modifier la version de Gradle
• Adapter le script
27/02/2016
7
Formation Android 6, niveau Expert alphorm.com™©
Publics concernés
• Cette formation s’adresse à des développeurs
• Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe
• La connaissance du C ou C++ est souhaitable
• Nous ne reviendrons pas sur les concepts des langages
27/02/2016
7
Formation Android 6, niveau Expert alphorm.com™©
Publics concernés
• Cette formation s’adresse à des développeurs
• Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe
• La connaissance du C ou C++ est souhaitable
• Nous ne reviendrons pas sur les concepts des langages
27/02/2016
7
Formation Android 6, niveau Expert alphorm.com™©
Publics concernés
• Cette formation s’adresse à des développeurs
• Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe
• La connaissance du C ou C++ est souhaitable
• Nous ne reviendrons pas sur les concepts des langages
27/02/2016
7
Formation Android 6, niveau Expert alphorm.com™©
Publics concernés
• Cette formation s’adresse à des développeurs
• Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe
• La connaissance du C ou C++ est souhaitable
• Nous ne reviendrons pas sur les concepts des langages
27/02/2016
7
Formation Android 6, niveau Expert alphorm.com™©
Publics concernés
• Cette formation s’adresse à des développeurs
• Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe
• La connaissance du C ou C++ est souhaitable
• Nous ne reviendrons pas sur les concepts des langages
27/02/2016
152
Formation Android 6, niveau Expert alphorm.com™©
Les types de données
• Gérer la correspondance entre types Java et C
27/02/2016
153
Formation Android 6, niveau Expert alphorm.com™©
Le contenu du NDK
• Un ensemble d’outils pour encapsuler du C et C++ dans vos
applications
• Un outil pour charger, compiler : ndk-build
• Les bibliothèques natives partagées ou statiques
• Un outil de debug
• Un manifest pour déclarer les dépendances
27/02/2016
154
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Appeler du C à partir de Java
• Les types de données
• Le contenu du NDK
27/02/2016
155
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Découverte
Renderscript
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
156
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Présentation
• Créer le script
• Initialiser le script
• Intégrer le script dans une vue
27/02/2016
157
Formation Android 6, niveau Expert alphorm.com™©
Présentation
• Renderscript est un langage de script à haute performance
Syntaxe du C99
• Orienté rendu graphique et calculs rapides
• Sera compilé en code natif plus tard par le système
• Dispose d’une API
27/02/2016
158
Formation Android 6, niveau Expert alphorm.com™©
Créer le script
• Il faut écrire un « kernel », fichier de script qui doit être placé sous src
• Peut contenir :
Des fonctions qui seront invoquées
Des variables globales
Des fonctions parallèles (sur itération dans des Allocations)
Eventuellement une fonction init(), invoquée lors du démarrage du script
• Utiliser les APIs Renderscript « android.renderscript »
27/02/2016
159
Formation Android 6, niveau Expert alphorm.com™©
Configuration
• Modifier le script Gradle pour référencer Renderscipt
27/02/2016
160
Formation Android 6, niveau Expert alphorm.com™©
Primitives
• Des primitives sont disponibles sous la forme de ScriptIntrinsics
• Grosses économies de temps
27/02/2016
161
Formation Android 6, niveau Expert alphorm.com™©
Initialiser le script
• Créer un objet RenderScript : contexte d’utilisation des scripts, unique
dans l’application
• Créer d’Allocation : mémoire en entrée et en sortie, utilisée par le script
Créée par createFromBitmap et createTyped
• et instancier le script généré
Script_<nom>
• Fournir les données via des setter
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
8
Formation Android 6, niveau Expert alphorm.com™©
Prérequis de la formation
• Savoir lire du code Java
• Avoir des rudiments sur les interfaces graphiques
• Avoir des notions de pointeurs
• Et … du courage comme toujours !
27/02/2016
174
Formation Android 6, niveau Expert alphorm.com™©
Notification avec action
• Prévoir un Intent pour représenter l’action à déclencher
• Utiliser setContentIntent pour positionner l’Intent sur la notification
• Pour lancer des activités sur le Wearable, il faut positionner l’action sur
WearableExtender
27/02/2016
175
Formation Android 6, niveau Expert alphorm.com™©
Les notifications multipages
• Préparer une liste de notifications
• Créer un WearableExtender
• Positionner ce WearableExtender sur la notification réelle
27/02/2016
176
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Les classes pour la notification
• Les textes longs
• Notification avec action
• Les notifications multipages
27/02/2016
177
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Utiliser les capteurs
Google Wear
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
178
Formation Android 6, niveau Expert alphorm.com™©
Plan
• La configuration du projet
• Les capteurs
• La capture du pouls
• Répondre aux événements
27/02/2016
179
Formation Android 6, niveau Expert alphorm.com™©
La configuration du projet
• Le manifest doit comporter les permissions
• Accéder au gestionnaire
SensorManager
• Accéder au capteur que l’on souhaite utiliser
27/02/2016
180
Formation Android 6, niveau Expert alphorm.com™©
Les capteurs
27/02/2016
181
Formation Android 6, niveau Expert alphorm.com™©
La capture du pouls
• Enregistrer le listener
27/02/2016
182
Formation Android 6, niveau Expert alphorm.com™©
Répondre aux événements
• Implémenter onSensorChanged
• SensorEvent en paramètre
27/02/2016
183
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• La configuration du projet
• Les capteurs
• La capture du pouls
• Répondre aux événements
27/02/2016
184
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Gérer la voix
Google Wear
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
185
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Utiliser les événements voix prédéfinis
• La classe RemoteInput
• Usage du BroadcastReceiver
27/02/2016
186
Formation Android 6, niveau Expert alphorm.com™©
Les événements voix prédéfinis
• Les événements voix sont déjà identifiés
• Possible de faire répondre votre application
27/02/2016
187
Formation Android 6, niveau Expert alphorm.com™©
La classe RemoteInput
• Pour récupérer une entrée vocale de l’utilisateur
• Va lancer une PendingIntent, qui contient (l’Intent qui contient) les
entrées de l’utilisateur
27/02/2016
188
Formation Android 6, niveau Expert alphorm.com™©
Usage du BroadcastReceiver
• Un BroadcastReceiver permet de récupérer sur le mobile la réponse
• Il doit être enregistré
27/02/2016
189
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Utiliser les événements voix prédéfinis
• La classe RemoteInput
• Usage du BroadCastReceiver
27/02/2016
190
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Gérer la
communication
Google Wear
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
191
Formation Android 6, niveau Expert alphorm.com™©
Plan
• Emettre des données vers le wearable
• Sur le wearable
27/02/2016
192
Formation Android 6, niveau Expert alphorm.com™©
Emettre des données vers le wearable
• PutDataMapRequest permet d’accéder aux données partagées
• Identifier la zone de données
• L’écoute se fait sur un WearableListenerService
27/02/2016
9
Formation Android 6, niveau Expert alphorm.com™©
Les outils nécessaires
• L’IDE principal est Android Studio 1.5.x
• Nous utilisons aussi Android Studio 2.0
• La présentation sera faite sous Windows 10
27/02/2016
194
Formation Android 6, niveau Expert alphorm.com™©
Ce qu’on a couvert
• Emettre des données vers le wearable
• Sur le wearable
27/02/2016
195
Formation Android 6, niveau Expert alphorm.com™©
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Conclusion
Android expert
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
27/02/2016
196
Formation Android 6, niveau Expert alphorm.com™©
Plan de la formation
• Les services Google Play Services
• Les applications Web et Android
• Android Natif, introduction à NDK
• RenderScript
• Google Wear
27/02/2016
197
Formation Android 6, niveau Expert alphorm.com™©
Les autres formations dév sur Alphorm
27/02/2016
198
Formation Android 6, niveau Expert alphorm.com™©
Pour continuer …
• La formation Java fondamentaux …
• La formation Java avancée …
• La formation Android …
27/02/2016
199
Formation Android 6, niveau Expert alphorm.com™©
Merci d’avoir suivi cette formation,
rendez-vous pour la suite !

Mais conteúdo relacionado

Mais procurados

Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux Alphorm
 
Alphorm.com support de la formation ms azure pour les développeurs
Alphorm.com support de la formation ms azure pour les développeursAlphorm.com support de la formation ms azure pour les développeurs
Alphorm.com support de la formation ms azure pour les développeursAlphorm
 
Alphorm.com Formation jQuery
Alphorm.com Formation jQueryAlphorm.com Formation jQuery
Alphorm.com Formation jQueryAlphorm
 
Alphorm.com support de la formation windows 10 administration des services av...
Alphorm.com support de la formation windows 10 administration des services av...Alphorm.com support de la formation windows 10 administration des services av...
Alphorm.com support de la formation windows 10 administration des services av...Alphorm
 
Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6Alphorm
 
Alphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancéAlphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancéAlphorm
 
Alphorm.com Support de la formation SolidWorks 2016 - Perfectionnement
Alphorm.com Support de la formation SolidWorks 2016 - PerfectionnementAlphorm.com Support de la formation SolidWorks 2016 - Perfectionnement
Alphorm.com Support de la formation SolidWorks 2016 - PerfectionnementAlphorm
 
Alphorm.com Support de la Formation Outlook 2016 Initiation
Alphorm.com  Support de la Formation Outlook 2016 Initiation Alphorm.com  Support de la Formation Outlook 2016 Initiation
Alphorm.com Support de la Formation Outlook 2016 Initiation Alphorm
 
Alphorm.com Formation Office 365 Avancé
Alphorm.com Formation Office 365 AvancéAlphorm.com Formation Office 365 Avancé
Alphorm.com Formation Office 365 AvancéAlphorm
 
Alphorm.com Formation Le Language C
Alphorm.com  Formation Le Language C Alphorm.com  Formation Le Language C
Alphorm.com Formation Le Language C Alphorm
 
Alphorm.com Formation MS Project 2013
Alphorm.com Formation MS Project 2013Alphorm.com Formation MS Project 2013
Alphorm.com Formation MS Project 2013Alphorm
 
Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)Alphorm
 
Alphorm.com Support de la formation NodeJS , avancé
Alphorm.com Support de la formation NodeJS , avancé Alphorm.com Support de la formation NodeJS , avancé
Alphorm.com Support de la formation NodeJS , avancé Alphorm
 
Alphorm.com Formation WordPress 4
Alphorm.com Formation WordPress 4 Alphorm.com Formation WordPress 4
Alphorm.com Formation WordPress 4 Alphorm
 
Alphorm.com Java 8: les nouveautés
Alphorm.com Java 8: les nouveautésAlphorm.com Java 8: les nouveautés
Alphorm.com Java 8: les nouveautésAlphorm
 
Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1Alphorm
 
Alphorm.com Support de la Formation LPIC-1 version 4 ss
Alphorm.com Support de la Formation LPIC-1 version 4 ssAlphorm.com Support de la Formation LPIC-1 version 4 ss
Alphorm.com Support de la Formation LPIC-1 version 4 ssAlphorm
 
Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm
 
Alphorm.com Support de la Formation SCOM 2012 R2 avancé
Alphorm.com Support de la Formation SCOM 2012 R2 avancéAlphorm.com Support de la Formation SCOM 2012 R2 avancé
Alphorm.com Support de la Formation SCOM 2012 R2 avancéAlphorm
 
Alphorm.com Formation MOS Excel 2013(77-420)
Alphorm.com Formation MOS Excel 2013(77-420)Alphorm.com Formation MOS Excel 2013(77-420)
Alphorm.com Formation MOS Excel 2013(77-420)Alphorm
 

Mais procurados (20)

Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux
 
Alphorm.com support de la formation ms azure pour les développeurs
Alphorm.com support de la formation ms azure pour les développeursAlphorm.com support de la formation ms azure pour les développeurs
Alphorm.com support de la formation ms azure pour les développeurs
 
Alphorm.com Formation jQuery
Alphorm.com Formation jQueryAlphorm.com Formation jQuery
Alphorm.com Formation jQuery
 
Alphorm.com support de la formation windows 10 administration des services av...
Alphorm.com support de la formation windows 10 administration des services av...Alphorm.com support de la formation windows 10 administration des services av...
Alphorm.com support de la formation windows 10 administration des services av...
 
Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6
 
Alphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancéAlphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancé
 
Alphorm.com Support de la formation SolidWorks 2016 - Perfectionnement
Alphorm.com Support de la formation SolidWorks 2016 - PerfectionnementAlphorm.com Support de la formation SolidWorks 2016 - Perfectionnement
Alphorm.com Support de la formation SolidWorks 2016 - Perfectionnement
 
Alphorm.com Support de la Formation Outlook 2016 Initiation
Alphorm.com  Support de la Formation Outlook 2016 Initiation Alphorm.com  Support de la Formation Outlook 2016 Initiation
Alphorm.com Support de la Formation Outlook 2016 Initiation
 
Alphorm.com Formation Office 365 Avancé
Alphorm.com Formation Office 365 AvancéAlphorm.com Formation Office 365 Avancé
Alphorm.com Formation Office 365 Avancé
 
Alphorm.com Formation Le Language C
Alphorm.com  Formation Le Language C Alphorm.com  Formation Le Language C
Alphorm.com Formation Le Language C
 
Alphorm.com Formation MS Project 2013
Alphorm.com Formation MS Project 2013Alphorm.com Formation MS Project 2013
Alphorm.com Formation MS Project 2013
 
Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)
 
Alphorm.com Support de la formation NodeJS , avancé
Alphorm.com Support de la formation NodeJS , avancé Alphorm.com Support de la formation NodeJS , avancé
Alphorm.com Support de la formation NodeJS , avancé
 
Alphorm.com Formation WordPress 4
Alphorm.com Formation WordPress 4 Alphorm.com Formation WordPress 4
Alphorm.com Formation WordPress 4
 
Alphorm.com Java 8: les nouveautés
Alphorm.com Java 8: les nouveautésAlphorm.com Java 8: les nouveautés
Alphorm.com Java 8: les nouveautés
 
Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1
 
Alphorm.com Support de la Formation LPIC-1 version 4 ss
Alphorm.com Support de la Formation LPIC-1 version 4 ssAlphorm.com Support de la Formation LPIC-1 version 4 ss
Alphorm.com Support de la Formation LPIC-1 version 4 ss
 
Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm.com Formation Android 5
Alphorm.com Formation Android 5
 
Alphorm.com Support de la Formation SCOM 2012 R2 avancé
Alphorm.com Support de la Formation SCOM 2012 R2 avancéAlphorm.com Support de la Formation SCOM 2012 R2 avancé
Alphorm.com Support de la Formation SCOM 2012 R2 avancé
 
Alphorm.com Formation MOS Excel 2013(77-420)
Alphorm.com Formation MOS Excel 2013(77-420)Alphorm.com Formation MOS Excel 2013(77-420)
Alphorm.com Formation MOS Excel 2013(77-420)
 

Destaque

Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé Alphorm
 
Alphorm.com Formation Windev Mobile 19, Android
Alphorm.com Formation Windev Mobile 19, AndroidAlphorm.com Formation Windev Mobile 19, Android
Alphorm.com Formation Windev Mobile 19, AndroidAlphorm
 
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôleAlphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôleAlphorm
 
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...Alphorm
 
Alphorm.com win dev-20-avance-ss
Alphorm.com win dev-20-avance-ssAlphorm.com win dev-20-avance-ss
Alphorm.com win dev-20-avance-ssAlphorm
 
alphorm.com - Formation MOS Word 2013 (77-418)
alphorm.com - Formation MOS Word 2013 (77-418)alphorm.com - Formation MOS Word 2013 (77-418)
alphorm.com - Formation MOS Word 2013 (77-418)Alphorm
 
Alphorm.com Support de la Formation-PowerPoint 2016 Initiation
Alphorm.com Support de la Formation-PowerPoint 2016 Initiation Alphorm.com Support de la Formation-PowerPoint 2016 Initiation
Alphorm.com Support de la Formation-PowerPoint 2016 Initiation Alphorm
 
Alphorm.com Support de la formation Programmer en C# avec visual studio 2015
Alphorm.com Support de la formation Programmer en C# avec visual studio 2015Alphorm.com Support de la formation Programmer en C# avec visual studio 2015
Alphorm.com Support de la formation Programmer en C# avec visual studio 2015Alphorm
 
Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...
Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...
Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...Alphorm
 
Alphorm.com support de la formation Word 2016 Initiation
Alphorm.com support de la formation Word 2016 InitiationAlphorm.com support de la formation Word 2016 Initiation
Alphorm.com support de la formation Word 2016 InitiationAlphorm
 
Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21Alphorm
 
alphorm.com - Formation Windows 8.1 - Utilisateur
alphorm.com - Formation Windows 8.1 - Utilisateuralphorm.com - Formation Windows 8.1 - Utilisateur
alphorm.com - Formation Windows 8.1 - UtilisateurAlphorm
 
Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...
Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...
Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...Alphorm
 
Alphorm.com support de la formation Access 2016 Initiation
Alphorm.com support de la formation Access 2016 InitiationAlphorm.com support de la formation Access 2016 Initiation
Alphorm.com support de la formation Access 2016 InitiationAlphorm
 
Alphorm.com Formation Windev Mobile 20 iOS
Alphorm.com Formation Windev Mobile 20 iOSAlphorm.com Formation Windev Mobile 20 iOS
Alphorm.com Formation Windev Mobile 20 iOSAlphorm
 
Alphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCDAlphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCDAlphorm
 
Alphorm.com Formation JavaFX
Alphorm.com Formation JavaFXAlphorm.com Formation JavaFX
Alphorm.com Formation JavaFXAlphorm
 
Alphorm.com Formation Java,avancé OCP (1Z0-804)
Alphorm.com Formation Java,avancé OCP (1Z0-804)Alphorm.com Formation Java,avancé OCP (1Z0-804)
Alphorm.com Formation Java,avancé OCP (1Z0-804)Alphorm
 
Alphorm.com Formation Excel 2016 Expert I - partie 1
Alphorm.com Formation Excel 2016 Expert I - partie 1Alphorm.com Formation Excel 2016 Expert I - partie 1
Alphorm.com Formation Excel 2016 Expert I - partie 1Alphorm
 
Alphorm.com support Formation OneNote 2016 Prise de notes professionnelles
Alphorm.com support Formation OneNote 2016 Prise de notes professionnellesAlphorm.com support Formation OneNote 2016 Prise de notes professionnelles
Alphorm.com support Formation OneNote 2016 Prise de notes professionnellesAlphorm
 

Destaque (20)

Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé
 
Alphorm.com Formation Windev Mobile 19, Android
Alphorm.com Formation Windev Mobile 19, AndroidAlphorm.com Formation Windev Mobile 19, Android
Alphorm.com Formation Windev Mobile 19, Android
 
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôleAlphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
 
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
 
Alphorm.com win dev-20-avance-ss
Alphorm.com win dev-20-avance-ssAlphorm.com win dev-20-avance-ss
Alphorm.com win dev-20-avance-ss
 
alphorm.com - Formation MOS Word 2013 (77-418)
alphorm.com - Formation MOS Word 2013 (77-418)alphorm.com - Formation MOS Word 2013 (77-418)
alphorm.com - Formation MOS Word 2013 (77-418)
 
Alphorm.com Support de la Formation-PowerPoint 2016 Initiation
Alphorm.com Support de la Formation-PowerPoint 2016 Initiation Alphorm.com Support de la Formation-PowerPoint 2016 Initiation
Alphorm.com Support de la Formation-PowerPoint 2016 Initiation
 
Alphorm.com Support de la formation Programmer en C# avec visual studio 2015
Alphorm.com Support de la formation Programmer en C# avec visual studio 2015Alphorm.com Support de la formation Programmer en C# avec visual studio 2015
Alphorm.com Support de la formation Programmer en C# avec visual studio 2015
 
Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...
Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...
Alphorm.com Support de la formation EXCEL 2016 Initiation Découverte de l’env...
 
Alphorm.com support de la formation Word 2016 Initiation
Alphorm.com support de la formation Word 2016 InitiationAlphorm.com support de la formation Word 2016 Initiation
Alphorm.com support de la formation Word 2016 Initiation
 
Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21
 
alphorm.com - Formation Windows 8.1 - Utilisateur
alphorm.com - Formation Windows 8.1 - Utilisateuralphorm.com - Formation Windows 8.1 - Utilisateur
alphorm.com - Formation Windows 8.1 - Utilisateur
 
Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...
Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...
Alphorm.com Support de la formation EXCEL 2016 initiation ,Organiser et saisi...
 
Alphorm.com support de la formation Access 2016 Initiation
Alphorm.com support de la formation Access 2016 InitiationAlphorm.com support de la formation Access 2016 Initiation
Alphorm.com support de la formation Access 2016 Initiation
 
Alphorm.com Formation Windev Mobile 20 iOS
Alphorm.com Formation Windev Mobile 20 iOSAlphorm.com Formation Windev Mobile 20 iOS
Alphorm.com Formation Windev Mobile 20 iOS
 
Alphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCDAlphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCD
 
Alphorm.com Formation JavaFX
Alphorm.com Formation JavaFXAlphorm.com Formation JavaFX
Alphorm.com Formation JavaFX
 
Alphorm.com Formation Java,avancé OCP (1Z0-804)
Alphorm.com Formation Java,avancé OCP (1Z0-804)Alphorm.com Formation Java,avancé OCP (1Z0-804)
Alphorm.com Formation Java,avancé OCP (1Z0-804)
 
Alphorm.com Formation Excel 2016 Expert I - partie 1
Alphorm.com Formation Excel 2016 Expert I - partie 1Alphorm.com Formation Excel 2016 Expert I - partie 1
Alphorm.com Formation Excel 2016 Expert I - partie 1
 
Alphorm.com support Formation OneNote 2016 Prise de notes professionnelles
Alphorm.com support Formation OneNote 2016 Prise de notes professionnellesAlphorm.com support Formation OneNote 2016 Prise de notes professionnelles
Alphorm.com support Formation OneNote 2016 Prise de notes professionnelles
 

Semelhante a Alphorm.com Support Formation Android 6, Expert

Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1Alphorm
 
Alphorm.com Support de la Formation Windows Containers
Alphorm.com Support de la Formation Windows ContainersAlphorm.com Support de la Formation Windows Containers
Alphorm.com Support de la Formation Windows ContainersAlphorm
 
Alphorm.com Formation NodeJS, les fondamentaux
Alphorm.com Formation NodeJS, les fondamentauxAlphorm.com Formation NodeJS, les fondamentaux
Alphorm.com Formation NodeJS, les fondamentauxAlphorm
 
Alphorm.com Support de la Formation Azure Iaas avancé 2
Alphorm.com Support de la Formation Azure Iaas avancé 2Alphorm.com Support de la Formation Azure Iaas avancé 2
Alphorm.com Support de la Formation Azure Iaas avancé 2Alphorm
 
Tech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesTech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesMichael Laguerre
 
Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1
Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1
Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1Alphorm
 
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec NapaSharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec NapaGuillaume Meyer
 
Alphorm.com Support de la Formation Azure Iaas 3
Alphorm.com Support de la Formation Azure Iaas 3 Alphorm.com Support de la Formation Azure Iaas 3
Alphorm.com Support de la Formation Azure Iaas 3 Alphorm
 
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancé
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancéAlphorm.com Support de la Formation Windows 10 Troubleshooting avancé
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancéAlphorm
 
Alphorm.com support de la formation Stormshield, Expert
Alphorm.com support de la formation Stormshield, ExpertAlphorm.com support de la formation Stormshield, Expert
Alphorm.com support de la formation Stormshield, ExpertAlphorm
 
Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé Alphorm
 
présentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdfprésentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdfghiz-
 
Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git Alphorm
 
Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...
Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...
Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...serge luca
 
Alphorm.com Support de la formation JavaScript les fondamentaux
Alphorm.com Support de la formation JavaScript les fondamentauxAlphorm.com Support de la formation JavaScript les fondamentaux
Alphorm.com Support de la formation JavaScript les fondamentauxAlphorm
 
Alphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité MetasploitAlphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité MetasploitAlphorm
 
Utiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateformeUtiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateformepprem
 
Alphorm.com - Formation programmer en Visual Basic .NET
Alphorm.com - Formation programmer en Visual Basic .NETAlphorm.com - Formation programmer en Visual Basic .NET
Alphorm.com - Formation programmer en Visual Basic .NETAlphorm
 
Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm
 
Alphrom.com Formation Découverte Office 365
Alphrom.com Formation Découverte Office 365Alphrom.com Formation Découverte Office 365
Alphrom.com Formation Découverte Office 365Alphorm
 

Semelhante a Alphorm.com Support Formation Android 6, Expert (20)

Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1
 
Alphorm.com Support de la Formation Windows Containers
Alphorm.com Support de la Formation Windows ContainersAlphorm.com Support de la Formation Windows Containers
Alphorm.com Support de la Formation Windows Containers
 
Alphorm.com Formation NodeJS, les fondamentaux
Alphorm.com Formation NodeJS, les fondamentauxAlphorm.com Formation NodeJS, les fondamentaux
Alphorm.com Formation NodeJS, les fondamentaux
 
Alphorm.com Support de la Formation Azure Iaas avancé 2
Alphorm.com Support de la Formation Azure Iaas avancé 2Alphorm.com Support de la Formation Azure Iaas avancé 2
Alphorm.com Support de la Formation Azure Iaas avancé 2
 
Tech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesTech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobiles
 
Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1
Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1
Alphorm.com Support de la Formation Windows 10 Troubleshootings partie 1
 
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec NapaSharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
 
Alphorm.com Support de la Formation Azure Iaas 3
Alphorm.com Support de la Formation Azure Iaas 3 Alphorm.com Support de la Formation Azure Iaas 3
Alphorm.com Support de la Formation Azure Iaas 3
 
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancé
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancéAlphorm.com Support de la Formation Windows 10 Troubleshooting avancé
Alphorm.com Support de la Formation Windows 10 Troubleshooting avancé
 
Alphorm.com support de la formation Stormshield, Expert
Alphorm.com support de la formation Stormshield, ExpertAlphorm.com support de la formation Stormshield, Expert
Alphorm.com support de la formation Stormshield, Expert
 
Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé
 
présentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdfprésentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdf
 
Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git
 
Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...
Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...
Patterns pour porter son code SharePoint vers Office 365 (SharePoint Saturday...
 
Alphorm.com Support de la formation JavaScript les fondamentaux
Alphorm.com Support de la formation JavaScript les fondamentauxAlphorm.com Support de la formation JavaScript les fondamentaux
Alphorm.com Support de la formation JavaScript les fondamentaux
 
Alphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité MetasploitAlphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité Metasploit
 
Utiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateformeUtiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateforme
 
Alphorm.com - Formation programmer en Visual Basic .NET
Alphorm.com - Formation programmer en Visual Basic .NETAlphorm.com - Formation programmer en Visual Basic .NET
Alphorm.com - Formation programmer en Visual Basic .NET
 
Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3
 
Alphrom.com Formation Découverte Office 365
Alphrom.com Formation Découverte Office 365Alphrom.com Formation Découverte Office 365
Alphrom.com Formation Découverte Office 365
 

Mais de Alphorm

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm
 
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm
 
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm
 

Mais de Alphorm (20)

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
 
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion Commerciale
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
 
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POO
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
 

Alphorm.com Support Formation Android 6, Expert

  • 1. 27/02/2016 1 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Présentation Android expert Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 2. 27/02/2016 2 Formation Android 6, niveau Expert alphorm.com™© Plan • Présentation du formateur • Pourquoi Android Expert? • Présentation de votre formation • Le plan de la formation • Publics concernés • Prérequis de la formation
  • 3. 27/02/2016 2 Formation Android 6, niveau Expert alphorm.com™© Plan • Présentation du formateur • Pourquoi Android Expert? • Présentation de votre formation • Le plan de la formation • Publics concernés • Prérequis de la formation
  • 4. 27/02/2016 4 Formation Android 6, niveau Expert alphorm.com™© Mes formations sur alphorm
  • 5. 27/02/2016 5 Formation Android 6, niveau Expert alphorm.com™© Pourquoi Android Expert ? • Android est une plateforme vaste • De nombreux usages, de nombreuses APIs • Nous centrons notre formation sur des aspects exotiques • L’usage du C pour créer des applications • Les besoins en performances • Les objets connectés
  • 6. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 7. 27/02/2016 7 Formation Android 6, niveau Expert alphorm.com™© Publics concernés • Cette formation s’adresse à des développeurs • Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe • La connaissance du C ou C++ est souhaitable • Nous ne reviendrons pas sur les concepts des langages
  • 8. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 9. 27/02/2016 9 Formation Android 6, niveau Expert alphorm.com™© Les outils nécessaires • L’IDE principal est Android Studio 1.5.x • Nous utilisons aussi Android Studio 2.0 • La présentation sera faite sous Windows 10
  • 10. 27/02/2016 10 Formation Android 6, niveau Expert alphorm.com™© Les autres formations dév sur Alphorm
  • 11. 27/02/2016 11 Formation Android 6, niveau Expert alphorm.com™© Are you ready ? ☺
  • 12. 27/02/2016 12 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Généralités Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 13. 27/02/2016 13 Formation Android 6, niveau Expert alphorm.com™© Plan • Package et classes • Mode de fonctionnement • Mise en œuvre • Etablissement de la connexion • Communiquer • Les authentifications
  • 14. 27/02/2016 14 Formation Android 6, niveau Expert alphorm.com™© Package et classes • Les packages com.google.android.gms • La classe com.google.android.gms.common.api.GoogleApiClient • Chaque API est représentée par un package
  • 15. 27/02/2016 15 Formation Android 6, niveau Expert alphorm.com™© Mode fonctionnement • Architecture Un proxy côté client va servir la communication Nécessite le « Google Play Services SDK » • Pour accéder aux services Google non concernés par le SDK Utiliser la classe GoogleAuthUtil Permet la manipulation d’un jeton OAuth2.0
  • 16. 27/02/2016 16 Formation Android 6, niveau Expert alphorm.com™© Mise en oeuvre • Configurer le projet(fichier Gradle sous Android Studio) • GoogleApiClient est la classe à utiliser • Avec le builder associé, afin de faciliter la configuration • Possibilités de gérer les exceptions liées
  • 17. 27/02/2016 17 Formation Android 6, niveau Expert alphorm.com™© Etablissement de la connexion • Etablir la connexion pour communiquer • GoogleApiClient servira de proxy • Bonnes pratiques pour établir/couper la connexion • Ignorer ou non les erreurs de connexion • Accéder à différentes APIs, cas particulier de Wearable
  • 18. 27/02/2016 18 Formation Android 6, niveau Expert alphorm.com™© Communiquer • Les accès aux services peuvent nécessiter des paramètres supplémentaires Un certificat récupérable sur la console • La communication peut être synchrone ou non synchrone
  • 19. 27/02/2016 19 Formation Android 6, niveau Expert alphorm.com™© Les authentifications • Pour les services qui nécessitent une authentification Authentifier l’utilisateur de l’application • Définit un ensemble de droits Certifier l’application elle-même • Il faut enregistrer l’application • Le token obtenu sera fourni dans l’entête HTTP API REST
  • 20. 27/02/2016 20 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Package et classes • Mode de fonctionnement • Mise en œuvre • Etablissement de la connexion • Communiquer • Les authentifications
  • 21. 27/02/2016 21 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog La console développeur Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 22. 27/02/2016 22 Formation Android 6, niveau Expert alphorm.com™© Plan • L’accès à la console • Comptes de service • Les identifiants • La configuration
  • 23. 27/02/2016 23 Formation Android 6, niveau Expert alphorm.com™© L’accès à la console • Url : https://console.developers.google.com • Gérer les projets • Associer les APIs google
  • 24. 27/02/2016 24 Formation Android 6, niveau Expert alphorm.com™© Comptes de service • Les comptes de service permettent d’identifier les utilisateurs autorisés à modifier les projets
  • 25. 27/02/2016 25 Formation Android 6, niveau Expert alphorm.com™© Les identifiants • Pour donner accès aux services google Identifier votre appli Demander une autorisation Accéder au Cloud
  • 26. 27/02/2016 3 Formation Android 6, niveau Expert alphorm.com™© Présentation du formateur • Fabien Brissonneau • Email : fabien.brissonneau@gmail.com • Consultant Concepteur et Formateur • Missions d’architecture, de conception , de réalisation logicielles • Fondateur de eiXa6 • Actuellement en mission sur un projet de gestion • Mes références : Mon profil Viadeo : http://fr.viadeo.com/fr/profile/fabien.brissonneau Mon profil LinkedIn : http://fr.linkedin.com/pub/fabien-brissonneau/65/902/92a/
  • 27. 27/02/2016 27 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • L’accès à la console • Comptes de service • Les identifiants • La configuration
  • 28. 27/02/2016 28 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Location Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 29. 27/02/2016 29 Formation Android 6, niveau Expert alphorm.com™© Plan • Package et classes • La dernière localisation connue • Suivre la localisation • Trouver une adresse • La détection de zones
  • 30. 27/02/2016 30 Formation Android 6, niveau Expert alphorm.com™© Package et classes • Package com.google.android.gms.location • Location • FusedLocationApi • LocationRequest • LocationListener • GeoCoder • GeoFence • Et ne pas oublier les permissions dans AndroidManifest.xml
  • 31. 27/02/2016 31 Formation Android 6, niveau Expert alphorm.com™© La dernière localisation connue • Le proxy • La localisation
  • 32. 27/02/2016 32 Formation Android 6, niveau Expert alphorm.com™© Suivre la localisation • Utiliser un LocationListener • Abonner • Implémenter
  • 33. 27/02/2016 33 Formation Android 6, niveau Expert alphorm.com™© Trouver une adresse • Geocoder retrouve une adresse à partir de ses cordonnées • Les accès sont longs, donc penser à des appels asynchrones • Il faut aussi que la recherche continue même si l’application est arrêtée
  • 34. 27/02/2016 34 Formation Android 6, niveau Expert alphorm.com™© La détection de zones • Créer des objets Geofence • Utiliser Geofence.Builder • Passer la liste des Geofence à une GeofenceRequest • Les transitions déclencheront l’Intent enregistré GEOFENCE_TRANSITION_EXIT GEOFENCE_TRANSITION_ENTER GEOFENCE_TRANSITION_DWELL
  • 35. 27/02/2016 35 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Package et classes • La dernière localisation connue • Suivre la localisation • Trouver une adresse • La détection de zones
  • 36. 27/02/2016 36 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google SignIn Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 37. 27/02/2016 37 Formation Android 6, niveau Expert alphorm.com™© Plan • Mise en place du projet • Démarrer Google SignIn • Exploiter Google SignIn • Récupérer les informations
  • 38. 27/02/2016 38 Formation Android 6, niveau Expert alphorm.com™© Mise en place du projet • Récupérer le hash SHA1 du certificat que vous utilisez pour signer votre projet • Utiliser Google Developer Console Fournir le nom du projet, le package et le hash Générer le fichier de configuration Copier le fichier de configuration • Répertoire /app • Attention à la compatibilité entre versions
  • 39. 27/02/2016 39 Formation Android 6, niveau Expert alphorm.com™© Démarrer Google SignIn • La méthode concernée est onCreate • Spécifier les options d’accès aux infos de l’utilisateur Avec : GoogleSignInOptions Infos de base : DEFAULT_SIGN_IN La méthode requestEmail permet la récupération de l’email La méthode requestScopes permet l’accès aux Google Apis • Créer le GoogleApiClient nécessaire com.google.android.gms.auth.api.signin.GoogleSignInOptions
  • 40. 27/02/2016 40 Formation Android 6, niveau Expert alphorm.com™© Exploiter Google SignIn • Utilisez un bouton de type SignInButton • Réagir sur le clic bouton • Démarrer l’activité pour engager le SignIn
  • 41. 27/02/2016 41 Formation Android 6, niveau Expert alphorm.com™© Récupérer les informations • Le nom de l’utilisateur
  • 42. 27/02/2016 42 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Mise en place du projet • Démarrer Google SignIn • Exploiter Google SignIn • Récupérer les informations
  • 43. 27/02/2016 43 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google Fit Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 44. 27/02/2016 44 Formation Android 6, niveau Expert alphorm.com™© Plan • Généralités • Les senseurs • L’enregistrement • L’historique • Les sessions
  • 45. 27/02/2016 45 Formation Android 6, niveau Expert alphorm.com™© Généralités • Google Fit est composées de plusieurs APIs Les senseurs : accès aux capteurs du mobile et des wearables L’enregistrement : enregistrement automatique des données L’historique : accès aux historiques de données Les sessions : gestion des intervalles de temps La gestion du Bluetooth Low Energy : gestion des périphériques BLE • Google Fit doit être activée
  • 46. 27/02/2016 46 Formation Android 6, niveau Expert alphorm.com™© Activation de Google Fit • Il faut utiliser la console développeur Nécessite un compte google • Activer Google Fit • Créer un identifiant client OAuth 2.0 • Enregistrer le certificat public
  • 47. 27/02/2016 47 Formation Android 6, niveau Expert alphorm.com™© Les senseurs • Fonctionnalités : Lister les sources de données disponibles Abonner des observateurs aux capteurs Désabonner • Les données lues ne sont pas enregistrées • Ne persistent pas
  • 48. 27/02/2016 48 Formation Android 6, niveau Expert alphorm.com™© L’enregistrement • Permet d’enregistrer automatiquement des données des capteurs • Une souscription correspond à une application, une source de données, un type de données • Les enregistrements sont réalisés même lorsque l’application est arrêtée • Ces données alimentent l’historique
  • 49. 27/02/2016 49 Formation Android 6, niveau Expert alphorm.com™© L’historique • Pour visualiser et traiter des données enregistrées préalablement • Pour importer des données • Pour supprimer des données
  • 50. 27/02/2016 50 Formation Android 6, niveau Expert alphorm.com™© Les sessions • Une session est un intervalle de temps dans lequel sont enregistrés des données • Une session peut être temps réel ou bien créée a posteriori
  • 51. 27/02/2016 51 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Généralités • Les senseurs • L’enregistrement • L’historique • Les sessions
  • 52. 27/02/2016 52 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google Analytics Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 53. 27/02/2016 53 Formation Android 6, niveau Expert alphorm.com™© Plan • Créer le projet • Suivre l’utilisateur • Consulter les résultats • Autres indicateurs
  • 54. 27/02/2016 54 Formation Android 6, niveau Expert alphorm.com™© Créer le projet • Modifier le AndroidManifest.xml, afin d’introduire les permissions INTERNET et ACCESS_NETWORK_STATE • Modifier le script Gradle niveau projet afin d’utiliser google-services et le plugin google • Modifier le script Gradle niveau application afin d’ajouter la dépendance de compilation vers google-services • Récupérer un fichier de configuration json utilisé par le plugin
  • 55. 27/02/2016 55 Formation Android 6, niveau Expert alphorm.com™© Suivre l’utilisateur • Le suivi de base décrit ici concerne le suivi des écrans que l’utilisateur va parcourir • Modifier l’Application pour fournir un accès au « tracker » Dériver la classe Application • Pour chaque activité, créer un accès au « tracker » Méthode onCreate • Invoquer le « tracker » lorsque la page change Méthode onResume
  • 56. 27/02/2016 56 Formation Android 6, niveau Expert alphorm.com™© Consulter les résultats • Accéder au site : https://www.google.com/analytics/web • Nécessite de se créer un compte, et des codes de suivi • Obtention des rapports
  • 57. 27/02/2016 57 Formation Android 6, niveau Expert alphorm.com™© Autres indicateurs • Connaître quel lien a mené au chargement de l’application • Suivre les exceptions gérées ou non • Créer ses propres indicateurs, relevés par Google Analytics • Connaître les publicités utilisées • Mesures des actions liées au e-commerce • Suivre les événements liés aux actions de l’utilisateur • Gestion de sessions pour regrouper les métriques • Interactions avec les réseaux sociaux (quel réseau, quelle action…) • Mesure du temps (pour charger une ressource…) • Identifier l’utilisateur à travers plusieurs applications
  • 58. 27/02/2016 58 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Créer le projet • Suivre l’utilisateur • Consulter les résultats • Autres indicateurs
  • 59. 27/02/2016 59 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google+ Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 60. 27/02/2016 60 Formation Android 6, niveau Expert alphorm.com™© Plan • Ajouter Google SignIn • Activer Google+ API • Créer des posts • Gérer les applications • Récupérer des informations sur les utilisateurs
  • 61. 27/02/2016 61 Formation Android 6, niveau Expert alphorm.com™© Ajouter Google SignIn • Récupérer le hash SHA1 du certificat que vous utilisez pour signer votre projet • Utiliser Google Developer Console Fournir le nom du projet, le package et le hash Générer le fichier de configuration Copier le fichier de configuration • Répertoire /app • Attention à la compatibilité entre versions
  • 62. 27/02/2016 62 Formation Android 6, niveau Expert alphorm.com™© Activer Google+ • Utiliser la console développeurs
  • 63. 27/02/2016 63 Formation Android 6, niveau Expert alphorm.com™© Créer des posts • Utiliser PlusShare
  • 64. 27/02/2016 64 Formation Android 6, niveau Expert alphorm.com™© Gérer les applications • Ecrire une activité d’application Inscrire que l’utilisateur fait usage d’une application Utiliser MomentsApi • Lister les activités d’applications • Supprimer une activité
  • 65. 27/02/2016 65 Formation Android 6, niveau Expert alphorm.com™© Récupérer des informations • Récupérer la liste des personnes du cercle de l’utilisateur Plus.PeopleApi • Récupérer des informations de profil • Récupérer email et adresse Attention aux permissions Plus.AccountApi
  • 66. 27/02/2016 66 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Ajouter Google SignIn • Activer Google+ API • Créer des posts • Gérer les applications • Récupérer des informations sur les utilisateurs
  • 67. 27/02/2016 67 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google Maps Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 68. 27/02/2016 68 Formation Android 6, niveau Expert alphorm.com™© Plan • Obtenir une clé • MapsActivity • L’objet Map
  • 69. 27/02/2016 69 Formation Android 6, niveau Expert alphorm.com™© Obtenir une clé • Récupérer une clé d’accès auprès de Google
  • 70. 27/02/2016 70 Formation Android 6, niveau Expert alphorm.com™© MapsActivity • Activité préparée pour accueillir une carte • Méthode onCreate pour déclencher le chargement asynchrone • Traiter la carte lorsqu’on la récupère
  • 71. 27/02/2016 71 Formation Android 6, niveau Expert alphorm.com™© L’objet Map • La classe GoogleMap • Connexion aux services de cartes • Chargement des tuiles • Affichage des titres • Contrôles supplémentaires • Réponse standard zoom
  • 72. 27/02/2016 72 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Obtenir une clé • MapsActivity • L’objet Map
  • 73. 27/02/2016 73 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google Drive Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 74. 27/02/2016 74 Formation Android 6, niveau Expert alphorm.com™© Plan • Enregistrer un certificat • Accéder à Google Drive • Exemples d’opérations
  • 75. 27/02/2016 75 Formation Android 6, niveau Expert alphorm.com™© Enregistrer un certificat • Utilisation de google play services sdk • Sur la console developer https://console.developers.google.com/flows/enableapi?apiid=drive&credent ial=client_key • Le certificat Oauth 2.0 est nécessaire • Pour des niveaux d’accès autres que drive.file et drive.appfolder, il faut utiliser l’API REST
  • 76. 27/02/2016 76 Formation Android 6, niveau Expert alphorm.com™© Accéder à Google Drive • Créer un client (proxy) pour accéder aux services • Gérer les connexions et déconnexions
  • 77. 27/02/2016 77 Formation Android 6, niveau Expert alphorm.com™© Exemples d’opérations • Lire des fichiers, répertoires… • Créer des fichiers, des répertoires • Faire des recherche de fichiers… • Supprimer fichiers et répertoires • Etre à l’écoute des modifications
  • 78. 27/02/2016 78 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Installation du projet • Enregistrer un certificat • Accéder à Google Drive • Exemples d’opérations
  • 79. 27/02/2016 79 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google Mobile Ads Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 80. 27/02/2016 80 Formation Android 6, niveau Expert alphorm.com™© Plan • Déclarer les permissions • Les identifiants de publicité • Insérer une vue publicitaire
  • 81. 27/02/2016 81 Formation Android 6, niveau Expert alphorm.com™© Déclarer les permissions • Modifier le AndroidManifest.xml le cas échéant • Modifier le script Gradle du module pour ajouter la dépendance vers les services Google, spécialement ads
  • 82. 27/02/2016 82 Formation Android 6, niveau Expert alphorm.com™© Les identifiants • Créer un bloc d’annonce et suivant les instructions • Le lien https://support.google.com/admob/answer/3052638
  • 83. 27/02/2016 4 Formation Android 6, niveau Expert alphorm.com™© Mes formations sur alphorm
  • 84. 27/02/2016 4 Formation Android 6, niveau Expert alphorm.com™© Mes formations sur alphorm
  • 85. 27/02/2016 85 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Déclarer les permissions • Les identifiants de publicité • Insérer une vue publicitaire
  • 86. 27/02/2016 86 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google Pay Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 87. 27/02/2016 87 Formation Android 6, niveau Expert alphorm.com™© Plan • Obtenir l’identifiant client Oauth 2.0 • La classe WalletFragment • La clé à fournir
  • 88. 27/02/2016 88 Formation Android 6, niveau Expert alphorm.com™© Obtenir l’identifiant Oauth 2.0 • Enregistrer l’application et obtenir un certificat • Permet de s’authentifier tout en demandant l’autorisation auprès de l’utilisateur proprétaire
  • 89. 27/02/2016 89 Formation Android 6, niveau Expert alphorm.com™© La classe WalletFragment • Prise en charge du flux d’achat • Les acheteurs permettent aux vendeurs d’accéder à leurs infos de paiement • L’application récupère un objet MaskedWallet : carte bancaire partielle, infos adresses… • Puis requête de FullWallet : toutes les infos nécessaires pour valider le paiement
  • 90. 27/02/2016 90 Formation Android 6, niveau Expert alphorm.com™© La clé publique à fournir • Format Elliptic Curve Integrated • Utiliser OpenSSL pour l’obtenir
  • 91. 27/02/2016 91 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Obtenir l’identifiant client Oauth 2.0 • La classe WalletFragment • La clé publique à fournir
  • 92. 27/02/2016 92 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Google Wear Google Play Services Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 93. 27/02/2016 93 Formation Android 6, niveau Expert alphorm.com™© Plan • Packages et classes • MessageApi • Data Layer Api
  • 94. 27/02/2016 94 Formation Android 6, niveau Expert alphorm.com™© Package et classes • CapabilityApi : propose une API pour découvre les possibilités des wearables • DataApi : propose une API pour gérer les accès aux données • MessageApi : propose une API pour envoyer des messages • NodeApi : propose une API pour parcourir et découvrir les nœuds des wearables
  • 95. 27/02/2016 95 Formation Android 6, niveau Expert alphorm.com™© MessageApi • Obtenir une connexion • Savoir où envoyer ce message • Envoyer le message • Il est possible de recevoir les messages
  • 96. 27/02/2016 96 Formation Android 6, niveau Expert alphorm.com™© DataLayer Api • Obtention d’une connexion • Objectif de synchronisation de données entre mobile et wearable • Créer un objet de type PutDataRequest • Ou mieux PuDataMapRequest, paires clés –valeurs Sérialisation simple et efficace
  • 97. 27/02/2016 5 Formation Android 6, niveau Expert alphorm.com™© Pourquoi Android Expert ? • Android est une plateforme vaste • De nombreux usages, de nombreuses APIs • Nous centrons notre formation sur des aspects exotiques • L’usage du C pour créer des applications • Les besoins en performances • Les objets connectés
  • 98. 27/02/2016 5 Formation Android 6, niveau Expert alphorm.com™© Pourquoi Android Expert ? • Android est une plateforme vaste • De nombreux usages, de nombreuses APIs • Nous centrons notre formation sur des aspects exotiques • L’usage du C pour créer des applications • Les besoins en performances • Les objets connectés
  • 99. 27/02/2016 5 Formation Android 6, niveau Expert alphorm.com™© Pourquoi Android Expert ? • Android est une plateforme vaste • De nombreux usages, de nombreuses APIs • Nous centrons notre formation sur des aspects exotiques • L’usage du C pour créer des applications • Les besoins en performances • Les objets connectés
  • 100. 27/02/2016 5 Formation Android 6, niveau Expert alphorm.com™© Pourquoi Android Expert ? • Android est une plateforme vaste • De nombreux usages, de nombreuses APIs • Nous centrons notre formation sur des aspects exotiques • L’usage du C pour créer des applications • Les besoins en performances • Les objets connectés
  • 101. 27/02/2016 101 Formation Android 6, niveau Expert alphorm.com™© Le contrôle WebView • Le contrôle WebView permet d’inclure un accès web dans une activité • Interface spécifique • Support normal du HTML et du Javascript • Possibilités d’interactions avec l’application locale • Nécessité de déclarer les permissions
  • 102. 27/02/2016 102 Formation Android 6, niveau Expert alphorm.com™© L’accès aux Webservices • Il est possible d’accéder aux serveur web par le protocole HTTP • Google propose une API dite REST pour ses applications
  • 103. 27/02/2016 103 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Avec le navigateur Android • Le contrôle Webview • L’accès aux webservices
  • 104. 27/02/2016 104 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Le packaging Web et Android Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 105. 27/02/2016 105 Formation Android 6, niveau Expert alphorm.com™© Plan • Le problème de la compression • Trouver une solution de déploiement • Le transfert de l’application
  • 106. 27/02/2016 106 Formation Android 6, niveau Expert alphorm.com™© Le problème de la compression • Il peut être nécessaire de compresser les infos à télécharger • Utiliser un fichier jar • L’outil yuicompressor permet de compresser les js
  • 107. 27/02/2016 107 Formation Android 6, niveau Expert alphorm.com™© Trouver une solution de déploiement • Combien de domaines j’obtiens ? • Quelle réactivité du support ? • Quels outils de gestion ? • Que se passe-t-il quand je dépasse mes plans ? • Y a-t-il un accès CRON ?
  • 108. 27/02/2016 108 Formation Android 6, niveau Expert alphorm.com™© Le transfert de l’application • Réalisée en général via FTP • Besoin de transfert sécurisé, SFTP • L’outil Filezilla par exemple
  • 109. 27/02/2016 109 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Le problème de la compression • Trouver une solution de déploiement • Le transfert de l’application
  • 110. 27/02/2016 110 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Les résolutions Web et Android Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 111. 27/02/2016 111 Formation Android 6, niveau Expert alphorm.com™© Plan • Le problème des résolutions • La solution avec CSS
  • 112. 27/02/2016 112 Formation Android 6, niveau Expert alphorm.com™© Le problème des résolutions • Les résolutions sont très différentes d’un appareil à l’autre • Sans compter les ordinateurs de bureau
  • 113. 27/02/2016 113 Formation Android 6, niveau Expert alphorm.com™© La solution avec CSS • Réorganiser les pages en fonctions de la résolution • Les javascript media queries
  • 114. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 115. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 116. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 117. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 118. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 119. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 120. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 121. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 122. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 123. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 124. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 125. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 126. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 127. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 128. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 129. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 130. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 131. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 132. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 133. 27/02/2016 6 Formation Android 6, niveau Expert alphorm.com™© Le plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 134. 27/02/2016 134 Formation Android 6, niveau Expert alphorm.com™© Accéder à une collection d’élements • Faire une requête avec GET en fournissant l’URI • Penser à l’asynchrone …
  • 135. 27/02/2016 135 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Principe • Créer un élément par REST • Accéder à une collection d’éléments
  • 136. 27/02/2016 136 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Webservice REST et JSON Web et Android Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 137. 27/02/2016 137 Formation Android 6, niveau Expert alphorm.com™© Plan • Le format JSON • Créer un élément par REST • Accéder à une collection d’éléments
  • 138. 27/02/2016 138 Formation Android 6, niveau Expert alphorm.com™© Le format JSON • JavaScript Object Notation • Format d’échange standard
  • 139. 27/02/2016 139 Formation Android 6, niveau Expert alphorm.com™© Les méthodes • L’application android utilise les méthodes : GET pour récupérer POST pour créer PUT pour modifier DELETE pour supprimer • Les autres méthodes peuvent avoir d’autres usages • Pas de gestion d’états sur le serveur
  • 140. 27/02/2016 140 Formation Android 6, niveau Expert alphorm.com™© Créer un élément par REST • Faire un accès avec POST
  • 141. 27/02/2016 141 Formation Android 6, niveau Expert alphorm.com™© Accéder à une collection d’élements • Faire une requête avec GET en fournissant l’URI • Désérialiser
  • 142. 27/02/2016 142 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Le format JSON • Créer un élément par REST • Accéder à une collection d’éléments
  • 143. 27/02/2016 143 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Création packaging Android natif Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 144. 27/02/2016 144 Formation Android 6, niveau Expert alphorm.com™© Plan • Le NDK dans Android Studio • Le projet et Gradle • Intégrer du C
  • 145. 27/02/2016 145 Formation Android 6, niveau Expert alphorm.com™© Le NDK dans Android Studio • Sur le projet en cours … Open Module Settings -> SDK Location
  • 146. 27/02/2016 146 Formation Android 6, niveau Expert alphorm.com™© Le projet et Gradle • Modifier la version de Gradle • Adapter le script
  • 147. 27/02/2016 7 Formation Android 6, niveau Expert alphorm.com™© Publics concernés • Cette formation s’adresse à des développeurs • Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe • La connaissance du C ou C++ est souhaitable • Nous ne reviendrons pas sur les concepts des langages
  • 148. 27/02/2016 7 Formation Android 6, niveau Expert alphorm.com™© Publics concernés • Cette formation s’adresse à des développeurs • Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe • La connaissance du C ou C++ est souhaitable • Nous ne reviendrons pas sur les concepts des langages
  • 149. 27/02/2016 7 Formation Android 6, niveau Expert alphorm.com™© Publics concernés • Cette formation s’adresse à des développeurs • Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe • La connaissance du C ou C++ est souhaitable • Nous ne reviendrons pas sur les concepts des langages
  • 150. 27/02/2016 7 Formation Android 6, niveau Expert alphorm.com™© Publics concernés • Cette formation s’adresse à des développeurs • Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe • La connaissance du C ou C++ est souhaitable • Nous ne reviendrons pas sur les concepts des langages
  • 151. 27/02/2016 7 Formation Android 6, niveau Expert alphorm.com™© Publics concernés • Cette formation s’adresse à des développeurs • Connaître Java est nécessaire, ne pas être dérouté par sa syntaxe • La connaissance du C ou C++ est souhaitable • Nous ne reviendrons pas sur les concepts des langages
  • 152. 27/02/2016 152 Formation Android 6, niveau Expert alphorm.com™© Les types de données • Gérer la correspondance entre types Java et C
  • 153. 27/02/2016 153 Formation Android 6, niveau Expert alphorm.com™© Le contenu du NDK • Un ensemble d’outils pour encapsuler du C et C++ dans vos applications • Un outil pour charger, compiler : ndk-build • Les bibliothèques natives partagées ou statiques • Un outil de debug • Un manifest pour déclarer les dépendances
  • 154. 27/02/2016 154 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Appeler du C à partir de Java • Les types de données • Le contenu du NDK
  • 155. 27/02/2016 155 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Découverte Renderscript Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 156. 27/02/2016 156 Formation Android 6, niveau Expert alphorm.com™© Plan • Présentation • Créer le script • Initialiser le script • Intégrer le script dans une vue
  • 157. 27/02/2016 157 Formation Android 6, niveau Expert alphorm.com™© Présentation • Renderscript est un langage de script à haute performance Syntaxe du C99 • Orienté rendu graphique et calculs rapides • Sera compilé en code natif plus tard par le système • Dispose d’une API
  • 158. 27/02/2016 158 Formation Android 6, niveau Expert alphorm.com™© Créer le script • Il faut écrire un « kernel », fichier de script qui doit être placé sous src • Peut contenir : Des fonctions qui seront invoquées Des variables globales Des fonctions parallèles (sur itération dans des Allocations) Eventuellement une fonction init(), invoquée lors du démarrage du script • Utiliser les APIs Renderscript « android.renderscript »
  • 159. 27/02/2016 159 Formation Android 6, niveau Expert alphorm.com™© Configuration • Modifier le script Gradle pour référencer Renderscipt
  • 160. 27/02/2016 160 Formation Android 6, niveau Expert alphorm.com™© Primitives • Des primitives sont disponibles sous la forme de ScriptIntrinsics • Grosses économies de temps
  • 161. 27/02/2016 161 Formation Android 6, niveau Expert alphorm.com™© Initialiser le script • Créer un objet RenderScript : contexte d’utilisation des scripts, unique dans l’application • Créer d’Allocation : mémoire en entrée et en sortie, utilisée par le script Créée par createFromBitmap et createTyped • et instancier le script généré Script_<nom> • Fournir les données via des setter
  • 162. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 163. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 164. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 165. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 166. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 167. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 168. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 169. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 170. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 171. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 172. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 173. 27/02/2016 8 Formation Android 6, niveau Expert alphorm.com™© Prérequis de la formation • Savoir lire du code Java • Avoir des rudiments sur les interfaces graphiques • Avoir des notions de pointeurs • Et … du courage comme toujours !
  • 174. 27/02/2016 174 Formation Android 6, niveau Expert alphorm.com™© Notification avec action • Prévoir un Intent pour représenter l’action à déclencher • Utiliser setContentIntent pour positionner l’Intent sur la notification • Pour lancer des activités sur le Wearable, il faut positionner l’action sur WearableExtender
  • 175. 27/02/2016 175 Formation Android 6, niveau Expert alphorm.com™© Les notifications multipages • Préparer une liste de notifications • Créer un WearableExtender • Positionner ce WearableExtender sur la notification réelle
  • 176. 27/02/2016 176 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Les classes pour la notification • Les textes longs • Notification avec action • Les notifications multipages
  • 177. 27/02/2016 177 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Utiliser les capteurs Google Wear Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 178. 27/02/2016 178 Formation Android 6, niveau Expert alphorm.com™© Plan • La configuration du projet • Les capteurs • La capture du pouls • Répondre aux événements
  • 179. 27/02/2016 179 Formation Android 6, niveau Expert alphorm.com™© La configuration du projet • Le manifest doit comporter les permissions • Accéder au gestionnaire SensorManager • Accéder au capteur que l’on souhaite utiliser
  • 180. 27/02/2016 180 Formation Android 6, niveau Expert alphorm.com™© Les capteurs
  • 181. 27/02/2016 181 Formation Android 6, niveau Expert alphorm.com™© La capture du pouls • Enregistrer le listener
  • 182. 27/02/2016 182 Formation Android 6, niveau Expert alphorm.com™© Répondre aux événements • Implémenter onSensorChanged • SensorEvent en paramètre
  • 183. 27/02/2016 183 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • La configuration du projet • Les capteurs • La capture du pouls • Répondre aux événements
  • 184. 27/02/2016 184 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Gérer la voix Google Wear Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 185. 27/02/2016 185 Formation Android 6, niveau Expert alphorm.com™© Plan • Utiliser les événements voix prédéfinis • La classe RemoteInput • Usage du BroadcastReceiver
  • 186. 27/02/2016 186 Formation Android 6, niveau Expert alphorm.com™© Les événements voix prédéfinis • Les événements voix sont déjà identifiés • Possible de faire répondre votre application
  • 187. 27/02/2016 187 Formation Android 6, niveau Expert alphorm.com™© La classe RemoteInput • Pour récupérer une entrée vocale de l’utilisateur • Va lancer une PendingIntent, qui contient (l’Intent qui contient) les entrées de l’utilisateur
  • 188. 27/02/2016 188 Formation Android 6, niveau Expert alphorm.com™© Usage du BroadcastReceiver • Un BroadcastReceiver permet de récupérer sur le mobile la réponse • Il doit être enregistré
  • 189. 27/02/2016 189 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Utiliser les événements voix prédéfinis • La classe RemoteInput • Usage du BroadCastReceiver
  • 190. 27/02/2016 190 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Gérer la communication Google Wear Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 191. 27/02/2016 191 Formation Android 6, niveau Expert alphorm.com™© Plan • Emettre des données vers le wearable • Sur le wearable
  • 192. 27/02/2016 192 Formation Android 6, niveau Expert alphorm.com™© Emettre des données vers le wearable • PutDataMapRequest permet d’accéder aux données partagées • Identifier la zone de données • L’écoute se fait sur un WearableListenerService
  • 193. 27/02/2016 9 Formation Android 6, niveau Expert alphorm.com™© Les outils nécessaires • L’IDE principal est Android Studio 1.5.x • Nous utilisons aussi Android Studio 2.0 • La présentation sera faite sous Windows 10
  • 194. 27/02/2016 194 Formation Android 6, niveau Expert alphorm.com™© Ce qu’on a couvert • Emettre des données vers le wearable • Sur le wearable
  • 195. 27/02/2016 195 Formation Android 6, niveau Expert alphorm.com™© Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Conclusion Android expert Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels
  • 196. 27/02/2016 196 Formation Android 6, niveau Expert alphorm.com™© Plan de la formation • Les services Google Play Services • Les applications Web et Android • Android Natif, introduction à NDK • RenderScript • Google Wear
  • 197. 27/02/2016 197 Formation Android 6, niveau Expert alphorm.com™© Les autres formations dév sur Alphorm
  • 198. 27/02/2016 198 Formation Android 6, niveau Expert alphorm.com™© Pour continuer … • La formation Java fondamentaux … • La formation Java avancée … • La formation Android …
  • 199. 27/02/2016 199 Formation Android 6, niveau Expert alphorm.com™© Merci d’avoir suivi cette formation, rendez-vous pour la suite !