ここのことはなかったことにするかもしれない

仕事がらみの記事を主として扱いますが、あくまで個人ブログです。2013年以前の記事は https://yellow-73.hatenablog.com/ にあります。

Cordova/AndroidアプリをカスタムURLスキームから立ち上がるようにする

使用するプラグイン

cordova-plugin-customurlscheme を使用します。https://www.npmjs.com/package/cordova-plugin-customurlscheme あたりを参照して下さい。

# 実際に作ってみる

プロジェクトを作る

まずプロジェクトを作ります。customurlschemeをプロジェクトにインストールする際に、スキームを決めておきます。

cordova create (フォルダ名) (ネームスペース) (タイトル)
cd (フォルダ名)
cordova platform add android
cordova plugin add cordova-plugin-customurlscheme --variable URL_SCHEME=(スキーム名)

関数を入れる

function handleOpenURL(url) {
  setTimeout(
    function() {
      alert("received url: " + url);
    },
    0
  );
}

これで、カスタムURLスキームによってアプリが起動した場合には、URLがアラートとして表示されます。

確かめてみる

内部ストレージのHTMLファイルを読み込む

まず、次のようなアンカーを入れたHTMLファイルを作ります。

<a href="(スキーム名):">CLICK</a>

"CLICK" となっている箇所をクリックすると、(スキーム名)に関連付けられているアプリが起動します。

が、デスクトップでは起動しないので、Androidに転送します。

デスクトップのエクスプローラで、「内部ストレージ」にHTMLファイルを転送します。

Androidのブラウザから開いてみます。ローカルパスが (内部ストレージ)/abc.html なら、ブラウザでURLを次のように指定します。

file:///sdcard/abc.html

となります。