Vous êtes sur la page 1sur 160

WinDev 19 Mobile, Android

Présentation de la formation

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• La présentation du formateur

• Le cursus des formations

• Le plan de formation

• Le public concernés

• Les pré-requis

WinDev Mobile 19, android alphorm.com™©


Présentation du formateur
• Nicolas UNGERN-STERNBERG

• Gérant de la société Informatique des 2 caps

• Chef de projet, expert sur les technologies PC SOFT

• Consultant et formateur indépendant

• Mes références :
Mon profil LinkedIn : http://lnkd.in/jFZV_n
Site de l’entreprise : http://www.informatiquedes2caps.com
Mon profil Alphorm : http://www.alphorm.com/auteur/nungernsternberg

WinDev Mobile 19, android alphorm.com™©


Mes formations sur Alphorm
WinDev 19, les fondamentaux
Cette formation permet d'acquérir les concepts ainsi que les
connaissances techniques nécessaires au développement d’applications
avec l’atelier de génie logiciel (AGL) WinDev 19.

Vous y découvrirez tous les aspects nécessaires à la réalisation de vos


projets : Les différents outils de l’AGL, les principaux éditeurs, la
définition d'une base de données, la création des fenêtres, l'édition de
documents… jusqu'à la procédure d'installation.

Cette formation se veut très pragmatique, par la réalisation d'une


application de gestion de contact et critique, en confrontant les
avantages et inconvénients du produit.

Lien vers la formation sur le site Alphorm.com

WinDev Mobile 19, android alphorm.com™©


Cursus A.G.L. PCSOFT
mobile
Les Les Le gestionnaire de
fondamentaux fondamentaux Android
code source

Avancé Avancé IOS / Apple Base HFSQL

Confirmé Expert Windows CE


mobile

Expert

Les nouveautés
de la version 20

WinDev Mobile 19, android alphorm.com™©


Le plan de formation
Création d’un logiciel pour gérer son budget
Le projet « Gérer Mon Budget » Les widgets
Le champ carte
La configuration et la compilation Le champ publicité
Configurer l'environnement Le champ caméra
La compilation
Dans les entrailles de la compilation La programmation
Les règles de programmation sous Android
La base de données La gestion multi-plateformes
SQLite Simuler, émuler, tester
HFSQL Locale et C/S Les notifications
Réplication entre 2 bases HFSQL Envoyer des SMS et des email
Accès à une base via un webservice Gérer les coordonnées GPS
Scanner des codes-barres
L'interface homme-machine L’achat In-App
Les ancrages Insérer du code Java
Le champ zone répétée
Le champ Action Bar Le déploiement
Le champ graphe Installation sur le téléphone ou la tablette Android
Les fenêtres coulissantes Google play
La gesture Mise à disposition sur un serveur Web
Les capteurs

WinDev Mobile 19, android alphorm.com™©


Publics concernés
Tous les développeurs souhaitant développer sur Android
Les décideurs ayant des projets en mobilité
Tous les chefs et directeurs de projets

WinDev Mobile 19, android alphorm.com™©


Connaissances requises
• Avoir suivi la formation « WinDev 19, les fondamentaux »

• De bonnes notions en développement informatique

WinDev Mobile 19, android alphorm.com™©


Les autres formations développement sur alphorm

WinDev Mobile 19, android alphorm.com™©


Android avec WinDev Mobile 19

WinDev Mobile 19, android alphorm.com™©


Présentation de la formation
Présentation du projet
"Gérer Mon Budget"

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• L’objectif du projet

• Les fonctionnalités

• La base de données

WinDev Mobile 19, android alphorm.com™©


Les objectifs
• Cas pratique

• Utilisable au quotidien

• Rendre la formation plus concrète

• Permettre d’appliquer les éléments de la formation

WinDev Mobile 19, android alphorm.com™©


Les fonctionnalités
« Gérer son budget en suivant ses comptes »
Gestion des comptes bancaires
• Fiche d’un compte, liste des comptes
Gestion des mouvements bancaires
• Création d’un débit (dépense), d’un crédit (revenu)
Calcul des soldes et statistiques
Gestion du paramétrage
• Catégories, options

WinDev Mobile 19, android alphorm.com™©


La base de données

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• La présentation de notre projet « Gérer Mon Budget » qui va nous
suivre tout au long de la formation

WinDev Mobile 19, android alphorm.com™©


La configuration et la compilation
Configurer l’environnement

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Installation du SDK Android de Google

• Installation du JDK

