Skip to content

Cordova plugin for delegating handling of URL scopes to the application.

License

Notifications You must be signed in to change notification settings

AyogoHealth/cordova-plugin-app-scope

Repository files navigation

cordova-plugin-app-scope

This plugin permits registering the application as a handler for a URL scope, and remapping URLs within that scope to the application bundle. This allows for deep linking from web URLs into the application using Universal Links on iOS and App Links on Android.

This plugin is compatible with cordova-plugin-code-push.

Installation

cordova plugin add cordova-plugin-app-scope

Supported Platforms

  • iOS
  • Android

Usage

This plugin will take an HTTPS URL scope, and translate any URL within that scope into a local path to within the application bundle. For example, if the scope were defined as https://example.com/myapp/ and the app were asked to load https://example.com/myapp/products/index.html, it would rewrite the URL to point to the bundled www files of the Cordova application. In this example on Android, it would result in file:///android_asset/www/products/index.html.

The URL scope must be HTTPS, must end with a trailing slash, and needs to be defined in config.xml as a preference with the name "Scope":

<preference name="Scope" value="https://example.com/myapp/" />

In addition to rewriting URLs when loaded in the Cordova application, the plugin will also attempt to register the application as a system-wide handler for URLs matching the scope. This requires some additional server-side configuration at the website matching the URL scope:

The plugin will take care of setting up the Associated Domains entitlements for iOS and the Intent filters for Android, but you must set up the assetlinks.json and apple-app-site-association files on the web server.

If you want to allow your iOS app to use web credentials from Safari, you'll also need to include webcredentials in your apple-app-site-association file.

JavaScript API

This plugin exposes no API to the application.

Contributing

Contributions of bug reports, feature requests, and pull requests are greatly appreciated!

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Licence

Released under the Apache 2.0 Licence. Copyright © 2018 Ayogo Health Inc.