Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


Deep linking on Android

Explains how to use deep linking on Android devices.
Read time 2 minutesLast updated 8 hours ago

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.