SlideShare une entreprise Scribd logo
1  sur  8
Les services mobiles géolocalisés“Comment les intégrer sur les différentes plate-formes ?” Mobile Monday Rennes - 06/12/10 Yannick Le Duc, Mobizel
Plan Quelques usages Où suis-je ? Signale-moi quand j’approche de ce point. Qu’y a-t-il à ce lieu ? Un peu de tout ça… Les plateformes mobiles Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
Où suis-je ? Google Android On cherche un LocationManager  (astuce : getBestProvider(criteria, …)) Permissions à accorder : ACCESS_FINE_LOCATION ou ACCESS_COARSE_LOCATION On crée un objet LocationManager locationMgr = getSystemService(LOCATION_SERVICE); On obtient une position par Location l = locationMgr.getLastKnownLocation(prov); Ou en continu locationMgr.requestLocationUpdates(prov, t, distance, myLocationListener); Apple iPhone (Framework “Core Location”) On crée un objet CLLocationManager On choisit la précision desiredAccuracy = kCLLocationAccuracyBest On choisit la fréquence de rafraichissement distanceFilter = 1000 On démarre startUpdatingLocation On obtient des objets CLLocation: coordinate.latitude coordinate.longitude horizontalAccuracy altitude verticalAccuracy Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
Où suis-je ? Navigateur - HTML5 (W3C Geolocation API) On appelle navigator.geolocation.getCurrentPosition(updatePos) Paramètres additionnels :  enableHighAccuracy timeout maximumAge On reçoit functionupdatePos (position)  {    var lat = position.coords.latitude;     var long = position.coords.longitude;   // affichage carte ou autre… } Il existe aussi : watchPosition Blackberry (Java ME Location API) On spécifie des critères : Précision :  setHorizontalAccuracy Consommation : setPreferredPowerConsumption Autonome setCostAllowed On récupère un LocationProvider prov = LocationProvider.getInstance(criteria) On récupèreune position location = provider.getLocation(-1) location.QualifiedCoordinates Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
Signale-moi quand j’approche de ce point Apple iPhone OS4 (Juillet 2010) et le multi-tâche startMonitoringForRegion(desiredAccuracy) Android Les « ProximityAlerts » locationMgr.addProximityAlert(lat, lng, radius, expiration, proximityIntent); Blackberry ! HTML5 Impossible Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
Qu’y a-t-il à ce lieu ? Géocodage (Geocoding), et Reverse Geocoding Nécessite des Web Services Google (Maps), Yahoo PlaceFinder, MS Bing Maps, OpenStreetMap, … Approche similaire entre les plateformes Les champs libres,  Rennes 48.108807,  -1.691895 Reverse Geocoding (Forward) Geocoding Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
Un peu de tout ça… Mixer tout ça, … Difficile Coûteux Les plateformes de réseaux sociaux Twitter Facebook Places “Location As A Service” : le GeoFencing SimpleGeo LocationLabs … Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
Merci ! Mobizel « Créez vos applications mobiles, simplement » Lancement en janvier 2011 yannick@mobizel.com Twitter : @mobizel

Contenu connexe

En vedette

Etude quanti Region Région - Contenus services Numériques - résultats détaill...
Etude quanti Region Région - Contenus services Numériques - résultats détaill...Etude quanti Region Région - Contenus services Numériques - résultats détaill...
Etude quanti Region Région - Contenus services Numériques - résultats détaill...Silicon Village
 
20110223 Café numérique elearning
20110223 Café numérique elearning20110223 Café numérique elearning
20110223 Café numérique elearningMarina Aubert
 
POL4840 - Plan de cours de l'hiver 2017
POL4840 - Plan de cours de l'hiver 2017POL4840 - Plan de cours de l'hiver 2017
POL4840 - Plan de cours de l'hiver 2017Florent Michelot
 
Etude mckinsey impact internet sur économie francaise
Etude mckinsey impact internet sur économie francaiseEtude mckinsey impact internet sur économie francaise
Etude mckinsey impact internet sur économie francaiseSilicon Village
 
Presentation Worldmundo
Presentation WorldmundoPresentation Worldmundo
Presentation WorldmundoWORLDMUNDO
 
Twitter en classe
Twitter en classeTwitter en classe
Twitter en classelermigea
 
Les climats dans_le_monde[1]
Les climats dans_le_monde[1]Les climats dans_le_monde[1]
Les climats dans_le_monde[1]ireari
 
Financer votre projet de startup - Le financement de l'innovation par BPI France
Financer votre projet de startup - Le financement de l'innovation par BPI FranceFinancer votre projet de startup - Le financement de l'innovation par BPI France
Financer votre projet de startup - Le financement de l'innovation par BPI FranceLa French Tech Rennes St Malo
 

En vedette (13)

Lycée Porsmeur 4 nov. 2013
Lycée Porsmeur 4 nov. 2013Lycée Porsmeur 4 nov. 2013
Lycée Porsmeur 4 nov. 2013
 
La fabrique à média
La fabrique à médiaLa fabrique à média
La fabrique à média
 
Etude quanti Region Région - Contenus services Numériques - résultats détaill...
Etude quanti Region Région - Contenus services Numériques - résultats détaill...Etude quanti Region Région - Contenus services Numériques - résultats détaill...
Etude quanti Region Région - Contenus services Numériques - résultats détaill...
 
20110223 Café numérique elearning
20110223 Café numérique elearning20110223 Café numérique elearning
20110223 Café numérique elearning
 
Mobile Monday Rennes #3 - Le marketing mobile
Mobile Monday Rennes #3 - Le marketing mobileMobile Monday Rennes #3 - Le marketing mobile
Mobile Monday Rennes #3 - Le marketing mobile
 
POL4840 - Plan de cours de l'hiver 2017
POL4840 - Plan de cours de l'hiver 2017POL4840 - Plan de cours de l'hiver 2017
POL4840 - Plan de cours de l'hiver 2017
 
We avant bac
We avant bacWe avant bac
We avant bac
 
Etude mckinsey impact internet sur économie francaise
Etude mckinsey impact internet sur économie francaiseEtude mckinsey impact internet sur économie francaise
Etude mckinsey impact internet sur économie francaise
 
Presentation Worldmundo
Presentation WorldmundoPresentation Worldmundo
Presentation Worldmundo
 
Target audience
Target audienceTarget audience
Target audience
 
Twitter en classe
Twitter en classeTwitter en classe
Twitter en classe
 
Les climats dans_le_monde[1]
Les climats dans_le_monde[1]Les climats dans_le_monde[1]
Les climats dans_le_monde[1]
 
Financer votre projet de startup - Le financement de l'innovation par BPI France
Financer votre projet de startup - Le financement de l'innovation par BPI FranceFinancer votre projet de startup - Le financement de l'innovation par BPI France
Financer votre projet de startup - Le financement de l'innovation par BPI France
 

Plus de La French Tech Rennes St Malo

Financer votre projet de startup - Les dispositifs de financement de l'nnovation
Financer votre projet de startup - Les dispositifs de financement de l'nnovationFinancer votre projet de startup - Les dispositifs de financement de l'nnovation
Financer votre projet de startup - Les dispositifs de financement de l'nnovationLa French Tech Rennes St Malo
 
Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...
Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...
Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...La French Tech Rennes St Malo
 
Financer votre projet de startup - Le fonctionnement des business angels
Financer votre projet de startup - Le fonctionnement des business angelsFinancer votre projet de startup - Le fonctionnement des business angels
Financer votre projet de startup - Le fonctionnement des business angelsLa French Tech Rennes St Malo
 
Financer votre projet de startup - le parcours de financement
Financer votre projet de startup - le parcours de financementFinancer votre projet de startup - le parcours de financement
Financer votre projet de startup - le parcours de financementLa French Tech Rennes St Malo
 

Plus de La French Tech Rennes St Malo (20)

Financer votre projet de startup - Les dispositifs de financement de l'nnovation
Financer votre projet de startup - Les dispositifs de financement de l'nnovationFinancer votre projet de startup - Les dispositifs de financement de l'nnovation
Financer votre projet de startup - Les dispositifs de financement de l'nnovation
 
Financer votre projet de startup - Le crowdfunding
Financer votre projet de startup - Le crowdfundingFinancer votre projet de startup - Le crowdfunding
Financer votre projet de startup - Le crowdfunding
 
Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...
Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...
Financer votre projet de startup - Lever des fonds auprès de fonds d'investis...
 
Financer votre projet de startup - Le fonctionnement des business angels
Financer votre projet de startup - Le fonctionnement des business angelsFinancer votre projet de startup - Le fonctionnement des business angels
Financer votre projet de startup - Le fonctionnement des business angels
 
Financer votre projet de startup - le parcours de financement
Financer votre projet de startup - le parcours de financementFinancer votre projet de startup - le parcours de financement
Financer votre projet de startup - le parcours de financement
 
Startup workshop
Startup workshopStartup workshop
Startup workshop
 
Statuts
Statuts Statuts
Statuts
 
Dossier de candidature French Tech Rennes v2
Dossier de candidature French Tech Rennes v2Dossier de candidature French Tech Rennes v2
Dossier de candidature French Tech Rennes v2
 
La French Tech c'est quoi ?
La French Tech c'est quoi ?La French Tech c'est quoi ?
La French Tech c'est quoi ?
 
Twitter pour les moins nuls 2014
Twitter pour les moins nuls 2014Twitter pour les moins nuls 2014
Twitter pour les moins nuls 2014
 
Webstorm
WebstormWebstorm
Webstorm
 
Typescript coffeescript
Typescript coffeescriptTypescript coffeescript
Typescript coffeescript
 
Test unitaire
Test unitaireTest unitaire
Test unitaire
 
Recrutement 2.0
Recrutement 2.0Recrutement 2.0
Recrutement 2.0
 
Real time bidding cantine
Real time bidding cantineReal time bidding cantine
Real time bidding cantine
 
Presentation Google solutions de monétisation
Presentation Google solutions de monétisationPresentation Google solutions de monétisation
Presentation Google solutions de monétisation
 
Twitter et les journalistes
Twitter et les journalistesTwitter et les journalistes
Twitter et les journalistes
 
Slides des prédictions TMT Deloitte 2013 à #Rennes
Slides des prédictions TMT Deloitte 2013 à #RennesSlides des prédictions TMT Deloitte 2013 à #Rennes
Slides des prédictions TMT Deloitte 2013 à #Rennes
 
Second écran : usages et technologies
Second écran : usages et technologiesSecond écran : usages et technologies
Second écran : usages et technologies
 
Kmb & sp regards croisés
Kmb & sp regards croisésKmb & sp regards croisés
Kmb & sp regards croisés
 

Mobile Mondays - Mobizel

  • 1. Les services mobiles géolocalisés“Comment les intégrer sur les différentes plate-formes ?” Mobile Monday Rennes - 06/12/10 Yannick Le Duc, Mobizel
  • 2. Plan Quelques usages Où suis-je ? Signale-moi quand j’approche de ce point. Qu’y a-t-il à ce lieu ? Un peu de tout ça… Les plateformes mobiles Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
  • 3. Où suis-je ? Google Android On cherche un LocationManager (astuce : getBestProvider(criteria, …)) Permissions à accorder : ACCESS_FINE_LOCATION ou ACCESS_COARSE_LOCATION On crée un objet LocationManager locationMgr = getSystemService(LOCATION_SERVICE); On obtient une position par Location l = locationMgr.getLastKnownLocation(prov); Ou en continu locationMgr.requestLocationUpdates(prov, t, distance, myLocationListener); Apple iPhone (Framework “Core Location”) On crée un objet CLLocationManager On choisit la précision desiredAccuracy = kCLLocationAccuracyBest On choisit la fréquence de rafraichissement distanceFilter = 1000 On démarre startUpdatingLocation On obtient des objets CLLocation: coordinate.latitude coordinate.longitude horizontalAccuracy altitude verticalAccuracy Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
  • 4. Où suis-je ? Navigateur - HTML5 (W3C Geolocation API) On appelle navigator.geolocation.getCurrentPosition(updatePos) Paramètres additionnels : enableHighAccuracy timeout maximumAge On reçoit functionupdatePos (position) { var lat = position.coords.latitude; var long = position.coords.longitude; // affichage carte ou autre… } Il existe aussi : watchPosition Blackberry (Java ME Location API) On spécifie des critères : Précision : setHorizontalAccuracy Consommation : setPreferredPowerConsumption Autonome setCostAllowed On récupère un LocationProvider prov = LocationProvider.getInstance(criteria) On récupèreune position location = provider.getLocation(-1) location.QualifiedCoordinates Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
  • 5. Signale-moi quand j’approche de ce point Apple iPhone OS4 (Juillet 2010) et le multi-tâche startMonitoringForRegion(desiredAccuracy) Android Les « ProximityAlerts » locationMgr.addProximityAlert(lat, lng, radius, expiration, proximityIntent); Blackberry ! HTML5 Impossible Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
  • 6. Qu’y a-t-il à ce lieu ? Géocodage (Geocoding), et Reverse Geocoding Nécessite des Web Services Google (Maps), Yahoo PlaceFinder, MS Bing Maps, OpenStreetMap, … Approche similaire entre les plateformes Les champs libres, Rennes 48.108807, -1.691895 Reverse Geocoding (Forward) Geocoding Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
  • 7. Un peu de tout ça… Mixer tout ça, … Difficile Coûteux Les plateformes de réseaux sociaux Twitter Facebook Places “Location As A Service” : le GeoFencing SimpleGeo LocationLabs … Mobile Monday Rennes @LaCNR - 06/12/10 - Yannick Le Duc - Mobizel
  • 8. Merci ! Mobizel « Créez vos applications mobiles, simplement » Lancement en janvier 2011 yannick@mobizel.com Twitter : @mobizel

Notes de l'éditeur

  1. Honneur departagermonexpériencedansce premier Mobile Monday Rennais.Mon but premier : ne pas vousendormir ;-)Le risque de la présentation : accessibleàtous, trouver un équilibre entre :Trop compliqué pour les non développeursTropsimplifié pour les développeurs (pas vocation àremplacer un bon livre et de l’apprentissage ;-))Mettremon nom et mobizel en bas de page… Logo Mobile Monday, Date, LaCNR Rennes ?Anecdotes à placer/penser :En + des composants de geoloc (GPS, Wifi, Cell), penser au compass et l’accélérateurLa précisions’amélioreprogressivement en fonction du temps (Cell en qqsecs, puis GPS…) : permet de commencer àpréfetcher des infos par ex
  2. Plateformes : ilfaut faire des choix (en 8 mn)Apple iPhoneGoogle AndroidWindows Phone 7Dans un navigateur : HTML5Désolé pour les autres (Nokia/Symbian/Meego, Samsung Bada, BlackBerry)
  3. iPhone : 1- Assez simple. Les technologies induitessontcachées pour le développeur. On ne dit pas, utilisetelleoutelle techno. On définit la précision, et la meilleure techno estchoisie.2- Précision en mètre : kCLLocationAccuracyNearestTenMeters, kCLLocationAccuracyNearestTenMeters, kCLLocationAccuracyHundredMeters, kCLLocationAccuracyKilometer, and kCLLocationAccuracyThree Kilometers3- Par défaut, le LocationManagervanotifieràchaquechangementdétecté. Grâce au distanceFilter, on peutchoisir de n’avoir des notifications quequand on a bougéd’unecertaine distance (en mètre)Note :- Comment ca se voit pourl’utilisateur.- Attention : pas moy de simulerunelocalisationsurl’émulateur (arg)Android :Manifest.xml - add one or more uses-permission tags to your manifest to support access to the LBS hardwareAccess to the location-based services is handled using the Location Manager system Service- Depending on the device, there may be several technologies that Android can use to determine the cur- rent location. Each technology, or Location Provider, will offer different capabilities including power con- sumption, monetary cost, accuracy, and the ability to determine altitude, speed, or heading information.Criteria : Power use, Accuracy, Ability to return bearing, speed, and altitude
  4. BlackberrySimulation possible dans le simulator-1 est le timeoutApplication PermissionsHTML5Browser specific – Tester avantsi la fonctionnalitéestdispocoords.latitude double decimal degreescoords.longitude double decimal degreescoords.altitude double or null meters above the reference ellipsoidcoords.accuracy double meterscoords.altitudeAccuracy double or null meterscoords.heading double or null degrees clockwise from true northcoords.speed double or null meters/secondtimestamp
  5. Limites du système : trade-off consoélectrique et précisions… En tâche de fond, en iOS, on ne feraque de la triangulation de Cell tower… doncpeu précis…"wake-on-location".In iOS 4.0 and later, you can use the region monitoring service to define the boundaries for multiple geographical regions. After registering a region using the startMonitoringForRegion:desiredAccuracy: methodhttp://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.htmlInstantiate a CLRegion with a center coordinate and a distance/accuracy filter.Ask the CLLocationManager to begin monitoring for that region.Your CLLocationManager delegate is called when you enter and exit a region.http://longweekendmobile.com/2010/06/30/location-region-data-in-background-on-ios4-iphone/
  6. Schéma client / serveur / cloud, dans les 2 sens (sur la CNR)Lat : 48.108807 (N),Long : -1.691895 (W)Les x + gros services. Ceuxfournisdans les SDKs de baseEx sur LACNR
  7. “Developers seeking a better, smarter, and potentially lower-cost way to create location-based mobile apps might want to consider using a location-as-a-service platform”SimpleGeo début 2010LocationLabsJuin 2010Pourquoiintéressant : deal with erreurs/imprécisions (statistiques)Ex de code ?“Sixty percent of mobile subscribers worldwide will use an application enabled by location over the next four years or so, says Mark Beccue, a senior analyst at ABI Research”“An estimated 12 percent of the apps in the iPhone App Store had a location component, according to a recent Apple iTunes report.”