Android

[Android] アプリが存在していればアプリを起動し、アプリが存在しなければマーケットを開くリンク

Android でアプリが存在していればアプリを起動し、アプリが存在しなければそのマーケットを開くリンクの作り方です。

前提として、起動したいアプリの AndroidManifest.xml の intent-filter に、以下の内容が記述されている必要があります。これで iOS アプリのように、URL scheme による起動に対応できます。

<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="myapp" android:path="/" />
</intent-filter>

そして、リンクが以下となります。スキーム(myapp)が存在していればアプリを起動し、なければマーケット(パッケージ名:com.rakuishi.myapp)を開きます。

<a href="intent://#Intent;scheme=myapp;package=com.rakuishi.myapp;end">Open myapp</a>

参考

Android Intents with Chrome - Google Chrome