Dans l'article précédent, nous avons d'abord examiné ce qu'est la localisation virtuelle et pourquoi certains applications peuvent afficher des coordonnées différentes de la position réelle. Sur la plateforme Android, cela repose en fait sur un mécanisme de test bien défini, et ne dépend pas uniquement d'une application qui modifierait les chiffres GPS. Dans les options pour développeurs d'Android, il existe la fonction « Sélectionner l'application de localisation simulée ». L'explication de Google concernant cette fonction est claire : elle est principalement destinée à tester si les applications fonctionnent correctement dans des localisations différentes. Ainsi, si vous souhaitez simplement comprendre la localisation virtuelle sur Android, il est prioritaire de comprendre le concept de localisation simulée plutôt que de télécharger un outil de localisation dont l'origine est douteuse.

Qu'est-ce que la localisation virtuelle sur Android ?

Les données de localisation d'Android ne sont pas directement fournies à chaque application pour lire les signaux GPS, mais sont fournies par le service de localisation du système. L'objet de localisation d'Android contient des informations telles que la latitude, la longitude, l'heure, la précision, etc., et le système permet également aux environnements de test de soumettre des localisations simulées. Cela signifie que le concept central de la localisation virtuelle est de permettre au service de localisation du système d'obtenir une position de test, puis de la transmettre aux applications nécessitant ces informations. Cela diffère complètement du fait de se déplacer réellement dans une autre ville et ne signifie pas que toutes les informations liées à la localisation du téléphone changent également. Android propose même des paramètres spécifiques pour l'application de localisation simulée, permettant aux développeurs de choisir quelle application sera responsable de la fourniture de la localisation simulée. C'est l'une des raisons pour lesquelles la localisation virtuelle sur Android est souvent utilisée pour tester les applications.

Comment fonctionnent les positions simulées dans les options pour développeurs ?

Les options pour développeurs d'Android ne sont pas des fonctionnalités auxquelles les utilisateurs ordinaires accèdent quotidiennement. Elles comprennent divers outils de développement et de test comme le débogage USB, Debug App et la localisation simulée. Après avoir activé la localisation simulée, vous pouvez désigner une application prenant en charge la simulation GPS pour fournir une position de test. Du point de vue du développement, cette fonctionnalité est très utile. Par exemple, lors du développement d'une application de cartographie, de météo ou de transport, il n'est pas possible de se rendre sur place à chaque test. Les développeurs peuvent donc utiliser la localisation simulée pour vérifier si l'application fonctionne correctement à différentes positions géographiques. Le LocationManager d'Android fournit également des mécanismes pour tester les positions ; une position de test peut être marquée comme localisation simulée, et les applications peuvent même utiliser l'API fournie par Android pour déterminer si une position est une localisation simulée.

À quoi peut servir la localisation virtuelle sur Android ?

L'utilisation la plus typique est en réalité le développement et le test de logiciels, et non pas la tromperie de localisation comme beaucoup pourraient l'imaginer.

  1. Test de développement d'application
  2. Test des fonctionnalités de cartographie et de navigation
  3. Test de contenus géographiques dans différentes villes
  4. Test de scénarios d'erreurs ou de situations anormales

Par exemple, une application météo a besoin d'afficher le temps local en fonction de l'emplacement de l'utilisateur. Le développeur peut tester différentes positions comme Tokyo, Londres ou New York sans avoir à se rendre dans ces villes. Pour les services qui changent de contenu en fonction de la position géographique, ce type de test peut faire gagner beaucoup de temps. La documentation officielle d'Android place également la localisation simulée dans le contexte de test des fonctionnalités de position des applications.

Pourquoi certaines applications peuvent-elles détecter l'utilisation de la localisation virtuelle ?

C'est un aspect que de nombreux utilisateurs peuvent négliger lorsqu'ils découvrent la localisation virtuelle pour la première fois. Android permet aux applications de déterminer si certaines localisations sont marquées comme étant des localisations simulées. L'API officielle de localisation offre la méthode isMock(), permettant aux applications d'identifier si les données de localisation proviennent d'une configuration simulée. Ainsi, il ne suffit pas que la position sur la carte du téléphone change pour que toutes les applications l'interprètent comme une position réelle. Certaines applications peuvent uniquement nécessiter les coordonnées, tandis que d'autres vérifieront plus en profondeur la source de la position ou d'autres états liés à l'appareil. C'est également la raison pour laquelle différentes applications peuvent réagir de manière totalement différente face à la localisation virtuelle. Une application peut afficher la position désignée normalement, mais cela ne signifie pas qu'une autre appli acceptera nécessairement les mêmes données de position.