WinDev Mobile 19, android alphorm.com™©


SDK Android
http://developer.android.com/sdk/index.html
SDK en version >= 1.5
Installer la version 32 bits (même sur un système 64 bits)
Sdk-tool en version 21 : Optimisation de la compilation

WinDev Mobile 19, android alphorm.com™©


JDK
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Pour compiler les fichiers Java générés
JDK en version >= 5

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’installation des dépendances pour développer une application
Android

WinDev Mobile 19, android alphorm.com™©


La configuration et la compilation
La compilation

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Création du projet « Gérer Mon Budget »
La configuration, la détection automatique

• Les options de compilation


Les bibliothèques HFSQL
Les permissions
L’emplacement du programme

WinDev Mobile 19, android alphorm.com™©


Création du projet Android

WinDev Mobile 19, android alphorm.com™©


La compilation

WinDev Mobile 19, android alphorm.com™©


Permissions de l’application
Lors de la génération, Windev mobile détermine automatiquement les permissions nécessaires en fonction
du code et des champs utilisés

Extraits des permissions (plus d’une 100ènes) :

ACCESS_WIFI_STATE Permet aux applications d'accéder à des informations concernant les réseaux Wi-Fi.
ACCOUNT_MANAGER Permet aux applications d'appeler AccountAuthenticators.
AUTHENTICATE_ACCOUNTS Permet à une application d'agir en tant que AccountAuthenticator pour AccountManager.
BATTERY_STATS Permet à une application de collecter des statistiques concernant l'alimentation.
BLUETOOTH Permet aux applications de se connecter à des services bluetooth appariés
BLUETOOTH_ADMIN Permet aux applications de découvrir et d'apparier des périphériques bluetooth.

SIGNAL_PERSISTENT_PROCESSES Permet à une application de demander qu'un signal soit envoyé à tous les processus persistants.
STATUS_BAR Permet à une application d'ouvrir, de fermer ou de désactiver la barre d'état et ses icônes.
USE_SIP Permet à une application d'utiliser un service SIP.
VIBRATE Permet d'accéder à la fonction vibreur.
WRITE_APN_SETTINGS Permet aux applications d'écrire les paramètres apn.
WRITE_CALENDAR Permet à une application d'écrire (sans lire) les données du calendrier de l'utilisateur.
WRITE_CONTACTS Permet à une application d'écrire (sans lire) les données des contacts de l'utilisateur..
WRITE_GSERVICES Permet à une application de modifier le service de localisation Google.

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• La création d’un projet mobile pour Android

• La compilation du projet

WinDev Mobile 19, android alphorm.com™©


La configuration et la compilation

Dans les entrailles


de la compilation

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Comprendre le passage du Wlangage au Java

• Le Framework Android de PCSOFT

WinDev Mobile 19, android alphorm.com™©


La génération du java

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• La compréhension de la génération d’un projet Android avec WinDev
mobile

WinDev Mobile 19, android alphorm.com™©


La base de données
SQLite

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Qu’est-ce que SQLite ?

• SQLite avec WinDev Mobile

WinDev Mobile 19, android alphorm.com™©


SQLite
SQLite est un système de "base de données embarquée » open source

• Moteur léger (<300 Ko) et facile à mettre en place

• Pour smartphone, application Windows, ou un serveur web.

• Plus simple et plus rapide qu'une base XML ou binaire

• La base est un fichier unique (En général .db)

• Version 3 : Auto-incrément, clés étrangère

• Site Officiel : https://www.sqlite.org

• SQLite2009 pro : http://osenxpsuite.net/download.htm

• Outils SQLite sur Google play

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’utilisation d’une base SQLite avec windev mobile

WinDev Mobile 19, android alphorm.com™©


La base de données
HFSQL Locale et C/S

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Utilisation d’une base HFSQL
Gestion des pertes de connexion

• Limitations

• Modélisation de la base « Mon Budget »

WinDev Mobile 19, android alphorm.com™©


HFSQL sur android

Intégrer les librairies HFSQL

Les fichiers HF sur Android

WinDev Mobile 19, android alphorm.com™©


Les limitations
• Gestion automatique des erreurs HFSQL non disponible

• HSurErreur, Hreconnecte ne sont pas non disponibles

• D’autres fonctions HF ne sont pas disponibles :


HExécuteProcédure, gestion des utilisateurs etc…

• HSQL est disponible sur les versions d’Android > 3.2

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’utilisation d’une base HFSQL sur windev mobile Android

WinDev Mobile 19, android alphorm.com™©


