やりたいこと
スマホでWebブラウザをみていたとき、
詳細はリンクやボタンなりでアプリが起動できるようにできるとよいなぁと。
その方法を調べてみました。
実現方法
調べてみた感じでは、以下のような方法があるみたい。
- Custom URL scheme
・URLスキームと呼ばれる[app-identifier://](app-identifierはアプリの識別子)ようなリンクを実装することでアプリを起動することができる。
・ただし、アプリをインストールしている必要がある。 - Universal Links
・従来のHTTPリンクでWebサイト/アプリのどちらを開くかを指定できる。
・アプリをインストールしていない場合、アプリストアにリンクすることができる。
・iOSのみの機能であり、Androidでは使えない。 - Firebase Dynamic Link
・従来のHTTPリンクでWebサイト/アプリのどちらを開くかを指定できる。
・アプリをインストールしていない場合、アプリストアにリンクすることができる。
・iOS、Androidの両方で使える。
まとめると以下のようなイメージみたい。
項目 | App インストール | 対応OS | 補足 |
---|---|---|---|
Custom URL scheme | 必須 | iOSのみ | |
Universal Links | 必須ではない | iOSのみ | ・iOS9以降で利用可能 |
Firebase Dynamic Link | 必須ではない | iOS/Android | ・Googleが提供 |
- 参考元:
個人的には
自分がやりたいことは
iOSアプリのみAPPインストール前提でいいので、
簡単に実装できそうな「Custom URL scheme」が良さそうです。
追加調査
「Custom URL scheme」を実装するうえで、以下について不明だったので追加調査しました。
- URLスキームの調べ方
- URLスキームの引数の調べ方
「Custom URL scheme」のURLスキームの調べ方
調べてみた感じでは、以下のような方法があるみたい。
- アプリ管理が出来た時代のバージョンのiTunesを使う方法
- アプリを使う方法(URLスキーム検索など)
- Webページを使う方法(休止しているサイトが多い)
・iPhoneアプリのURLスキームまとめページ
「Custom URL scheme」のURLスキームの引数の調べ方
これは全然見つからない。
というかアプリごとに違うので公開情報があるアプリは調べればいけるかもしれないが、
基本は公開されていない。
公式ホームページのリンクを参考にすると、もしかしたらわかるかも!
楽天証券の「iSPEED」を確認してみた。
もともと「WebからiOSアプリを起動する方法」を探したきっかけは、
楽天証券の「iSPEED」をWebサイトから起動できないかってところでした。
そのため「iSPEED」について調べてみました。
「iPhoneアプリのURLスキームまとめページ」で「iSPEED」を調べてみました。
URLスキームは[ispeed://]だと分かりました。
楽天証券のホームページで特定の銘柄のページを開くと
以下のように「アプリで開く」ボタンがあります。
このリンクを調べてみると、以下だと分かりました。
[ispeed://stock/detail?code=7203.T]
つまり「iSPEED」のURLスキームは銘柄コードを入れれば、開くことができることが分かりました。
ispeed://stock/detail?code=[銘柄コード].T
ちなみに、「アプリで開く」ボタンをクリックすると指定銘柄のサマリーページに飛べます。
以上!
コメント