Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Meditation Personal Transformation Life Purpose Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Mobile Development Android Development

Android Sensors | Cas pratiques d'applications

Développez en Kotlin des applications Android professionnelles
Highest Rated
Rating: 4.7 out of 54.7 (32 ratings)
485 students
Created by Robin Penea
Last updated 8/2019
French
30-Day Money-Back Guarantee

What you'll learn

  • Développer des applications Android professionnelles
  • Utiliser Google Maps, les tag QR Code / NFC, l'appareil photo
  • Concevoir des architectures solides (organisation des packages, tests, etc)
Curated for the Udemy for Business collection

Course content

12 sections • 209 lectures • 21h 9m total length

  • Preview03:54
  • Composants et AndroidX
    02:27

  • Principe du Lifecycle
    02:52
  • Ajouter la dépendance dans le build.gradle
    02:59
  • Connecter un composant à un lifecycle
    08:28
  • Exercice : composant lifecycle custom
    01:17
  • Corrigé : composant lifecycle custom
    02:29
  • Définir un LifecycleOwner
    05:54

  • Principe du LiveData
    02:48
  • Définir un LiveData
    11:47
  • Personnaliser un LiveData
    09:51
  • Transformer un LiveData : Map
    08:18
  • Chainer des LiveData : SwitchMap
    05:28
  • Exercice : Surveiller la connectivité avec un LiveData
    02:10
  • Corrigé : Surveiller la connectivité avec un LiveData
    08:12

  • Le pattern MVC vs MVVM
    06:36
  • Cycle de vie d'un ViewModel
    13:55
  • LiveData et ViewModel
    07:54
  • Tester un ViewModel
    05:40
  • State et ViewModel 1/2
    07:35
  • State et ViewModel 2/2
    07:16
  • Exercice : Activity de login avec un ViewModel
    01:37
  • Corrigé : Activity de login avec un ViewModel
    09:51

  • Introduction The Endor Map
    00:44
  • Preview06:38
  • Création du projet
    02:30
  • Thème et Icone de l'application
    09:25
  • La classe Application et Timber
    05:38
  • Permissions de Location
    14:30
  • Récupérer la dernière position
    10:07
  • Paramètres de géolocalisation
    16:05
  • Requêter des nouvelles positions
    14:17
  • Refactoring dernière position dans un LiveData
    19:29
  • Exercice : Refactoring position courante dans un LiveData
    02:36
  • Corrigé : Refactoring position courante dans un LiveData
    11:48
  • Obtenir une clé d'API Google Maps
    05:52
  • Preview07:30
  • Personnaliser les couleurs de Maps
    05:31
  • Définir et générer le POI utilisateur
    08:35
  • Générer les POIs
    07:24
  • Créer le ViewModel
    05:37
  • Remonter des états depuis le ViewModel
    08:40
  • Récupérer les POIs du ViewModel
    11:14
  • Gérer les cas de state UI
    10:19
  • Organiser les packages
    13:40
  • Centrer la caméra sur la position du téléphone
    06:37
  • Exercice : Ajouter un Marker pour chaque POI
    03:13
  • Corrigé : Ajouter un Marker pour chaque POI
    15:14
  • Déplacer un POI en fonction de la gélocalisation
    02:56
  • Personnaliser l'affichage d'InfoWindow
    12:29
  • Ouvrir une page Web sur le clic InfoWindow
    03:46
  • Regénérer les données à partir d'un OptionMenu
    08:26

  • Découvrir le Geofencing
    01:30
  • Créer une Geofence
    17:54
  • Supprimer une Geofence
    03:26
  • Détecter une Geofence avec un IntentService
    12:08
  • Les Notifications sur Android Oreo
    09:01
  • Exercice : Envoyer une Notification
    01:18
  • Corrigé : Envoyer une Notification
    05:16
  • Ajouter du contenu dans une notification
    04:54
  • Définir l'Action de Notification
    03:56

  • Que faut-il tester ?
    09:00
  • Découvrir les tests sur Android
    10:08
  • Préparer le test d'un LiveData
    08:00
  • Tester un LiveData
    12:33
  • Tester une séquence de valeurs dans un LiveData
    06:33
  • Exercice : Tester un comportement non valide
    02:15
  • Corrigé : Tester un comportement non valide
    08:46
  • Les tests comme un un client d'API
    05:28
  • Créer l'interface PoiRepository
    03:36
  • Implémenter PoiRepository pour l'application
    11:10
  • Implémenter PoiRepository pour les tests
    04:38
  • Tester les POIs renvoyés
    03:37
  • Aller plus loin avec The Endor Map
    01:52
  • Sources Projet : The Endor Map
    00:02

  • Introduction Bond Gadgets
    00:59
  • Architecture de Bond Gadgets
    05:43
  • Création du projet
    01:20
  • Définir les classes métier
    07:24
  • L'annotation Parcelize pour les Parcelable
    02:46
  • Stocker les Gadgets dans un repository
    06:44
  • Retrouver les gadgets dans un repository
    08:32
  • La classe App
    02:38
  • Découvrir Jetpack Navigation
    05:29
  • Mise en place Navigation & Activity
    12:16
  • Créer le Fragment de GadgetList
    06:43
  • Définir GadgetListViewModel pour ajouter un Gadget
    02:09
  • Exposer GadgetListViewState depuis le ViewModel
    02:59
  • Utiliser un MediatorLiveData pour le ViewState
    06:52
  • Créer le ViewModelFactory commun
    07:21
  • Design de l'UI de la liste de Gadgets
    09:14
  • Exercice : RecyclerView et Adapter de Gadgets
    01:24
  • Corrigé : RecyclerView et Adapter de Gadgets
    20:59
  • Mettre à jour l'UI à partir du ViewState
    06:55
  • Ajouter un FAB dans GadgetListFragment
    03:55
  • Naviguer vers le QRCodeFragment
    11:25
  • Permissions de la caméra
    06:34
  • Découvrir les QRCodes
    03:01
  • Utiliser ZXing et scanner un QRCode
    08:00
  • Simuler un scan de QRCode
    08:05
  • Partager un ViewModel pour sauvegarder les données
    06:09

  • Découvrir le NFC
    04:50
  • Tester le NFC avec une appli tierce
    03:37
  • L'API NFC sur Android
    03:44
  • Créer l'Activity de Scan NFC
    03:46
  • Démarrer l'Activity de Scan NFC sans Navigation
    04:21
  • Préparer l'UI du Scan NFC
    04:07
  • Exercice : Animer le NFC avec un fichier XML
    02:29
  • Corrigé : Animer le NFC avec un fichier XML
    05:21
  • Définir l'interface NFCProtocol
    07:04
  • Exercice : Tester le Lifecycle avec un Stub
    03:44
  • Corrigé : Tester le Lifecycle avec un Stub
    07:24
  • Créer le NFCProtocolIntent et ses états
    05:04
  • Exception Custom pour NFC désactivé
    11:09
  • Afficher la Dialog d'activation
    05:51
  • Gérer la rétrocompatibilité pour l'intent de Settings
    05:03
  • Initialiser le NFC
    04:51
  • Verrouiller le NFC
    05:39
  • Déverrouiller le NFC
    02:17
  • AsyncTask et Result pour lire le NFC
    07:43
  • Se connecter et récupérer un NDEFRecord
    07:26
  • Parser un texte stocké dans le tag NFC
    04:38
  • Parser une URI avec la rétrocompatibilité
    11:59
  • Renvoyer le résultat d'une NfcTaskResult
    04:05
  • Filtrer l'Intent et appeler le scanNFC
    03:14
  • Vibrer lors d'un scan réussi
    03:37
  • Terminer l'Activity de Scan avec un result
    02:12
  • Ajouter le tag NFC à la liste des Gadgets
    03:40
  • Simuler le Scan NFC avec le Stub + BuildConfig
    07:30
  • NFCTask avec un message
    03:38
  • Créer un TextRecord avec la rétrocompatibilité
    03:55
  • Ecrire le NDEFMessage et renvoyer une résultat
    01:21
  • Gérer le mode écriture dans le NFCScanActivity
    03:51
  • Ecrire sur un tag NFC
    03:12

  • Présentation de l'UI et des animations
    02:15
  • Thème et rétro-compatibilité
    05:56
  • Icone de l'application
    02:31
  • Créer le fragment de détail d'un QRCode
    01:59
  • Prépare l'UI de détail d'un QRCode
    12:28
  • Afficher les données d'un QRCode
    05:33
  • Naviguer vers un QRCode
    06:41
  • Définir des éléments partagés de transition
    07:09
  • Animer les transitions de la destination
    08:31
  • Charger le fragment à la main
    06:48
  • Créer le fragment de détail d'un NFC
    01:57
  • Exercice : Prépare l'UI de détail d'un NFC
    02:38
  • Corrigé : Prépare l'UI de détail d'un NFC
    12:37
  • Afficher les données d'un NFC
    08:23
  • Exercice : Faire les animations vers le NFC
    01:34
  • Corrigé : Faire les animations vers le NFC
    03:27
  • Gérer un mode écriture dans le ViewModel NFC
    05:51
  • Gérer un mode écriture dans le fragment NFC
    05:39
  • Appeler le Scan NFC en mode écriture
    03:14
  • Mettre à jour le Repo avec le nouveau TAG écrit
    04:50
  • Créer un menu FAB
    10:14
  • Factoriser dans une View Custom : XML
    04:00
  • Factoriser dans une View Custom : Code
    12:09
  • Animer le menu FAB
    09:27
  • Preview03:23
  • Stocker l'état du menu dans le ViewModel
    05:08
  • Aller plus loin avec Bond Gadgets
    03:12
  • Sources Projet : Bond Gadget's
    00:01

