@capacitor/app-launcher
AppLauncher API 允许您的应用程序检查应用程序是否可以打开并打开它。
在 iOS 上,您只能在知道其 URL 方案的情况下打开应用程序。
在 Android 上,您可以在知道其 URL 方案或使用其公共包名的情况下打开应用程序。
**注意:**在 Android 11 及更高版本上,您必须将要查询的应用程序包名添加到 AndroidManifest.xml
内部的 queries
标签中。
示例
<queries>
<package android:name="com.getcapacitor.myapp" />
</queries>
安装
npm install @capacitor/app-launcher
npx cap sync
示例
import { AppLauncher } from '@capacitor/app-launcher';
const checkCanOpenUrl = async () => {
const { value } = await AppLauncher.canOpenUrl({ url: 'com.getcapacitor.myapp' });
console.log('Can open url: ', value);
};
const openPortfolioPage = async () => {
await AppLauncher.openUrl({ url: 'com.getcapacitor.myapp://page?id=portfolio' });
};
API
canOpenUrl(...)
canOpenUrl(options: CanOpenURLOptions) => Promise<CanOpenURLResult>
检查应用程序是否可以使用给定的 URL 打开。
在 iOS 上,您必须通过将 LSApplicationQueriesSchemes
键添加到您的应用程序的 Info.plist
文件中来声明传递给此方法的 URL 方案。了解有关配置 Info.plist
的更多信息。
此方法始终对未声明的方案返回 false,无论是否安装了相应的应用程序。要了解有关该密钥的更多信息,请参阅 LSApplicationQueriesSchemes。
参数 | 类型 |
---|---|
options | CanOpenURLOptions |
**返回:** Promise<CanOpenURLResult>
自 1.0.0
openUrl(...)
openUrl(options: OpenURLOptions) => Promise<OpenURLResult>
使用给定的 URL 打开一个应用程序。在 iOS 上,URL 应该是一个已知的 URL 方案。在 Android 上,URL 可以是一个已知的 URL 方案或一个应用程序包名。
参数 | 类型 |
---|---|
options | OpenURLOptions |
**返回:** Promise<OpenURLResult>
自 1.0.0
接口
CanOpenURLResult
属性 | 类型 |
---|---|
value | 布尔值 |
CanOpenURLOptions
属性 | 类型 |
---|---|
url | 字符串 |
OpenURLResult
属性 | 类型 |
---|---|
completed | 布尔值 |
OpenURLOptions
属性 | 类型 |
---|---|
url | 字符串 |