Apps.getSelf

« DOM リファレンス

非標準

概要

現在のアプリに関する情報を返します。つまり、呼び出し元アプリとドメインが一致するインストール済みアプリの情報です。これを使ってアプリがインストールされているかどうかを判別できます。

注: ひとつの生成元 (オリジン) に複数のアプリをホストすることはできません。ひとつのドメインで複数のアプリを登録したい場合は、例えば myapp.mydomain.comotherapp.mydomain.com のように、アプリごとにサブドメインを用意してください

構文

var request = window.navigator.mozApps.getSelf();

引数

ありません。

戻り値

getSelf()DOMRequest オブジェクトを返します。success イベントが DOMRequest に対して通知されると、DOMRequest.result フィールドには、現在のアプリを表す App オブジェクト、あるいは getSelf() がアプリ外部から呼び出された (つまりアプリがインストールされていない) 場合は null が含まれます。操作が完了するまでは、DOMRequest.resultnull です。

注: バグ 806597 のため、アプリがデスクトップ版 Firefox 上で実行中、request.result は誤って null を返します。

呼び出しが成功しなかった場合、error イベントが DOMRequest に対して通知され、DOMRequest.error には DOMError オブジェクトが含まれ、これにはエラーに関する情報が含まれます。

DOMRequest.onsuccessDOMRequest.onerror コールバックプロパティとともに getSelf() を使う方法を示した例です。

var request = window.navigator.mozApps.getSelf();
request.onsuccess = function() {
  if (request.result) {
    // App オブジェクトからアプリの名称を取得
    alert("現在のアプリの名称: " + request.result.manifest.name);
  } else {
    alert("アプリ外部から呼び出されました");
  }
};
request.onerror = function() {
  // DOMError オブジェクトからエラー名を表示
  alert("エラー: " + request.error.name);
};

呼び出しが成功した場合、戻り値オブジェクトの result プロパティに App オブジェクトが含まれています。この例では request.result に当たります。request.resultnull の場合、アプリがインストールされていないことが分かります。

アプリがそのプロトコルを HTTP から HTTPS へ変えている場合は、navigator.mozApps.checkInstalled() を使ってインストールされているか判別した方が良いでしょう。

Document Tags and Contributors

タグ:
Contributors to this page: Yoshino
最終更新者: Yoshino,