Skip to main content
Version: v5

@capacitor/app-launcher

The AppLauncher API allows your app to check if an app can be opened and open it.

On iOS you can only open apps if you know their url scheme.

On Android you can open apps if you know their url scheme or use their public package name.

Note: On Android 11 and newer you have to add the app package names you want to query in the AndroidManifest.xml inside the queries tag.

Example:

<queries>
<package android:name="com.getcapacitor.myapp" />
</queries>

Installโ€‹

npm install @capacitor/app-launcher@latest-5
npx cap sync

Exampleโ€‹

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>

Check if an app can be opened with the given URL.

On iOS you must declare the URL schemes you pass to this method by adding the LSApplicationQueriesSchemes key to your app's Info.plist file. Learn more about configuring Info.plist.

This method always returns false for undeclared schemes, whether or not an appropriate app is installed. To learn more about the key, see LSApplicationQueriesSchemes.

ParamType
options
CanOpenURLOptions

Returns:

Promise<CanOpenURLResult>

Since: 1.0.0


openUrl(...)โ€‹

openUrl(options: OpenURLOptions) => Promise<OpenURLResult>

Open an app with the given URL. On iOS the URL should be a known URLScheme. On Android the URL can be a known URLScheme or an app package name.

ParamType
options
OpenURLOptions

Returns:

Promise<OpenURLResult>

Since: 1.0.0


Interfacesโ€‹

CanOpenURLResultโ€‹

PropType
valueboolean

CanOpenURLOptionsโ€‹

PropType
urlstring

OpenURLResultโ€‹

PropType
completedboolean

OpenURLOptionsโ€‹

PropType
urlstring