書いた経緯
javascriptからURLスキームを利用して、パラメータを与えつつAndroidアプリを開く方法が割と見つからなかったため
はじめに
単純にAndroidアプリをJSから開く方法は他で解説が沢山あったので、詳しくは書かない。
普通に開く(パラメータなし)
intent://' + [ホスト名] + '/#Intent;scheme=' + [スキーム名] + ';package=' + [アンドロイドパッケージ名] + ';category=android.intent.category.BROWSABLE;action=android.intent.action.VIEW;end'
※上記[]の箇所を変数化して、そのまま代入すれば動くはず。
パラメータを与えつつ開く
intent://' + [ホスト名] + '/#Intent;scheme=' + [スキーム名] + ';package=' + [アンドロイドパッケージ名] + ';category=android.intent.category.BROWSABLE;action=android.intent.action.VIEW;S.url=https://google.com;S.hoge=hogehoge;end'
※上記のパラメータは、String型での受け渡しとなるので、'S.'と指定している。
'型'.'受け渡し変数名'='パラメータ'で受け渡し可能となる。
| 型 | 記述方法 |
|---|---|
| String | 'S' |
| Boolean | 'B' |
| Byte | 'b' |
| Character | 'C' |
| Duyble | 'd' |
| Float | 'f' |
| Integer | 'i' |
| Long | 'l' |
| Short | 's' |
私は'S'しか試していないですが、多分他も動くんじゃないですかね?(他人事)