La base de données
Réplication entre
deux bases HFSQL

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Installation du serveur de réplication

• Définition de la réplication

• Gérer la synchronisation

WinDev Mobile 19, android alphorm.com™©


Installer le serveur de réplication
<Rep_Installation_WM19>\Install\WDServeurR\WX190PACKRSRV.exe

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• La réplication des données entre WinDev Mobile et WinDev

WinDev Mobile 19, android alphorm.com™©


La base de données
Accès à une base
via un webservice

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Installer le Webservice d'accès aux bases tierces

• Installer les fichiers nécessaires à l'accès aux bases de données

• Utiliser les fonctions SQL pour manipuler la base de données

WinDev Mobile 19, android alphorm.com™©


Installer le webservice
<Rep_Installation_WM19>\Install\WDServeurR\WX190PACKRSRV.exe

WinDev Mobile 19, android alphorm.com™©


Manipuler les données
• SQLConnecteWS pour se connecter

• Utilisez toutes les fonctions SQL du WLangage

• Les fonctions SQLBloque et SQLTransaction ne sont pas disponibles.

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’accès à n’importe quel type de base via un webservice

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Les ancrages

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• L’intérêt des ancrages

• Les différents types d’ancrages

• Les agencements

WinDev Mobile 19, android alphorm.com™©


Pourquoi des ancrages ?
• Une multitude de périphériques Android

• Téléphone, tablette

• Différentes résolutions

• Mode portrait, paysage

• La taille d’un champ est différente selon la


résolution afin de conserver l’aspect visuel

La taille de votre application doit s’adapter à la


résolution du périphérique. Les champs doivent
s’agrandir ou se réduire, la fenêtre doit suivre
l’orientation etc…

WinDev Mobile 19, android alphorm.com™©


Pourquoi des ancrages ?
Sans ancrage Avec ancrage

Portrait
vers Paysage

WinDev Mobile 19, android alphorm.com™©


Les différents types d’ancrage
• Propriété des champs

• Propriété de la fenêtre

• Par programmation
Ancrage
TauxAncrageBas
TauxAncrageDroite
TauxAncrageLargeur
TauxAncrageHauteur

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’intérêt des ancrages

• La mise en application des ancrages dans une application Android

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-Machine
Le champ zone
répétée
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les différents types de zones répétées

• La notion d’attribut

• La programmation

WinDev Mobile 19, android alphorm.com™©


Les différents types de zones répétées

• Zone répétée horizontale ou verticale

• Mémoire : Données défini par programmation

• Fichier : Données provenant d’un fichier/requête

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Les zones répétées et leurs utilisations dans notre application « Gérer
Mon Budget »

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Le champ Action Bar

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Présentation du champ et de ses possibilités

• Programmation du champ

WinDev Mobile 19, android alphorm.com™©


Le champ ActionBar

WinDev Mobile 19, android alphorm.com™©


Le champ ActionBar
• Bouton gauche
Bouton sur la barre

• Vues/Barre de thèmes
Equivalent aux onglets, cependant les champs sont créés et détruits selon le
volet actif

• Options de la barre d'outils


Affiche un menu déroulant
Options directement sur l’action barre

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’utilisation et la programmation de l’Action Bar

• La mise en pratique dans le projet « Gérer Mon Budget »

• Les équivalents avec la configuration iOS

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Le champ graphe

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les possibilités du champ pour Android

• Le binding

• La manipulation du champ par programmation

• Les fonctions graphe

WinDev Mobile 19, android alphorm.com™©


Le champ
*

*Exemple « Android Graphe » - PCSFOT © - Windev mobile 19


WinDev Mobile 19, android alphorm.com™©
Les limites pour Android
• Graphe non disponible
Les hémicycles, Les histogrammes horizontaux, Nuages de points, Radar,
Graphe boursier, Graphe Bulles, Graphe entonnoir, Graphe surface, graphe
waterfall,

• Animation 2D non disponible

• FAA non disponible


Zoom, type de graphe, export…

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’utilisation du Graphe sur windev mobile

• Les limites sur Android

• La mise en application sur le projet « Gérer Mon budget »

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Les fenêtres
coulissantes
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les fenêtres internes

• Mise en œuvre d’une fenêtre coulissante

• L’utilisation dans le code

WinDev Mobile 19, android alphorm.com™©


Les fenêtre coulissantes
Définition dans les propriété de la fenêtre Liaison avec l’action bar

Effets d’ouverture

WinDev Mobile 19, android alphorm.com™©


