expo-linking
expo-linking
开放Beta测试文档 作为预发布开放Beta测试的一项内容,亚马逊提供了此技术文档。随着亚马逊收到反馈并对功能进行迭代,所描述的这些功能可能会发生变化。有关最新功能的信息,请参阅发布说明。
@amazon-devices/expo-linking为您的应用提供使用深层链接与其他已安装的应用进行交互的实用工具。它还为构造和解析应用中的深层链接提供了帮助程序方法。此模块是React Native Linking模块的扩展。
安装
- 在
package.json文件中添加JavaScript库依赖项。dependencies: { ... "@amazon-devices/expo-linking": "~2.0.0", "expo": "~50.0.0", ... } - 使用
npm install命令重新安装依赖项。
示例
import * as Linking from '@amazon-devices/expo-linking';
import React, {useEffect, useState} from 'react';
import {Button, StyleSheet, Text, View} from 'react-native';
const URL = 'pkg://com.amazondeveloper.uisvg-demo.main';
export const App = () => {
const [parsedUrl, setParsedUrl] = useState<string | null>(null);
useEffect(() => {
const parsed = Linking.parse(URL);
setParsedUrl(JSON.stringify(parsed, null, 2));
}, []);
const onLinking = async () => {
const supported = await Linking.canOpenURL(URL);
if (supported) {
await Linking.openURL(URL);
}
};
return (
<View style={styles.container}>
{parsedUrl && <Text style={styles.text}>{parsedUrl}</Text>}
<Button title="链接到应用" onPress={onLinking} />
</View>
);
};
const styles = StyleSheet.create({
container: {
backgroundColor: 'white',
flex: 1,
},
text: {
color: 'black',
fontSize: 32,
},
});
API参考
请您查看以下专门文档页面,了解有关此库、API参考等的信息: 针对expo-linking的官方Expo文档(仅提供英文版)。
挂钩
| 挂钩 | 描述 |
|---|---|
useURL |
返回初始URL,然后返回对该网址进行的任何后续更改。 |
方法
| 方法 | 描述 |
|---|---|
canOpenURL |
确定已安装的应用是否可以处理给定的URL。在网页上,此项总是返回true,因为没有API可以检测哪些URL可以打开。 |
collectManifestSchemes |
从清单中收集平台方案清单。此方法基于@expo/config-plugins中的Scheme模块,这些模块用于在预构建原生应用之前收集方案。 |
createURL |
在给定可选路径和查询参数组的情况下,用于构建应用中深层链接的帮助程序方法。创建默认带有两个斜杠的URI方案。裸式和独立式方案必须在expo.scheme下的Expo配置(app.config.js或app.json)中定义。 |
getInitialURL |
如果应用通过链接启动,则获取用于启动应用的URL。 |
hasConstantsManifest |
确保用户已在裸工作流程中关联了expo-constants清单。 |
hasCustomScheme |
返回应用是否已使用自定义方案进行配置。 |
openSettings |
打开操作系统设置应用并显示该应用的自定义设置(如果有)。 |
openURL |
尝试使用已安装的应用打开给定的URL。 |
parse |
用于从URL中解析出深层链接信息的帮助程序方法。 |
parseInitialURLAsync |
将React Native的Linking.getInitialURL() 包装在Linking.parse() 中的帮助程序方法。从最初用于打开体验的URL中解析深层链接信息。如果没有链接打开了应用,则所有字段都将为null。 |
resolveScheme |
返回代表已解析方案的字符串。如果配置了自定义方案,它将返回该方案。 |
事件订阅
| 订阅 | 描述 |
|---|---|
addEventListener |
通过侦听url事件类型并提供处理程序,向Linking变化添加处理程序。建议改用useURL() 挂钩。 |
支持的版本
| 程序包版本 | 基于 | @amazon-devices/react-native-kepler版本 |
|---|---|---|
| 2.0.x | 6.1.1 | 2.0.x |
其他资源
有关其他库的信息,请参阅支持的第三方库和服务。
Last updated: 2025年9月30日

