ouvrez google maps/google maps à réagir natif
Je suis en train d'ouvrir google maps ou cartes dans mon réagir application native, mais quand je lance l'appli sur mon Iphone/simulateur-je recevoir le message d'erreur "Ne savez pas comment l'ouvrir URI:...".
Ce que je fais de mal?
Mon code:
openGps() {
var url = 'geo:37.484847,-122.148386'
this.openExternalApp(url)
}
openExternalApp(url) {
Linking.canOpenURL(url).then(supported => {
if (supported) {
Linking.openURL(url);
} else {
console.log('Don\'t know how to open URI: ' + url);
}
});
}
est-il une manière similaire pour ouvrir l'application appareil photo?
OriginalL'auteur lolix | 2017-04-04
Vous devez vous connecter pour publier un commentaire.
Pour ouvrir une url avec étiquette personnalisée ios/android:
label
composant!de telles modifications const scheme = Plate-forme.OS === 'ios' ? 'cartes:0,0?q=' : 'geo:0,0?q=';
Cette réponse doit être marqué comme accepté, car fonctionne bien sur Android et iOS.
IOS carte est rendu mauvais latlang.
sur google maps, le marqueur le nom, les coordonnées et non pas l'étiquette :/
OriginalL'auteur Narek Ghazaryan
C'est parce que iOS n'a pas encore de support pour
geo:
pourtant, comme mentionné dans cette SORTE de réponse. Ce que vous pouvez faire est de détecter le système d'exploitation et:geo:
sur Androidmaps:
comme il va ouvrir Apple Maps, si je ne suis pas sûr de la façon d'envoyer les coordonnées. Ou peut-être l'ajouter à une carte google maps URL http et de l'ouvrir dans le navigateur.Pour exemple, votre
openGps
fonction pourrait ressembler à ceci:http://maps.apple.com/?ll=<lat>,<long>
ouhttp://maps.apple.com/?daddr=<lat>,<long>
pour démarrer la navigation.OriginalL'auteur Michael Cheng
vous pouvez le faire comme ceci:
Android:
où
q
est la destination lat + longIOS:
où
saddr
est l'adresse de début et dedaddr
est l'adresse de destination lat+longOriginalL'auteur oma
ou de vérifier si il y a une carte google application sur l'appareil, et si ne pas ouvrir l'emplacement dans le navigateur
OriginalL'auteur Ali Mohammad