Requirements

  • Connaître les bases d'Android
  • Développer avec le langage Kotlin
  • Avoir une installation Android Studio

Description

Bienvenue dans la formation Android Sensors | Cas pratiques d’applications. Dans ce cours, vous allez réaliser des applications Android professionnelles tout en découvrant l’utilisation de nombreux capteurs (GPS, QRCode, NFC, appareil photo, etc).


L’objectif de la formation est de vous armer pour que vous soyez capable d’attaquer n’importe quel projet sur Android. Parfois, on ne sait pas comment organiser son travail pour avoir une structure solide. Après les 3 projets complets de ce cours, vous aurez la méthode pour faire des applications en béton !


Les 3 applications

Je vous propose des vrais cas pratiques d’applications que l’on construira de A à Z. On réalisera chaque projet à fond, comme si on allait le publier sur le Google Play Store.

Pour rendre l’apprentissage plus ludique, j’ai inscrit chaque projet dans un univers de film / livre. Si on peut apprendre et s’amuser en même temps, profitons-en !

La 1ère application, The Endor Map se base sur l’univers du Seigneur des Anneaux pour explorer les cartes et la géolocalisation. On y aborde :

  • La géolocalisation et le geofencing ;

  • L’intégration de Google Maps et la personnalisation des cartes ;

  • Les notifications Android ;

  • Les tests unitaires.