L’utilisation dans le code
• FenCoulissanteVisible

• MaFenêtreCoulissanteDroite , MaFenêtreCoulissanteGauche
Permet de manipuler la fenêtre coulissante depuis la fenêtre en cours

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Utilisation des fenêtres internes

• La mise en œuvre dans notre projet « Gérer Mon budget »

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
La gesture

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• La gesture : Balayage, Multi-touch

• Les champs gérant la gesture automatiquement

• La gesture par programmation

WinDev Mobile 19, android alphorm.com™©


Gesture automatique
Dans un champ image Dans un champ Zone répétée

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Utilisation de la gesture en automatique et par programmation

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Les capteurs

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les actions gérées par WinDev mobile

• Leurs utilisations par programmation

• La comparaison avec le Java natif

WinDev Mobile 19, android alphorm.com™©


Les actions gérées
• secousse

• changement d’accélération

• changement d’orientation

• orientation (boussole)

WinDev Mobile 19, android alphorm.com™©


Java natif , attention les secousses ! 1/3
Extrait du blog : http://avianey.blogspot.fr/2010/03/android-accelerometer-sensor-tutorial.html

Import des classe du framework Android, la création de la classe

WinDev Mobile 19, android alphorm.com™©


Java natif , attention les secousses ! 2/3
Démarre l’écoute des secousses

Arrête l’écoute des secousses

WinDev Mobile 19, android alphorm.com™©


Java natif , attention les secousses ! 3/3
Le listener, la méthode sur changement du senseur

WinDev Mobile 19, android alphorm.com™©


La programmation
• CapteurDétecteChangementAccélération

• CapteurDétecteChangementOrientation

• CapteurDétecteDébutSecousses

• CapteurDétecteFinSecousses

• CapteurRécupèreOrientation

• CapteurTermine

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’utilisation des capteurs sur le smartphone

• La simplicité de mise en œuvre par rapport au java natif

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Les widgets

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Qu’est ce qu’un widget ?

• Leurs utilisations

WinDev Mobile 19, android alphorm.com™©


Qu’est-ce qu’un widget ?
• Contraction entre Windows et Gadget

• Petite application sur l’écran d’accueil

• Contenu mise à jour régulièrement

• Interactions avec l’utilisateur

WinDev Mobile 19, android alphorm.com™©


Son utilisation
• EnModeWidget()
Code exécuté en Widget Android ?

• WidgetAffiche()
Forcer le rafraichissement du Widget

• WidgetLanceAppli()
Lance l’application lié au Widget

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• L’utilisation des widgets Android

• Son application dans notre exemple « Gérer Mon Budget »

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Le champ carte

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Utiliser la librairie Google Maps API v2
Installation du SDK, Clé API, clé SHA-1

• Son utilisation, sa programmation

WinDev Mobile 19, android alphorm.com™©


Google maps Android API v2

WinDev Mobile 19, android alphorm.com™©


Son utilisation, sa programmation
• CarteAffichePosition

• CarteAjouteItinéraire

• CarteAjouteMarqueur

• CarteFinDéplacement

• CarteInfoPosition

• CarteInfoXY

• CarteModifieMarqueur

• CarteRécupèrePosition

• CarteSuitDéplacement

• CarteSupprimeItinéraire

• CarteSupprimeMarqueur

• CarteSupprimeTout

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Configuration et utilisation du champ carte

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Le champ publicité

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Google AdMob

• Utiliser le champ publicité dans le projet « Gérer Mon Budget »

WinDev Mobile 19, android alphorm.com™©


Google AdMob

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Monétiser son application grâce au champ publicité

WinDev Mobile 19, android alphorm.com™©


L’interface Homme-machine
Le champ caméra

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Utiliser le champ Caméra dans le projet « Gérer Mon Budget »

• Gérer les captures

WinDev Mobile 19, android alphorm.com™©


Le champ caméra

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Utiliser le champ caméra sous Android

WinDev Mobile 19, android alphorm.com™©


La programmation
Les règles de programmation
sous Android

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les éléments non disponibles

• Les particularités

• Les limites

• La charte graphique, les polices de caractères

WinDev Mobile 19, android alphorm.com™©


Les éléments non disponibles
• Composants, état et modèle d’état

• Les champs suivants :


Table (remplacé par les zones répétés), liste d’images, combo avec table, arbre,
séparateur, ascenseur, spin, boite à outils, champ code-barres, champs ActiveX ;)

• Les propriétés des cadres des champs

