如何从 React Native 应用程序打开默认 iOS 应用程序?
How to open default iOS apps from a React Native app?
我正在创建一个 React Native 应用程序,我希望能够从中打开默认应用程序。具体来说:
- Phone.app(点击我的应用程序中的按钮并打开 iOS 模态以呼叫特定号码)
- Apple 地图应用程序(点击我的应用程序中的一个按钮并打开带有指定目标目的地路线的 Apple 地图)
我知道我可以用
打开系统地图
<TouchableOpacity
onPress={() =>
Linking.openURL(`geo:${latitude},${longitude}`)}>
<Text>Open Map</Text>
</TouchableOpacity>```
并类似地为 phone 号码调用 openURL("tel:" + telephone)
。 (我故意省略了代码片段中的错误处理。)
接下来,应该有必要更新ios/Info.plist
以允许这些应用程序查询方案。我试着把这个放进去:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>geo</string>
<string>tel</string>
</array>
我仍然收到 EUNSPECIFIED
错误。我想也许我不应该将 LSApplicationQueriesSchemes
键作为 geo
和 tel
。但是,我无法找出应该放在那里的内容。
谢谢!
- 如果您使用的是模拟器,则只能测试 Web URL。其他
URL 需要实际设备进行测试。
geo
是 android only.
我正在创建一个 React Native 应用程序,我希望能够从中打开默认应用程序。具体来说:
- Phone.app(点击我的应用程序中的按钮并打开 iOS 模态以呼叫特定号码)
- Apple 地图应用程序(点击我的应用程序中的一个按钮并打开带有指定目标目的地路线的 Apple 地图)
我知道我可以用
打开系统地图<TouchableOpacity
onPress={() =>
Linking.openURL(`geo:${latitude},${longitude}`)}>
<Text>Open Map</Text>
</TouchableOpacity>```
并类似地为 phone 号码调用 openURL("tel:" + telephone)
。 (我故意省略了代码片段中的错误处理。)
接下来,应该有必要更新ios/Info.plist
以允许这些应用程序查询方案。我试着把这个放进去:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>geo</string>
<string>tel</string>
</array>
我仍然收到 EUNSPECIFIED
错误。我想也许我不应该将 LSApplicationQueriesSchemes
键作为 geo
和 tel
。但是,我无法找出应该放在那里的内容。
谢谢!
- 如果您使用的是模拟器,则只能测试 Web URL。其他 URL 需要实际设备进行测试。
geo
是 android only.