Version: Unity 6.6 (6000.6)
Language : English
Set the application entry point for your Android application
Device features and permissions

Deep linking on Android

Deep links are hyperlinks outside of your application that take a user to a specific location within the application rather than a website. When a user clicks a deep link, the application opens from the designated location, such as a specific scene in a Unity application. For more information about deep links and how to use them, refer to Deep linking.

Enable deep linking for Android applications

Use an intent filter to enable deep linking for Android applications. An intent filter overrides the standard Android App Manifest to include a specific intent filter section for Activity.

To set up an intent filter, use the following steps:

  1. Navigate to Edit > Project Settings > Player.
  2. In the Android settings tab, expand the Publishing Settings section.
  3. In the Build section, enable Custom Main Manifest. This creates a new file called AndroidManifest.xml in Assets/Plugins/Android.
  4. In the Project window, go to Assets > Plugins > Android and open the AndroidManifest.xml file.
  5. Add the following code sample inside the Unity<activity> element, named com.unity3d.player.UnityPlayerGameActivity or com.unity3d.player.UnityPlayerActivity, and save the file.
<intent-filter>
  <action android:name="android.intent.action.VIEW" />
  <category android:name="android.intent.category.DEFAULT" />
  <category android:name="android.intent.category.BROWSABLE" />
  <data android:scheme="unitydl" android:host="mylink" />
</intent-filter>

The built application now opens when the device processes a URI that uses the unitydl scheme and has the host mylink, for example unitydl://mylink/path. The android:host attribute matches the host component of the URI, not a text prefix. A URI such as unitydl://mylink.example.com/path doesn’t match this intent filter even though it starts with the same characters. Remove android:host to match any URI that uses the unitydl scheme, including opaque URIs such as unitydl:mylink.

Note: unitydl is a custom URL scheme, and Android doesn’t verify custom schemes. Android link verification applies only to http and https App Links, so the count of verified links stays at zero for a custom scheme. For information about verified links, refer to the Android developer documentation on Verify App Links.

Use deep linking on Android

After you enable deep links for Android, the way that you use them is platform-agnostic. For information on how to handle deep links when your application opens, refer to Using deep links.

Set the application entry point for your Android application
Device features and permissions