• Ouvre (fenêtre modale non supporté par Android)

• Gestion du bouton d’accueil

• ThreadArrête()

WinDev Mobile 19, android alphorm.com™©


Les éléments non disponibles
Dans les propriétés : Identifiable par les zones « grisées »

Combo sous Android (WM) Combo sous windows (WD)


WinDev Mobile 19, android alphorm.com™©
Les particularités
• Requête paramétré = Tous les paramètres sont obligatoires

• Combo non vide = Sélection obligatoire

• Notification d’inactivité de l’application


Pour les calculs long , utilisation des threads

• Saisie de code Java Natif (attention aux droits)

• Le type des paramètres des fonctions est ignoré par le compilateur

• Répertoire courant = sous-répertoire « files »

• fRepExe() = /data/data/NomPackage.NomAppli

WinDev Mobile 19, android alphorm.com™©


Les limites
• Base embarquée : SQLite ou HFSQL

• Menus : 1 niveau de sous menu

• Indirection uniquement sur les variables globales

• Système de fichier en lecture seule (sauf répertoire de l’appli et SDCard)

WinDev Mobile 19, android alphorm.com™©


La charte graphique, les polices

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Les particularités pour développer sur Android avec WinDev mobile

WinDev Mobile 19, android alphorm.com™©


La programmation
La gestion
multi-plateformes
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Le code cible conditionnel

• Les configurations

• Mes conseils

WinDev Mobile 19, android alphorm.com™©


Le code cible conditionnel

WinDev Mobile 19, android alphorm.com™©


Les configurations

• Une configuration par


plateforme
• Inclure/Exclure des
éléments selon la
configuration

WinDev Mobile 19, android alphorm.com™©


Mes conseils
• Natif ou Web ?

• Partir du développement IOS

• Créer une couche de classes multiplateforme

• Plateforme de dev pour les jeux

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Le développement multiplateforme avec WinDev mobile

WinDev Mobile 19, android alphorm.com™©


La programmation
Simuler, émuler
et tester
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Emuler ou simuler ? That is the question…

• Le simulateur sur WinDev mobile

• L’émulateur par AVD Manager

• L’émulateur via Genymotion

• Rappels sur le debugger

WinDev Mobile 19, android alphorm.com™©


Emuler avec AVD

WinDev Mobile 19, android alphorm.com™©


Emuler avec Genymotion

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
Les différentes possibilités de tester des applications Android

WinDev Mobile 19, android alphorm.com™©


La programmation
Les notifications

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Dans la barre système

• Les vibrations

• Les Leds

• Les messages furtifs (Toast)

• La notification push

WinDev Mobile 19, android alphorm.com™©


Notification Push

Envoi du Délivre les


message messages sur
+ Ids les périphériques
enregistrés

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
Les notifications afin d’alerter l’utilisateur

WinDev Mobile 19, android alphorm.com™©


La programmation
Envoyer des SMS
et des mails
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les fonctions SMS

• Utilisation dans le projet « Gérer Mon Budget »

WinDev Mobile 19, android alphorm.com™©


Les fonctions SMS
• SMSEnvoie

• SMSLanceAppli Structure d’un SMS


• SMSNbMessage • DateRéception

• Indice (N° du message)


• SMSPremier
• Message (160car)
• SMSRaz
• Numéro (Expéditeur)
• SMSuivant • PréfixeNational (33 : France)

• SMSSupprime • TypeNuméro : smsNuméroInternational ou smsNuméroNational

WinDev Mobile 19, android alphorm.com™©


Envoyer des emails
• EmailLanceAppli()

Dommage :
Les fonctions mails ne sont pas disponibles pour Android
Impossible de vérifier l’envoi d’un email
Utiliser un webservice ?

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
L’utilisation de SMS et l’envoi d’un mail

WinDev Mobile 19, android alphorm.com™©


La programmation
Gérer les coordonnées GPS

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les fonctions GPS

• Mise en œuvre

WinDev Mobile 19, android alphorm.com™©


Les fonctions GPS
• géoAzimut *

• géoDistance *

• géoLanceAppli Le type « géoPosition »


