• laurent@lioncoding.com

Nuget package App.User.LocationInfo


Sujet

Vous rencontrerez souvent les situations suivantes dans les applications mobiles et de manière générale sur Internet:

  • La devise de votre pays est sélectionnée par défaut sur les plateformes d’e-commerce comme Amazon ou AliExpress,

  • Il arrive qu’en remplissant des formulaires, que votre pays soit pré-sélectionné dans la liste proposée.

  • YouTube vous montre des actualités en rapport avec votre pays.
  • Facebook, Twitter, Instagram, … vous montrent des personnes de votre pays que vous pouvez ou non suivre.
  • Google vous indique que quelqu’un d’autre s’est connecté à votre compte Gmail.
  • Le nom de votre pays, de votre région ou de votre Fournisseur d’Accès Internet(FAI) sont collectés à votre insu sur Internet.

Mais comment est-ce possible ?

C’est simplement parce-qu’ils ont pu déterminer votre adresse IP. Grâce à votre adresse IP sur Internet, tout un tas d’informations peut être obtenu notamment le FAI, le pays, la région, la ville, …etc.

Le but de cet article est de vous présenter mon plugin App.User.LocationInfo qui permet de récupérer l’adresse IP de l’utilisateur de votre application Xamarin ainsi que beaucoup d’autres informations comme son pays, sa ville, sa localisation(Coordonnées GPS), …etc.

A la découverte de App.User.LoctionInfo

C’est un projet netstandard 2.0 disponible sur la plateforme nuget.org sous licence MIT. Son code source est d’ailleurs disponible sur Github.

Utilisation

Commençons par intégrer le plugin à un projet Xamarin.Forms en tapant la commande Install-Package App.User.LocationInfo -Version 1.0.0 dans Package Manager ou via son interface graphique:

Ensuite, Ajoutez le namespace App.User.LocationInfo.Services à la classe qui fera appel aux services de ce plugin.

Recupérer:

  • [x] L’adresse IP de l’utilisateur:
// Get current user IP Address
var ip = await TrackingService.GetUserIPAdressAsync();
  • [x] Le pays de l’utilisateur
// Get current user country code
var country_code = await TrackingService.GetUserCountryCodeAsync();

// Get current usercountry name
var country_name = await TrackingService.GetUserCountryNameAsync();
// Get BasicUserLocationInfo object
var basic_userlocationInfo = await TrackingService.GetBasicLocatioInfoAsync();
// Get UserLocationInfo object
var userlocationInfo = await TrackingService.GetLocationInfoAsync();

Quelques précisions

Certains se demandent sans doute si ce plugin n’est pas destiné à espionner les utilisateurs.

La réponse est non. Mon objectif en développant ce NuGet package est de permettre aux développeurs .NET/Xamarin de pouvoir améliorer l’expérience utilisateur dans leurs applications mobiles Xamarin et non à collecter illégalement des données sur les utilisateurs.

Vos contributions

Vos ISSUES et PULL REQUESTS seront les bienvenus sur le projet App.User.LocationInfo. ​

A venir !

Nous verrons dans l’article à venir, un exemple de projet complet utilisant ce NuGet package.


Commentaires