How to launch app on click of url in android

Divyesh Rudani picture Divyesh Rudani · Jan 23, 2017 · Viewed 27.2k times · Source

Launch app when click on url if app installed on device. if app not installed on device, open playstore.

<activity android:name=".ui.NewsCardActivity">
    <intent-filter>
        <data android:scheme="app" />
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
    </intent-filter>
</activity>

Answer

Manohar Reddy picture Manohar Reddy · Jan 23, 2017

You have to deep link your app, add following lines in activity (Manifiest.xml) which you want to launch

<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:host="screen" android:scheme="appname"/>
</intent-filter>

in browser when ever you click appname://screen your app activity will be launched,

replace appname and screen as per your requirement

Note if you type this url in browser it will search in google ,for this to work you have to write link in html page

<a href="appname://screen">Some text</a>

If not working the add android:exported="true" in activity

<activity
    android:name=".activity.MainActivity"
    android:exported="true">