Stax
Tools

Deep Link Generator

Generate custom scheme URLs, Android Intent URLs, and iOS Universal Links.

myapp://open/product/123?ref=banner&utm_source=email
<!-- App Store / Play Store smart banner -->
<meta name="apple-itunes-app" content="app-id=123456789" />
<meta name="google-play-app" content="app-id=com.example.myapp" />

<!-- Universal link intent -->
<a href="myapp://open/product/123?ref=banner&utm_source=email"
   onclick="setTimeout(function(){ window.location='https://example.com/product/123'; }, 1500)">
  Open in app
</a>
Popular app schemes — click to fill

Deep Link Generatorの仕組み

Deep Link GeneratorはiOSおよびAndroidアプリ向けに正しい形式のディープリンクURLを構築します。URIスキーム、ホスト、パス、クエリパラメータを入力すると、カスタムスキームURL、Android Intent URL、iOS Universal Link / App Link形式が生成されます。また、フォールバックロジックを手動で書かずにWebページやマーケティングメールに埋め込むためのHTMLスニペットも提供されます。

カスタムURIスキームは myapp://host/path?param=value の形式をとります。アプリのInfo.plist(iOS)またはAndroidManifest.xml(Android)に登録され、タップするとアプリが起動します。例えば、twitter:// はTwitterを、mailto:// はメールクライアントを開きます。カスタムスキームは実装が簡単ですが、アプリがインストールされていない場合のApp Storeへのフォールバックがありません。iOSではUniversal Linksがこの制限を解決します。

Universal LinksはAssociated Domainsのエンタイトルメントと /.well-known/apple-app-site-association に配置されたapple-app-site-association(AASA)JSONファイルを使った標準的なHTTPS URL(例:https://example.com/profile/123)を使用します。アプリがインストールされている場合、iOSは一致するHTTPS URLをインターセプトしてアプリを直接開きます。インストールされていない場合はブラウザで通常のWebページにフォールスルーし、リンク切れのないシームレスな体験を提供します。

Android App LinksはUniversal Linksと同様に /.well-known/assetlinks.json のDigital Asset Links JSONを使います。intent:// URL形式はAndroid固有リンクのもう一つの選択肢です:intent://profile/123#Intent;scheme=myapp;package=com.example.app;end。この構文でフォールバックURL、Play Storeへの直接リダイレクトのパッケージ名、プレーンなURIスキームでは表現できないAndroid固有のパラメータを指定できます。

Androidでは adb shell am start -a android.intent.action.VIEW -d "myapp://test/path" でコマンドラインからディープリンクをテストできます。iOSでは xcrun simctl openurl booted "myapp://test/path" でシミュレーターのリンクをテストします。ツールの出力にはこれらのテストコマンドが設定済みリンクで事前入力されているため、開発中に手動で文字列を構築することなく、すぐにコピーして実行できます。

よくある質問

What is a deep link?
A deep link is a URL that opens a specific location inside a mobile app, rather than just opening the app's home screen. For example, myapp://product/123 would open a specific product page.
What is the difference between URI scheme and Universal Link?
URI scheme (myapp://) is the old method — if the app isn't installed, the OS shows an error. Universal Links (https://) fall back to a website if the app isn't installed, providing a better user experience.
What are Firebase Dynamic Links?
Firebase Dynamic Links are smart URLs that work across platforms. They route users to the right place depending on whether the app is installed, and survive app installs (attributing the original click even after installation).

関連ツール