我正在开发一个react原生移动应用程序,我想专门向谷歌地图应用程序发送一个意向(geo:…(。在本机示例中,它们使用Intent.setPackage((函数,但我找不到类似的react本机解决方案。
这是我的代码,目前允许用户在可能的应用程序之间进行选择。我希望只有谷歌地图应用程序管理的意图。
<Text
style={{ textDecorationLine: 'underline', color: PURPLE }}
onPress={async () => {
const scheme = Platform.select({ ios: 'maps:0,0?q=', android: 'geo:0,0?q=' });
const latLng = `${item.latitude},${item.longitude}`;
const label = item.address;
const url = Platform.select({
ios: `${scheme}${label}@${latLng}`,
android: `${scheme}${latLng}(${label})`
});
const supported = await Linking.canOpenURL(url);
if (supported) {
await Linking.openURL(url);
} else {
Alert.alert(`Don't know how to open current address`);
console.log('error opening link', url);
}
}
}
>
{context.translations.GO_TO_MAPS}
</Text>
感谢您帮助
我不确定这是否会对你有所帮助,但我用它在谷歌中打开地址
if(Platform.OS === 'ios'){
Linking.openURL(`maps://app?saddr=${latitude}+${longitude}&daddr=${parseFloat(latitude)}+${parseFloat(longitude)}`)
} else{
Linking.openURL(`google.navigation:q=${parseFloat(latitude)}+${parseFloat(longitude)}`)
}