Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
L’application de carte native sur chaque plateforme peut être lancée à partir d’une Xamarin.Forms application par la Xamarin.EssentialsLauncher classe. Cette classe permet à une application d’ouvrir une autre application via son schéma d’URI personnalisé. La fonctionnalité du lanceur peut être appelée avec la OpenAsync méthode, en passant un ou Uri un string argument qui représente le schéma d’URL personnalisé à ouvrir. Pour plus d'informations sur Xamarin.Essentials, consultez Xamarin.Essentials.
Remarque
Une alternative à l’utilisation de la Xamarin.EssentialsLauncher classe consiste à utiliser sa Map classe. Pour plus d’informations, consultez Xamarin.Essentials: Mapper.
L’application mappe sur chaque plateforme utilise un schéma d’URI personnalisé unique. Pour plus d’informations sur le schéma d’URI de mappage sur iOS, consultez Liens cartographiques sur developer.apple.com. Pour plus d’informations sur le schéma d’URI de mappage sur Android, consultez Cartes Guide du développeur et Google Cartes Intentions pour Android sur developers.android.com. Pour plus d’informations sur le schéma d’URI de mappage sur le plateforme Windows universelle (UWP), consultez Lancer l’application Cartes Windows.
Lancer l’application de carte à un emplacement spécifique
Un emplacement dans l’application cartes natives peut être ouvert en ajoutant des paramètres de requête appropriés au schéma d’URI personnalisé pour chaque application cartographique :
if (Device.RuntimePlatform == Device.iOS)
{
// https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html
await Launcher.OpenAsync("http://maps.apple.com/?q=394+Pacific+Ave+San+Francisco+CA");
}
else if (Device.RuntimePlatform == Device.Android)
{
// open the maps app directly
await Launcher.OpenAsync("geo:0,0?q=394+Pacific+Ave+San+Francisco+CA");
}
else if (Device.RuntimePlatform == Device.UWP)
{
await Launcher.OpenAsync("bingmaps:?where=394 Pacific Ave San Francisco CA");
}
Cet exemple de code entraîne le lancement de l’application de carte native sur chaque plateforme, avec la carte centrée sur une broche représentant l’emplacement spécifié :
Lancer l’application de carte avec des instructions
L’application cartes natives peut être lancée affichant des instructions en ajoutant les paramètres de requête appropriés au schéma d’URI personnalisé pour chaque application cartographique :
if (Device.RuntimePlatform == Device.iOS)
{
// https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html
await Launcher.OpenAsync("http://maps.apple.com/?daddr=San+Francisco,+CA&saddr=cupertino");
}
else if (Device.RuntimePlatform == Device.Android)
{
// opens the 'task chooser' so the user can pick Maps, Chrome or other mapping app
await Launcher.OpenAsync("http://maps.google.com/?daddr=San+Francisco,+CA&saddr=Mountain+View");
}
else if (Device.RuntimePlatform == Device.UWP)
{
await Launcher.OpenAsync("bingmaps:?rtp=adr.394 Pacific Ave San Francisco CA~adr.One Microsoft Way Redmond WA 98052");
}
Cet exemple de code entraîne le lancement de l’application de carte native sur chaque plateforme, avec la carte centrée sur un itinéraire entre les emplacements spécifiés :