• géoRécupèreAdresse • Altitude AltitudeValide
• GPSArrêteDétection
• DateMesure (heure locale sur l'appareil)
• GPSDernièrePosition *
• Direction (en degrés Est à partir du Nord géographique) DirectionValide
• GPSDétectePosition
• Latitude
• GPSEtat
PositionValide
• GPSInfo • Longitude

• GPSInitParamètre • Précision (en metre) PrécisionValide


• GPSRécupèrePosition * • Vitesse (en mètre/sec) VitesseValide
• GPSSuitDéplacement

• GPSTermine
*Ces fonctions retournent un objet de type géoPosition

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
L’utilisation du GPS

WinDev Mobile 19, android alphorm.com™©


La programmation
Scanner
des codes-barres
Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• La librairie Zxing
https://github.com/zxing/zxing

• Utiliser les fonctions du WLangage

WinDev Mobile 19, android alphorm.com™©


Les code-barres
• Code128

• Code39 Le type « Codebarres »


• Contenu
• Code93
• CorrectionErreur
• EAN13 • Options

• EAN8 • TypeCodeBarres

• TypeContenu
• QR Code
• cbTypeTexte, cbTypeTéléphone, cbTypeSMS, cbTypeURL,
cbTypeMarket, cbTypeWiFi, cbTypeEmail, cbTypeContact,
• UPC-A cbTypePosition
• ValeurBrute
• UPC-E

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
Décoder un code barre sous Android

WinDev Mobile 19, android alphorm.com™©


La programmation
L’achat In-App

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Les fonctions In-App

• L’utilisation dans le projet « Gérer Mon Budget »

WinDev Mobile 19, android alphorm.com™©


L’achat In-app
Proposer du contenu payant
Fonctions disponibles sur système Android supérieur à v2.2 (api level 8)

• inAppAchèteProduit
Envoie d’une demande d’achat (Procédure Callback)

• inAppConsommeProduit
Pour des extensions consommable

• inAppListeAchat

• inAppListeInfoProduit
Limité à 20 produits

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
Proposer du contenu payant à l’utilisateur

WinDev Mobile 19, android alphorm.com™©


La programmation
Insérer du code Java

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Pourquoi coder en Java dans WinDev mobile ?

• Ecrire une procédure java

• Appeler une procédure WLangage en Java

WinDev Mobile 19, android alphorm.com™©


Insérer du code Java
• Passage des paramètres uniquement par valeur

• Types simples pour les paramètres (entier, chaine…)

• appelProcedureWL[*] : Appeler une procédure WL en Java

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
Ne pas rester bloqué en utilisant du Java

WinDev Mobile 19, android alphorm.com™©


Le déploiement
Installation sur le téléphone
ou la tablette Android

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
Installer l’application Android :
• Via WinDev mobile

• Via ADB
http://developer.android.com/tools/help/adb.html

• Par copie
Copier et installer l’APK sur le device

WinDev Mobile 19, android alphorm.com™©


Installer par copie

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Le déploiement direct sur un device Android

WinDev Mobile 19, android alphorm.com™©


Le déploiement
Mise à disposition sur un
serveur Web

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Plan
• Une URL
<a href='Chemin du fichier apk'>Texte du lien</a>
MIME : application/vnd.android.package-archive

WinDev Mobile 19, android alphorm.com™©


Ce qu’on a couvert
• Le déploiement sur un site web

WinDev Mobile 19, android alphorm.com™©


Windev mobile 19, Android
Conclusion

Site : http://www.alphorm.com
Blog : http://www.alphorm.com/blog
Nicolas Ungern-sternberg
Formateur et gérant d’informatique des 2 caps
Forum : http://www.alphorm.com/forum n.ungern@informatiquedes2caps.com
WinDev Mobile 19, android alphorm.com™©
Merci
Espérant que cette formation vous a donné l’eau à la bouche
pour passer à WinDev Mobile !

* Source de l’image : http://www.phonandroid.com

WinDev Mobile 19, android alphorm.com™©


Questions ?
Nicolas UNGERN-STERNBERG

Contacts :
Mon profil LinkedIn : http://lnkd.in/jFZV_n
Site de l’entreprise : http://www.informatiquedes2caps.com
Mon profil Alphorm : http://www.alphorm.com/auteur/nicolas-ungern-sternberg
Forum Alphorm : http://www.alphorm.com/forum/

WinDev Mobile 19, android alphorm.com™©


Bilan
• Configurer l’environnement de développement

• Comprendre les principes de fonctionnement de WinDev mobile

• Utiliser des sources de données hétérogènes

• Utiliser les principaux champs

• Développer en multiplateforme

• Programmer, utiliser les outils mobile

• Déployer une application

WinDev Mobile 19, android alphorm.com™©


A bientôt sur les autres formations PCSOFT

WinDev Mobile 19, android alphorm.com™©

Vous aimerez peut-être aussi