La 2ème application, Bond Gadget’s vous place dans l’équipe de R&D de James Bond, où vous devrez faire l’inventaire des gadgets de l’Agent 007. Chaque gadget est équipé d’un QRCode ou d’un tag NFC que vous devrez scanner. On y aborde :

  • Le scan de QRCode ;

  • Le scan de tag NFC en lecture et écriture ;

  • Les animations ;

  • Les view customs.

La dernière application, Stranger Cam, nous propulse dans la série TV Stranger Things. On va réaliser une application photo qui reproduit l’effet de la dimension parallèle Upside Down. On y abordera :

  • Preview de l’appareil photo en direct ;

  • Prise de photo ;

  • Gestion de plusieurs lentilles (appareil photo arrière et frontal) ;

  • L’enregistrement et le partage de fichiers dans les dernières versions d’Android ;

  • Une galerie photo personnalisée.


L’architecture au cœur de la formation

Je vais profiter de tous ces projets pour discuter avec vous d’un sujet qui me tient à coeur : l’architecture de projet. Dans cette formation, j’ai puisé dans mes 10 ans d’expérience professionnelle en développement pour vous parler de :

  • Comment faire du refactoring efficace ?

  • Comment organiser et nommer ses packages ?

  • Comment profiter de la puissance d’Android Studio ?

  • Comment simuler des composants pour accélérer le développement ?

  • Quand et comment faire des tests utiles au projet ?

On ne fera pas qu’écrire du code, je le commenterai au fur et à mesure et je vous montrerai comment je réfléchis pour améliorer mes projets.


Structure de la formation

Pour arriver à couvrir tous ces sujets, j’ai structuré le cours pour qu’il y ait une progression naturelle.

On commencera par une introduction aux composants que j’utilise dans tous mes projets Android, les Architecture Components :

  • Lifecycle : simplifier la gestion du cycle de vie des Activity et des Fragments ;

  • LiveData : rendre vos données observables pour réagir à la moindre modification ;

  • ViewModel : structurez autrement vos Activity et modulariser vos applications ;

Une fois ces bases posées, on démarrera à fond avec les 3 projets d’applications. Tout au long de la formation, vous aurez 16 exercices pour mettre en pratique et ensemble, on va écrire plus de 4000 lignes de code. Le programme est chargé !


Un dernier mot

Avec cette formation, j’espère partager avec vous ma passion pour le développement et pour les applications bien faites. Même si ça fait des années que je fais du software, je me torture toujours autant pour nommer une simple variable, et je veux vous faire profiter de toutes ces réflexions ;-) !

J’espère de tout coeur que vous me rejoindrez dans le développement de cette nouvelle génération d’applis sur Android ! Je suis très réactif dans la section Questions / Réponses et adore échanger avec les étudiants autour de ce sujet passionnant.

A très vite !

Who this course is for:

  • Les développeurs Android / Kotlin qui veulent créer des applications pros
  • Les curieux qui veulent découvrir les capteurs sur Android
  • Les passionnés qui veulent utiliser les dernières bibliothèques Google sur Android

Instructor

Robin Penea
Fondateur de Gryt & Ingénieur Software
Robin Penea
  • 4.6 Instructor Rating
  • 2,612 Reviews
  • 9,692 Students
  • 6 Courses

Salut ! 

Je suis ingénieur en développement logiciel depuis 10 ans et ai commencé à bricoler des applications Android (avec la version 1.6 Donut !) pendant mes études avant de travailler dessus professionnellement.

J'ai passé plusieurs années sur l'OS Android en explorant tous les aspects de cet incroyable système d'exploitation. J'aime autant trifouiller les couches basses du système que de développer des apps avec les dernière technos (Kotlin / RxJava / MVVM, etc...).

Etant très curieux, j'aime varier les sujets et suis également passionné par d'autres technos avec lesquelles je travaille aussi, comme le Qt / C++ (avec la publication fin 2016 d'un livre technique, Mastering Qt 5), le développement web (Python / Go) ou encore l'informatique embarquée (Raspberry Pi / Arduino).

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.