Search code examples
androidandroid-manifestmanifestlaunch

How to launch app on click of url in android


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>

Solution

  • 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">