Here is an explanation of using deep links in navigation component:
https://developer.android.com/guide/navigation/navigation-deep-link
It says:
An explicit deep link is a single instance of a deep link that uses a PendingIntent to take users to a specific location within your app. When a user opens your app via an explicit deep-link, the task back stack is cleared and replaced with the deep link destination.
Now the question is what are the differences between Deep Links
, Android App Links
, App Indexing
, and Firebase Dynamic Links
and when should we use each one of them?
Also, there is another point that should we set up all of them?
Dynamic Links are deep links into an app that work whether or not users have installed the app yet. When users open a Dynamic Link into an app that is not installed, the app's Play Store page opens, where users can install the app. After users install and open the app, the app displays the deep-linked content.
When a user click an URL, it might open a dialog which asks the user to select one of multiple apps handling the given URL. On the other hand, An Android App Link is a deep link based on your website URL that has been verified to belong to your website. When user clicks that URL, it opens your app.
Dynamic Links are smart URLs that allow you to send existing and potential users to any location within your iOS or Android app. They survive the app install process, so even new users see the content they're looking for when they open the app for the first time. Dynamic Links are no-cost forever , for any scale.
Which types of deep links are supported? There are 3 types of deep links that Google Ads can support for App campaigns for engagement, app dynamic remarketing, and Search, Shopping, and Display campaigns. Note: Google Ads doesn't support redirects or third-party deep linking solutions, which use redirects.
As you know a Deep Link
is the simplest one which is totally local in your app. Activities can be triggered by clicking on a specific pattern URI
. The pattern is defined in android Manifest
using intent-filter
. If multiple handlers existed for a URI
, the Android system allows the user to select the target app from a dialog. It is obvious that if your app is not installed on the device, the Deep Link
does not work. Additional data which is used by the app carried by URL query params.
Android App Links
are the same as Deep Links
with a small difference. Your app can introduce itself as the default handler of specific pattern links. So when there are several apps to handle the target link, your app handles it without showing app-selection dialog. Furthermore, if the user doesn't want the app to be the default handler, they can override this behavior from their device's system settings. Android App Links
feature is only available on Android 6.0 (API level 23) and higher.
Dynamic Links
eliminates DeepLink
weaknesses. With Dynamic Links
, you treat on all platforms such as Android, iOS and web in a similar way. It seamlessly transits users from your mobile website to the equivalent content within your app (if the user has not installed your app on her/his device, the content would be shown after app installation). Furthermore, you can see the log of a Dynamic Link
in the Firebase console. Another feature is to find out where the user clicked on the link. (Places you share the link)
App Indexing
is a bit different thing. Its focus is on google search results. Using App Indexing
, Google indexes the content of your app as well as your website. If the existing URL
s in-app and website are the same, Google verifies that you own both of them. Then in Google's search results, users who have installed your app on their devices go directly to the content in your app when they click on a link. Furthermore, it's possible to index personal contents in the app by Google. So when the user searches a keyword in Google, related in-app contents will be shown in search results.
1)Deep links:
For example when go to you tube and select share video option by link.
Then copy the link and paste in note pad and save it .Then open the file in android device (tablet/mobile,etc).
Then click the link then see what happens .
If there is a youtube app means the android os asks user to choose an option youtube app or browser,etc.
If user clicks youtube app then the link is processed in the you tube app .
.
Deep link is a link that make the android OS to search the suitable app which is capable to process the text/link and if more than 1 found means it ask to select which is want.
We can make our app will use deep link.
Make the required activity of the app (which activity you need to open when the link is clicked) as a browsable via intent in the android manifest and action as View.
Refer:
1)https://developer.android.com/training/app-links/deep-linking
sample code:
<activity android:name="com.example.android.GizmosActivity" android:label="@string/title_gizmos" > <intent-filter android:label="@string/filter_view_http_gizmos"> <action **android:name="android.intent.action.VIEW**" /> <category android:name="android.intent.category.DEFAULT" /> <**category android:name="android.intent.category.BROWSABLE**" /> <!-- Accepts URIs that begin with "http://www.example.com/gizmos” --> <data android:scheme="http" android:host="www.example.com" android:pathPrefix="/gizmos" /> <!-- note that the leading "/" is required for pathPrefix--> </intent-filter> <intent-filter android:label="@string/filter_view_example_gizmos"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <!-- Accepts URIs that begin with "example://gizmos” --> <data android:scheme="example" android:host="gizmos" /> </intent-filter> </activity>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With