Quelles précautions faut-il prendre lors de l'utilisation de la localisation virtuelle sur Android ?

Tout d'abord, il est préférable de considérer la localisation virtuelle comme un mécanisme de test, plutôt que comme une méthode pour masquer complètement la position réelle. Même si une application obtient des coordonnées simulées, d'autres services peuvent toujours obtenir des indices de localisation différents par le biais de l'IP, du Wi-Fi, du réseau mobile ou des informations liées au compte. De plus, les permissions de localisation d'Android sont divisées entre celle de localisation précise et approximative. Sur Android 12 et versions ultérieures, les utilisateurs peuvent choisir de ne fournir qu'une localisation approximative, donc si une application peut obtenir une position précise, cela dépend également des paramètres de permissions accordés par l'utilisateur. Si vous ne testez que votre propre application, il est plus raisonnable d'utiliser les outils et mécanismes de test fournis par Android. Si vous devez installer un outil de localisation virtuel tiers, vérifiez d'abord son origine, ses permissions et sa politique de confidentialité, afin de ne pas céder trop de permissions de l'appareil pour une simple fonctionnalité de localisation.

Concept de la localisation simulée et des données de localisation sur le téléphone Android

Questions fréquentes sur la localisation virtuelle sur Android

Puis-je directement modifier la position du téléphone après avoir ouvert les options de développeur ?

Pas exactement. Les options pour développeurs ne sont qu'un ensemble de fonctionnalités de développement et de test pour Android, incluant les paramètres de localisation simulée, mais vous devez généralement encore choisir une application de localisation simulée pour fournir la position de test. La documentation officielle d'Android définit « Sélectionner l'application de localisation simulée » comme celui qui choisit l'application fournissant la position GPS simulée, principalement à des fins de test du comportement des applications dans d'autres localisations. Ainsi, ouvrir les options pour développeurs ne signifie pas que le téléphone commence à effectuer une localisation virtuelle. Vous devez également comprendre la relation entre le système du téléphone, l'application de localisation simulée et l'application cible pour savoir d'où proviennent les données de localisation.

Pourquoi certaines applications peuvent-elles toujours détecter une position anormale même si la localisation virtuelle a réussi ?

Parce que les applications n'examinent pas seulement la latitude et la longitude lorsqu'elles obtiennent une position. L'API fournie par Android permet aux applications de déterminer si la position est d'origine simulée, donc certaines applications peuvent savoir si les données actuelles proviennent d'une localisation simulée. De plus, la position peut également être déterminée par d'autres sources, telles que l'IP, le Wi-Fi, le réseau mobile et l'activité du compte. Si les différentes sources obtiennent des positions dont les écarts sont importants, le service peut considérer que l'état actuel de la position ne correspond pas à une situation normale. Ainsi, la réussite d'affichage d'une coordonnée en localisation simulée et faire croire à tous les services que vous êtes réellement à cet endroit sont deux choses complètement différentes.

Utiliser la localisation virtuelle sur Android affectera-t-elle la sécurité de mon téléphone ?

L'utilisation normale des fonctionnalités de développement et de test fournies par Android ne signifie pas que le téléphone est attaqué. Ce qu'il faut vraiment surveiller, ce sont les outils tiers que vous choisissez et les permissions qu'ils exigent. Si un outil de localisation exige des programmes d'origine douteuse, une demande excessive de permissions sur l'appareil, des connexions à des comptes importants, ou demande la désactivation des fonctionnalités de sécurité du système, il est préférable de s'arrêter et de vérifier la raison. La localisation virtuelle n'est qu'une fonctionnalité, il n'est pas nécessaire d'accepter des risques de confidentialité inutiles pour changer de position. Si le but est de tester une application, utiliser les mécanismes de développement officiels est généralement plus facile à comprendre et également plus pratique pour revenir aux paramètres d'appareil d'origine après les tests.

Une chose à retenir : La localisation virtuelle sur Android est principalement utilisée pour le test; elle peut fournir des coordonnées simulées, mais cela ne signifie pas que toutes les applications l'accepteront ou ne pourront pas le reconnaître.