Deep Linking

Encourage customers to perform desired actions in the app by gently driving their flow through the app content

Compatible with iOS, Android and Windows, Cordova, Phonegap

By default, a tap on a push message opens an app’s home screen. Deep Links open a specified section of the app once a user taps on a push or in-app message. Highlight the new content, promotional pages, or sale offers by taking users there directly from your message. Boost conversions and improve user experience with Deep Linking!

This tutorial explains how to use Deep Linking to link to particular native pages from push notification on your iOS or Android app. Pushwoosh SDK supports opening Deep Links from Push Notifications, Rich Pages, and In-App Messages interactions.

Creating Deep Links

In Pushwoosh Control Panel open your App and go to Deep Links section and click "Add Deep Link". Enter the name of the deep link and its template. The template follows standard URI scheme which is scheme:[//domain][/]path[?query] The scheme must be unique to your application. You can also reference additional parameters that could be entered later by using {placeholders} in curly braces. You can use several placeholders in your deep link template.

The example below illustrates a deep link with the scheme com.pushwoosh, page name - promotion and query parameter id with placeholder promo_id:

Configuration

iOS

Use the following guide to set up Deep Linking for iOS

Android

For Android, please follow this guide

PhoneGap / Cordova

For applications developed with PhoneGap / Cordova, we recommend using this plugin. It's super easy to set deep links for Cordova and it works with Pushwoosh deep linking functionality out of the box.

First, you should add the plugin to your app and specify a scheme you want your app listen to:

$ cordova plugin add cordova-plugin-customurlscheme --variable URL_SCHEME=pushwoosh

This will set a deep link for pushwoosh:// scheme.

Usage

1. Your app can be launched by linking to it like this from a website or an email for example (all of these will work):

<a href="pushwoosh://">Open my app</a>
<a href="pushwoosh://somepath">Open my app</a>
<a href="pushwoosh://somepath?foo=bar">Open my app</a>
<a href="pushwoosh://?foo=bar">Open my app</a>

pushwoosh is the value of URL_SCHEME you used while installing this plugin.

2. If you're trying to open your app from another PhoneGap app, use the InAppBrowser plugin and launch the receiving app like this, to avoid a 'protocol not supported' error:

<button onclick="window.open('pushwoosh://', '_system')">Open the other app</button>

More detailed information on plugin usage you can find in plugin documentation.

Sending Deep Links

Select Deep Link in the Action tab when sending push notification and enter placeholder values. Woosh! You can save this in a Push Preset for later use and also pass custom data to the app with a deep link, if necessary.

Deep Links allow displaying the same image across all platforms with no need to specify the image URL for each platform separately. To add the image to your message containing a Deep Link, enter the URL into deep link’s params field.

The system looks at the available Open Graph meta tags for that URL. If there are any, og:image, og:title, og:description meta tags are parsed to the URL’s preview. By clicking Populate image settings, you set the og:image content as a value of the corresponding platform-specific params:

  • for iOS — iOS 10+ Media attachment field;

  • for Android — Banner field;

  • for Chrome — Large image field.

For example, if the following meta tag is specified on the entered URL: <meta property="og:image" content="https://www.pushwoosh.com/Storage/FILES/7/size475x318/876417.jpg" /> Then the image URL will be populated with: https://www.pushwoosh.com/Storage/FILES/7/size475x318/876417.jpg

As a result, the push notification is sent with the deep link you selected and the image specified in URL’s og:image meta tag.

If there is no og:image meta tag or it’s set improperly, the push message will contain no image unless you specify the image URL for each platform manually.