Deeplink: Distinguishing and understanding URI schemes, universal links, and app links
Follow
Deeplink
http 혹은 https 로 시작하는 인터넷 주소는 모두 특정 서비스의 웹페이지로 이동합니다.
_
Enter
https://igaworks.com
in the address bar to go to the IGAWorks homepage.
_ _
Enter
https://dfinery.io
in the address bar to go to the DFINERY homepage.
There are similar functions in mobile apps as well.
This is Deeplink.
Deep linking performs the function of launching an app or moving it to a specific screen within the app when a specific address or value is entered.
In other words, when deep linking is used, users who respond to the advertisement experience the app running immediately and moving to a specific screen. Or, if you run the app after installing it, you will be taken directly to a specific screen (delayed deep linking). Therefore, from the marketers perspective, this is a feature that must be utilized to optimize advertising performance.
Deep links are divided into three ways.
- URI scheme method: Use deep link by registering URI scheme value in the app
- App Link: Provided by Android - Use deep link using domain address
- Universal Link: Provided by iOS - Use deep link using domain address
Even though they all perform deep linking functions, why are they differentiated into ‘URI Scheme’, ‘App Link’, and ‘Universal Link’ methods?
Let’s take a look at each function and difference.
Deep link using ‘URI Scheme’ method
Understanding the ‘URI Scheme’ method
The most commonly used deep linking method is URI Scheme.
Deep linking using URI scheme distinguishes apps by registering a scheme value in the app. A scheme is a value that can be registered for each app. “When a specific scheme value is called, a specific app is opened.” We carry out our promise. If you want to open the Twitter app, you can use the scheme value twitter://. This scheme value is registered by the developer as their own value for efficient app opening during app development.
Specific pages within the app are identified by the 'path' value.For example, if you want to open the membership registration page of the Twitter app, Use the value twitter://signup.
To summarize, the URI scheme method consists of two elements, Scheme://Path.
- Scheme = App specific (Twitter)
- Path = Specifies a page within the app (Membership registration page within Twitter)
For Android, register the scheme value in a file called Androidmanifest.xml as shown below.
[In the screenshot above, the item labeled android:scheme is the scheme value.]
For iOS, you can enter the scheme value in the URL Scheme item on the app information screen.
[Screen for registering scheme values in iOS]
Limitations of URI Scheme Method
URI scheme-based deep linking was an excellent marketing tool that launched apps directly through advertisements at a time when the number of apps was relatively small. However, as the number of apps increased, unexpected problems began to arise. The problem is when app scheme values overlap. From the perspective of app developers, there is currently no way to check whether the scheme value registered in the app is a unique value used only by their app.
Google Play apps use the market:// value as a scheme value to open their apps. Open markets such as OneStore and Samsung App Store also use this scheme value. Therefore, Android users will see a screen to select which app to run, as shown below.
[Problems that occur when the same market:// scheme value is used.]
In other words, when the Android system tries to open an app with the current market:// scheme value, it asks the user "These three apps all use the "market://" scheme value. Which app should I open?" This screen asks: Both Android and iOS have similar problems. There is no way for app developers to check whether the scheme value they applied is a unique value that is not used by other apps, and even if other apps use their scheme value, there is no way to prevent this.
Developers at Apple and Google wondered if there was a way to fundamentally prevent this. After much thought, Universal Link (available for iOS) and App Link (available for Android) were created.
Universal Link and App Link
Deep linking using webpage address
The Internet address of the site you are currently using all has a unique value. For example, IGA Works has a unique Internet address called igaworks.com, and DFINERY also has a unique address called dfinery.io.This is called a domain address.
Apple and Google developers decide to use this domain address as the deep link execution value. For example, if you enter http://naver.com in the address bar of your smartphone browser app, the Naver app will open immediately for you to use.
This function is called Universal Link on iOS and App Link on Android.
Reference (1):
[Add Android App Links]
Reference (2):
[Universal Links for Developers]
For Android, you can register the App Link domain in a file called Androidmanifest.xml as shown below.
(The example below was created based on the universal link and app link integration of the DFINERY tracking link.)
For iOS, you can register in Associated Domains under Singing & Capabilities.
Limitations of Universal Link and App Link
Unfortunately, Universal Link and App Link are not yet complete. This is because not all apps support Universal Link and App Link Open.
App Link only works in apps created by Google, and does not work properly in apps other than Google. Universal Link also does not work properly except for apps made by Apple.
The DFINERY team checked the results of running Universal Link and App Link in each major environment.
The results show that no single method perfectly responds to all environments. Therefore, we come to the conclusion that URI scheme method, universal link, and app link all need to be linked for smooth advertising operation and attribution.
App Link test results
test environment | test results | |
---|---|---|
1 | Run the app by shooting the QR code in the Android camera app | App link operation |
2 | Click a link in the Gmail app to launch the app | App link operation |
3 | Click the link in KakaoTalk to run the app | URI scheme operation |
4 | In the Naver app, enter the link in the address bar and run the app. | URI scheme operation |
5 | Launch the app by shooting the QR code with the camera in the Naver app | URI scheme operation |
6 | In Chrome, enter the tracking link in the address bar and run the app. | Deep linking not working |
7 | Click a link in Chrome to run an app | App link operation |
8 | In Samsung browser, enter link in address bar and run app | Deep linking not working |
9 | Click a link in Samsung browser to launch the app | App link operation |
Universal link test results
test environment | test results | |
---|---|---|
Enter the link in the Safari browser address bar and run the app |
URI scheme operation
|
|
2 | Launch an app by clicking a link in the Safari browser | URI scheme operation |
3 | Take a picture of the QA code with the iPhone camera app and run the app | Universal link operation |
4 | Click a link in your iPhone email app to launch the app | Universal link operation |
5 | Click a link in the Gmail app to launch the app | URI scheme operation |
6 | Click the link in KakaoTalk to run the app | URI scheme operation |
7 | In the Naver app, enter the link in the address bar and run the app. | URI scheme operation |
8 | Take a photo of the QR code with the camera in the Naver app and run the app | URI scheme operation |
9 | Enter the link in the Chrome address bar and run the app | URI scheme operation |
10 | Click a link to run an app app in Chrome | URI scheme operation |
Deep linking, learn more
Apply deep linking to your app
DFINERY only performs the role of receiving and executing the deep link settings set in the app, but the deep link itself must first be set in the app.In other words, you can use the deep link function only when deep link settings are completed within the app. It is easy to understand if you think that the advertiser app must create the key to open the door, and that DFINERY only performs the role of receiving the key and opening the door.
Therefore, if a marketer wants to use a deep link, he or she must obtain the settings (scheme, pass value, and url value) required to use the deep link through the app development team and then enter them in the tracking link settings option. ( Ad-Landing setting , tracking link issuance )
Delayed deep linking
(Deferred Deep Link)
This refers to a function that moves users who land on the market and run the app after installing it to a specific, designated app page, rather than the apps first screen.For example, when a user who participates in an advertisement with the 'A sneakers ad' tracking link goes to the market, installs and runs the app, they are taken directly to the 'A sneakers' product page.
DFINERY All-Link: Use all URI schemes, app links, and universal links
As seen earlier, deep linking alone, either URI scheme, universal link, or app link, cannot respond to all environments.
Therefore, in order to optimize advertising UX, the best way is to apply all three methods and use them in a complementary manner.
DFINERY tracking link provides an All-Link function that supports URI scheme, universal link, and app link in one link.You can create universal links and app links using the domain of the DFINERY tracking link.URI scheme operation is also supported so that attribution can be performed normally even in apps that do not support universal links and app links. In other words, in environments where universal links and app links do not work, the URI scheme operates as a second priority to ensure that app execution and desired screen movement can be completed normally.
For more information, please refer to the integration guide below.
Reference:
[Linking Android App Link]
Reference:
[Integrating iOS Universal Link]