diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 21:46:22 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 21:46:22 -0500 |
commit | a065e04d529da1d847b5062a12c46d916408bf32 (patch) | |
tree | fe0f8bcec1ff39a3c499a2708222dcf15224ff70 /files/ja/web/api | |
parent | 218934fa2ed1c702a6d3923d2aa2cc6b43c48684 (diff) | |
download | translated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.gz translated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.bz2 translated-content-a065e04d529da1d847b5062a12c46d916408bf32.zip |
update based on https://github.com/mdn/yari/issues/2028
Diffstat (limited to 'files/ja/web/api')
64 files changed, 0 insertions, 4686 deletions
diff --git a/files/ja/web/api/alarm_api/index.html b/files/ja/web/api/alarm_api/index.html deleted file mode 100644 index b3b3842838..0000000000 --- a/files/ja/web/api/alarm_api/index.html +++ /dev/null @@ -1,240 +0,0 @@ ---- -title: Alarm API -slug: Web/API/Alarm_API -translation_of: Archive/B2G_OS/API/Alarm_API ---- -<p>{{ SeeCompatTable() }}</p> - -<p>要約</p> - -<p>Alarm APIが、アプリケーションが予定された行動を実行することを可能にするのは未来のことです。例として、アラームクロックのようなもの、カレンダーなど。また、自動更新は指定された時刻にデバイスを動作させるために、アラームAPIを利用しなければならない場合があります。</p> - -<p>それ単体では、Alarm APIは単にアラームを予定することができます。アラームはSystem Message APIを介してアプリケーションに派遣されているので、 アラームに反応するようにしたいアプリケーションは、アラームメッセージに自分自身を登録する必要があります。</p> - -<p>Alarms are set using the {{domxref("window.navigator.mozAlarms")}} object which is an instance of the {{domxref("MozAlarmsManager")}} interface.</p> - -<div class="note"> -<p><em><strong>Note:</strong></em> The term alarm in the Alarms API is not the same as an alarm used by the Clock app. The Alarms API wakes up applications, the Clock wakes up humans. The Clock <a href="https://github.com/mozilla-b2g/gaia/blob/master/apps/clock/js/alarm.js">uses the Alarm API</a> to be notified when the time is right to wake up humans.</p> -</div> - -<h2 id="example" name="example">Schedule alarms</h2> - -<p>The first things to do when using alarm is to schedule alarms. There are two kind of alarms based on the respect of the time zone. In both case it's done using the {{domxref("MozAlarmsManager.add")}} method.</p> - -<div class="note"> -<p><strong>Note:</strong> If an alarm is not targeted at a specific application, the system will dispatch all the alarms to all the applications listening for alarms.</p> -</div> - -<div class="note"> -<p><strong>Note</strong>: You need to use the same URL for setting and receiving an alarm. For example, If you invoke <code>navigator.mozAlarms.add()</code> on foo.html or index.html?foo=bar, but have <code>{ "alarm": "/index.html" }</code> in your <a href="/en-US/Apps/Build/Manifest#messages">manifest messages field</a>, you'll never receive the alarm.</p> -</div> - -<h3 id="Alarms_ignoring_time_zones">Alarms ignoring time zones</h3> - -<p>Those kind of alarms is dispatched based on the local time of the device. If the user of the device changes its time zone, the alarm will be dispatched based on the new time zone. For example, if a user is in Paris and sets an alarm that should be dispatched at 12 PM CET (<em>Central European Time</em>) and that user travels to San Francisco, the alarm will be dispatched at 12 PM PDT (<em>Pacific Daylight Time</em>).</p> - -<pre class="brush: js">// This the date to schedule the alarm -var myDate = new Date("May 15, 2012 16:20:00"); - -// This is arbitrary data pass to the alarm -var data = { - foo: "bar" -} - -// The "ignoreTimezone" string is what make the alarm ignoring it -var request = navigator.mozAlarms.add(myDate, "ignoreTimezone", data); - -request.onsuccess = function () { - console.log("The alarm has been scheduled"); -}; - -request.onerror = function () { - console.log("An error occurred: " + this.error.name); -}; -</pre> - -<h3 id="Alarms_honoring_time_zones">Alarms honoring time zones</h3> - -<p>Those kind of alarms are dispatched based on the time in the time zone that defines when the alarm has been scheduled. If for some reason, the user of the device changes its time zone the alarm will be dispatched based on the original time zone. For example, if a user is in Paris and set an alarm that should be dispatched at 12pm CET (<em>Central European Time</em>) and if that user travel to San Francisco, the alarm will be dispatched at 3 AM PDT (<em>Pacific Daylight Time</em>).</p> - -<pre class="brush: js">// This the date to schedule the alarm -var myDate = new Date("May 15, 2012 16:20:00"); - -// This is arbitrary data pass to the alarm -var data = { - foo: "bar" -} - -// The "honorTimezone" string is what make the alarm honoring it -var request = navigator.mozAlarms.add(myDate, "honorTimezone", data); - -request.onsuccess = function () { - console.log("The alarm has been scheduled"); -}; - -request.onerror = function () { - console.log("An error occurred: " + this.error.name); -}; -</pre> - -<h2 id="Managing_alarms">Managing alarms</h2> - -<p>Once an alarm is scheduled, it's still possible to manage it.</p> - -<p>The {{domxref("MozAlarmsManager.getAll")}} method will return the complete list of alarms currently scheduled by the application. This list is an <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array" title="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array">Array</a></code> of {{Anch("mozAlarm")}} objects.</p> - -<h3 id="mozAlarm">mozAlarm</h3> - -<p>{{page("/en-US/docs/Web/API/MozAlarmsManager.getAll","mozAlarm")}}</p> - -<pre class="brush: js">var request = navigator.mozAlarms.getAll(); - -request.onsuccess = function () { - this.result.forEach(function (alarm) { - console.log('Id: ' + alarm.id); - console.log('date: ' + alarm.date); - console.log('respectTimezone: ' + alarm.respectTimezone); - console.log('data: ' + JSON.stringify(alarm.data)); - }); -}; - -request.onerror = function () { - console.log("An error occurred: " + this.error.name); -}; -</pre> - -<p>The {{domxref("MozAlarmsManager.remove")}} method is used to unschedule an existing alarm.</p> - -<pre class="brush: js">var alarmId; - -// Set an alarm and store it's id -var request = navigator.mozAlarms.add(new Date("May 15, 2012 16:20:00"), "honorTimezone"); - -request.onsuccess = function () { - alarmId = this.result; -} - -// ... - -// Later on, removing the alarm if it exists -if (alarmId) { - navigator.mozAlarms.remove(alarmId); -} -</pre> - -<h2 id="Handling_alarms">Handling alarms</h2> - -<p>Any application can react when an alarm is dispatched by the system. In order to be able to handle any alarms, an application must register itself as an alarm handler. This is done through the System Messaging API in two steps:</p> - -<p>First, the applications must include <code>alarm</code> to the <a href="/en-US/docs/Apps/Manifest#messages" title="/en-US/docs/Apps/Manifest#messages">messages property of its application manifest</a> with the URL to the document which registers the callback function to be used when an alarm is dispatched.</p> - -<pre class="brush: js">"messages": [ - { "alarm": "/index.html" } -]</pre> - -<p>Second, the application must bind a callback function with the <code>alarm</code> message. This is done using the {{domxref("window.navigator.mozSetMessageHandler","navigator.mozSetMessageHandler")}} method. This callback function will receive a {{Anch("mozAlarm")}} object containing the data attached to the alarm.</p> - -<pre class="brush: js">navigator.mozSetMessageHandler("alarm", function (mozAlarm) { - alert("alarm fired: " + JSON.stringify(mozAlarm.data)); -}); -</pre> - -<p>If an application wants to know if there is a pending alarm at the system level, it's possible to use the {{domxref("window.navigator.mozHasPendingMessage","navigator.mozHasPendingMessage")}} method with the value <code>alarm</code>.</p> - -<pre class="brush: js">navigator.mozHasPendingMessage("alarm"); -</pre> - -<h2 id="Permissions_for_the_Alarm_API">Permissions for the Alarm API</h2> - -<p>Please note that while the Alarm API is not privileged or certified, you should still include <code>permissions</code> and <code>messages</code> entries in your <code>manifest.webapp</code> file when including it in an installable open Web app.</p> - -<pre class="language-html">"permissions": { - "alarms": { - "description": "Required to schedule alarms" - } - }, - "messages": [ - { "alarm": "/index.html" } - ]</pre> - -<h2 id="Specifications">Specifications</h2> - -<table class="standard-table"> - <thead> - <tr> - <th scope="col">Specification</th> - <th scope="col">Status</th> - <th scope="col">Comment</th> - </tr> - </thead> - <tbody> - <tr> - <td>{{SpecName('Alarm API')}}</td> - <td>{{Spec2('Alarm API')}}</td> - <td>Initial specification.</td> - </tr> - </tbody> -</table> - -<h2 id="Browser_compatibility">Browser compatibility</h2> - -<p>{{ CompatibilityTable() }}</p> - -<div id="compat-desktop"> -<table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Chrome</th> - <th>Firefox (Gecko)</th> - <th>Internet Explorer</th> - <th>Opera</th> - <th>Safari</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{ CompatUnknown()}}</td> - <td>{{CompatGeckoDesktop("16")}} {{ property_prefix("moz") }}</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - </tr> - </tbody> -</table> -</div> - -<div id="compat-mobile"> -<table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Android</th> - <th>Chrome for Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>Firefox OS</th> - <th>IE Mobile</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatNo() }}</td> - <td>{{CompatGeckoMobile("10")}} {{ property_prefix("moz") }}</td> - <td>1.0.1</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - </tr> - </tbody> -</table> -</div> - -<h2 id="See_also">See also</h2> - -<ul> - <li><a href="/en-US/Apps/Build/User_notifications/Using_Alarms_to_notify_users">Using Alarms to notify users</a></li> - <li>{{domxref("window.navigator.mozAlarms","navigator.mozAlarms")}}</li> - <li>{{domxref("MozAlarmsManager")}}</li> - <li>{{domxref("window.navigator.mozSetMessageHandler")}}</li> -</ul> diff --git a/files/ja/web/api/camera_api/index.html b/files/ja/web/api/camera_api/index.html deleted file mode 100644 index 38f638d9f3..0000000000 --- a/files/ja/web/api/camera_api/index.html +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: Camera API -slug: Web/API/Camera_API -tags: - - API - - Firefox OS - - Graphics - - Reference - - WebAPI - - camera -translation_of: Archive/B2G_OS/API/Camera_API ---- -<p>{{ DefaultAPISidebar("Camera API") }}</p> - -<p>{{ non-standard_header() }}</p> - -<p><strong>Camera API</strong> は、アプリケーションが端末のカメラを管理できるようにします。写真撮影や動画記録をしたり、カメラのフォーカスやズーム、ホワイトバランス、フラッシュライトなどの情報を取得できます。これは特権 API であり、認証済みアプリケーションのみが使用できます。</p> - -<p>この API は認証済みアプリケーションのみが使用できましたが、Firefox OS 2.0 以降で特権アプリも使用できるようになりました。</p> - -<div class="note"> -<p><strong>注記:</strong> 標準搭載の <em>カメラ</em> アプリケーションの置き換えを実装するのでない限り、この API を使用するべきではありません。代わりに、端末でカメラを使用したいときは、<a href="/docs/WebAPI/Web_Activities" title="/docs/Web/API/Web_Activities">Web Activities API</a> を使用してください。</p> -</div> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li>{{domxref("navigator.mozCameras", "navigator.mozCameras")}}</li> - <li>{{domxref("CameraManager")}}</li> - <li>{{domxref("CameraControl")}}</li> - <li>{{domxref("CameraCapabilities")}}</li> -</ul> diff --git a/files/ja/web/api/cameracapabilities/index.html b/files/ja/web/api/cameracapabilities/index.html deleted file mode 100644 index 5f4dfe9422..0000000000 --- a/files/ja/web/api/cameracapabilities/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: CameraCapabilities -slug: Web/API/CameraCapabilities -tags: - - API - - DOM - - DOM Reference - - Firefox OS - - Graphics - - JavaScript - - Reference - - WebAPI -translation_of: Archive/B2G_OS/API/CameraCapabilities ---- -<p>{{ ApiRef("Camera API") }}</p> - -<p>{{ non-standard_header() }}</p> - -<div class="summary"> -<p><span class="seoSummary">{{domxref("CameraControl.capabilities")}} プロパティは、<code>CameraCapabilities</code> オブジェクトを返します。これは、カメラのすべてのキャパビリティを説明します。</span></p> -</div> - -<h2 id="Properties" name="Properties">プロパティ</h2> - -<dl> - <dt>{{domxref("CameraCapabilities.effects")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされたエフェクトを識別する文字列 (<code>normal</code>, <code>sepia</code>, <code>mono</code> など) の <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.fileFormats")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされたファイル形式を識別する文字列 (<code>jpeg</code>, <code>rgb565</code> など) の <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.flashModes")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされた各フラッシュモードを識別する文字列の <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。取りうる値は、<code>auto</code>, <code>off</code>, <code>on</code> または <code>torch</code> です。</dd> - <dt>{{domxref("CameraCapabilities.focusModes")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされた各フォーカスモードを識別する文字列 (auto, fixed, macro など) の <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.maxExposureCompensation")}} {{readonlyinline}}</dt> - <dd>サポートされた露光補正値の最大値を定義する数値です。</dd> - <dt>{{domxref("CameraCapabilities.maxFocusAreas")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされたフォーカス領域数の最大値を定義する数値です。</dd> - <dt>{{domxref("CameraCapabilities.maxMeteringAreas")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされた計測領域数の最大値を定義する数値です。</dd> - <dt>{{domxref("CameraCapabilities.minExposureCompensation")}} {{readonlyinline}}</dt> - <dd>サポートされた露光補正値の最小値を定義する数値です。</dd> - <dt>{{domxref("CameraCapabilities.pictureSizes")}} {{readonlyinline}}</dt> - <dd>写真撮影時にサポートされた写真の <code>height</code> と <code>width</code> を含むオブジェクトの <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.previewSizes")}} {{readonlyinline}}</dt> - <dd>動画プレビューストリームにサポートされた動画の <code>height</code> と <code>width</code> を含むオブジェクトの <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.recorderProfiles")}} {{readonlyinline}}</dt> - <dd>サポートされた各レコーダープロファイル属性を持つオブジェクトです。</dd> - <dt>{{domxref("CameraCapabilities.sceneModes")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされたシーンモードを識別する文字列 (<code>auto</code>, <code>night</code>, <code>beach</code> など) の <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.stepExposureCompensation")}} {{readonlyinline}}</dt> - <dd>露光補正の最小ステップサイズを定義する数値です。</dd> - <dt>{{domxref("CameraCapabilities.videoSizes")}} {{readonlyinline}}</dt> - <dd>動画撮影時にサポートされた動画の <code>height</code> と <code>width</code> を含むオブジェクトの <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.whiteBalanceModes")}} {{readonlyinline}}</dt> - <dd>カメラにサポートされたホワイトバランスの各モードを識別する文字列 (<code>auto</code>, <code>fluorecent</code> など) の <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。</dd> - <dt>{{domxref("CameraCapabilities.zoomRatios")}} {{readonlyinline}}</dt> - <dd>サポートされたすべてのズーム率を表す数値の <code><a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array">配列</a></code> です。カメラにズームキャパビリティが無い場合、この値は <code>null</code> です。</dd> -</dl> - -<h2 id="Methods" name="Methods">メソッド</h2> - -<p>なし。</p> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>{{page("/ja/docs/Web/API/Navigator/mozCameras","Specification")}}</p> - -<h2 id="Permissions" name="Permissions">許可設定</h2> - -<p>{{page("/ja/docs/Web/API/Navigator/mozCameras","Permissions")}}</p> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li>{{ domxref("CameraControl") }}</li> - <li>{{ domxref("CameraManager") }}</li> - <li>{{ domxref("window.navigator.mozCameras","navigator.mozCameras") }}</li> -</ul> diff --git a/files/ja/web/api/cameracontrol/index.html b/files/ja/web/api/cameracontrol/index.html deleted file mode 100644 index 1427d5ea3f..0000000000 --- a/files/ja/web/api/cameracontrol/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -title: CameraControl -slug: Web/API/CameraControl -tags: - - API - - DOM - - DOM Reference - - Firefox OS - - Graphics - - JavaScript - - Reference - - WebAPI -translation_of: Archive/B2G_OS/API/CameraControl ---- -<p>{{APIRef("Camera API")}}</p> - -<p>{{ non-standard_header() }}</p> - -<p>{{B2GOnlyHeader2('privileged')}}</p> - -<p><span class="seoSummary">{{domxref("CameraManager.getCamera()")}} メソッドを使用してカメラへの参照を取得する時、成功時に呼び出されるコールバック関数を指定します。この関数は、引数として <code>CameraControl</code> オブジェクトを受け取ります。このオブジェクトのメソッドとプロパティは、カメラの管理と使用に使います。</span></p> - -<h2 id="Properties" name="Properties">プロパティ</h2> - -<dl> - <dt>{{domxref("CameraControl.capabilities")}} {{readonlyinline}}</dt> - <dd>{{domxref("CameraCapabilities")}} オブジェクトは、与えられたカメラについてのすべてのキャパビリティ示します。</dd> - <dt>{{domxref("CameraControl.effect")}}</dt> - <dd>カメラで使用するエフェクトを定義する文字列 (デフォルトは <code>none</code>) です。この値は、{{domxref("CameraCapabilities.effects")}} に定義された値のいずれかでなければなりません。</dd> - <dt>{{domxref("CameraControl.exposureCompensation")}} {{readonlyinline}}</dt> - <dd>カメラの露光補正に使用する値です。この属性は読み取り専用です。露光値を変更するには、{{domxref("CameraControl.setExposureCompensation()")}} メソッドを呼び出す必要があります。</dd> - <dt>{{domxref("CameraControl.flashMode")}}</dt> - <dd>フラッシュの仕方を定義する文字列です。何らかの値が設定されると、カメラにフラッシュが搭載されていれば、この値はデフォルトで <code>auto</code>、搭載されていなければ <code>none</code> になります。値を設定する時は、{{domxref("CameraCapabilities.flashModes")}} に定義されたオプションのリストから選択しなければなりません。</dd> - <dt>{{domxref("CameraControl.focalLength")}} {{readonlyinline}}</dt> - <dd>カメラの焦点距離を絞るミリメートル単位の数値です。</dd> - <dt>{{domxref("CameraControl.focusAreas")}}</dt> - <dd>カメラのオートフォーカスする領域を定義するオブジェクトの <a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array"><code>配列</code></a> です。</dd> - <dt>{{domxref("CameraControl.focusDistanceFar")}} {{readonlyinline}}</dt> - <dd>この値は、画像の被写界深度を定義するための {{domxref("CameraControl.focusDistanceNear")}} と共に使用する、メートル単位の距離です。このプロパティの値は、<code><a href="/docs/JavaScript/Reference/Global_Objects/Infinity" title="/docs/JavaScript/Reference/Global_Objects/Infinity">Infinity</a></code> になる可能性があります。</dd> - <dt>{{domxref("CameraControl.focusDistanceNear")}} {{readonlyinline}}</dt> - <dd>この値は、画像の被写界深度を定義するための {{domxref("CameraControl.focusDistanceFar")}} と共に使用する、メートル単位の距離です。</dd> - <dt>{{domxref("CameraControl.focusDistanceOptimum")}} {{readonlyinline}}</dt> - <dd>この値は、被写体が最も鮮明に映るメートル単位の距離です。</dd> - <dt>{{domxref("CameraControl.focusMode")}}</dt> - <dd>カメラが使用するフォーカスモードの種類を定義する文字列 (デフォルトで <code>auto</code> または <code>fixed</code>) です。この値は {{domxref("CameraCapabilities.focusModes")}} から選択されなければなりません。</dd> - <dt>{{domxref("CameraControl.meteringAreas")}}</dt> - <dd>カメラがオートフォーカスする領域を定義するオブジェクトの <a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array"><code>配列</code></a> です。</dd> - <dt>{{domxref("CameraControl.onShutter")}}</dt> - <dd>カメラの "shutter" イベントのイベントハンドラです。シャッター音または視覚的なシャッター効果を発生させる関数を指定します。</dd> - <dt>{{domxref("CameraControl.onClosed")}}</dt> - <dd>同じアプリ内で新しい <code>CameraControl</code> オブジェクトに引き継がれた時に呼び出されるイベントハンドラです。</dd> - <dt>{{domxref("CameraControl.onRecorderStateChange")}}</dt> - <dd>レコーダーの状態が変更された時、つまり、記録処理中にエラーが発生した時や記録データのいずれかの制限 ({{domxref("CameraControl.startRecording()")}} 参照) に達した時に呼び出される関数です。</dd> - <dt>{{domxref("CameraControl.sceneMode")}}</dt> - <dd>カメラが使用するシーンモードを定義する文字列 (デフォルトで <code>auto</code>) です。この値は、{{domxref("CameraCapabilities.sceneModes")}} から選択されなければなりません。</dd> - <dt>{{domxref("CameraControl.whiteBalanceMode")}}</dt> - <dd>カメラのホワイトバランスのモードを定義する文字列 (デフォルトで <code>auto</code>) です。この値は、{{domxref("CameraCapabilities.whiteBalanceModes")}} から選択されなければなりません。</dd> - <dt>{{domxref("CameraControl.zoom")}}</dt> - <dd>カメラが使用するズームファクタモードの種類を定義する数値 (デフォルトで <code>1</code>) です。この値は、{{domxref("CameraCapabilities.zoomRatios")}} から選択されなければなりません。</dd> -</dl> - -<h2 id="Methods" name="Methods">メソッド</h2> - -<dl> - <dt>{{ domxref("CameraControl.autoFocus()") }}</dt> - <dd>カメラ画像のフォーカスを合わせます。</dd> - <dt>{{ domxref("CameraControl.getPreviewStream()") }}</dt> - <dd>カメラから動画ストリームを取得します。このメソッドは任意のタイミングで使用できます。</dd> - <dt>{{ domxref("CameraControl.getPreviewStreamVideoMode()") }}</dt> - <dd>カメラから動画ストリームを取得します。特定の動画モードで使用できます。</dd> - <dt>{{ domxref("CameraControl.release()") }}</dt> - <dd>カメラをリリースし、他のアプリケーションがカメラを使えるようにします。</dd> - <dt>{{ domxref("CameraControl.resumePreview()") }}</dt> - <dd>{{domxref("CameraControl.takePicture()")}} メソッドの呼び出しで一時停止された動画ストリームのプレビューを再開します。</dd> - <dt>{{ domxref("CameraControl.setConfiguration()") }}</dt> - <dd>アドホックな設定変更をします。</dd> - <dt>{{ domxref("CameraControl.setExposureCompensation()") }}</dt> - <dd>露光補正ファクタを指定します。</dd> - <dt>{{ domxref("CameraControl.startRecording()") }}</dt> - <dd>動画ストリームの記録を開始します。</dd> - <dt>{{ domxref("CameraControl.stopRecording()") }}</dt> - <dd>動画ストリームの記録を停止します。</dd> - <dt>{{ domxref("CameraControl.pauseRecording()") }}</dt> - <dd>動画ストリームの記録を一時停止します。</dd> - <dt>{{ domxref("CameraControl.resumeRecording()") }}</dt> - <dd>一時停止された動画ストリームの記録を再開します。</dd> - <dt>{{ domxref("CameraControl.takePicture()") }}</dt> - <dd>写真を撮ります。写真データは {{domxref("Blob")}} で受け取ります。</dd> -</dl> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>{{page("/ja/docs/Web/API/Navigator/mozCameras","Specification")}}</p> - -<h2 id="Permissions" name="Permissions">許可設定</h2> - -<p>{{page("/ja/docs/Web/API/Navigator/mozCameras","Permissions")}}</p> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li>{{ domxref("CameraManager") }}</li> - <li>{{ domxref("CameraCapabilities") }}</li> - <li>{{ domxref("navigator.mozCamera") }}</li> -</ul> diff --git a/files/ja/web/api/cameramanager/getcamera/index.html b/files/ja/web/api/cameramanager/getcamera/index.html deleted file mode 100644 index 9877900d67..0000000000 --- a/files/ja/web/api/cameramanager/getcamera/index.html +++ /dev/null @@ -1,133 +0,0 @@ ---- -title: CameraManager.getCamera() -slug: Web/API/CameraManager/getCamera -tags: - - API - - Firefox OS - - Graphics - - JavaScript - - Method - - Non Standard - - Reference - - WebAPI -translation_of: Archive/B2G_OS/API/CameraManager/getCamera ---- -<div>{{APIRef("Camera API")}}{{ non-standard_header() }}{{B2GOnlyHeader2('privileged')}}</div> - -<h2 id="Summary" name="Summary">概要</h2> - -<p>このメソッドは、端末上の利用可能なカメラの一つに、そのカメラの識別子を指定してアクセスするために使用します。利用可能なカメラのリストは、{{domxref("CameraManager.getListOfCameras()")}} メソッドを呼び出して取得してください。</p> - -<h2 id="Syntax_(pre_Firefox_OS_2.2)" name="Syntax_(pre_Firefox_OS_2.2)">構文 (Firefox OS 2.1 まで)</h2> - -<pre>CameraManager.getCamera(camera, cameraConfiguration, onsuccess[, onerror]);</pre> - -<h3 id="Parameters" name="Parameters">引数</h3> - -<dl> - <dt><code>camera</code></dt> - <dd>利用したいカメラを指定します (端末には複数のカメラが搭載されているでしょう)。</dd> - <dt><code>cameraConfiguration</code></dt> - <dd>このカメラのオプションを設定するオブジェクト: <code>mode</code>, <code>previewSize</code> および <code>recorderProfile</code></dd> - <dt><code>onsuccess</code></dt> - <dd>{{domxref("CameraControl")}} オブジェクトを引数に取るコールバック関数。</dd> - <dt><code>onerror</code></dt> - <dd>エラー文字列を引数に取るオプションのコールバック関数。</dd> -</dl> - -<h2 id="Example" name="Example">例</h2> - -<pre class="brush: js">var options = { - mode: 'picture', - recorderProfile: 'jpg', - previewSize: { - width: 352, - height: 288 - } -}; - -var camera = navigator.mozCameras.getListOfCameras()[0]; - -function onSuccess(camera) { - // Do stuff with the camera -}; - -function onError(error) { - console.warn(error); -}; - -navigator.mozCameras.getCamera(camera, options, onSuccess, onError); -</pre> - -<h2 id="Syntax_(Firefox_OS_2.2)" name="Syntax_(Firefox_OS_2.2)">構文 (Firefox OS 2.2 以降)</h2> - -<pre>Promise CameraManager.getCamera(camera, cameraConfiguration);</pre> - -<h3 id="Parameters_2">Parameters</h3> - -<dl> - <dt><code>camera</code></dt> - <dd>利用したいカメラを指定します (端末には複数のカメラが搭載されているでしょう)。</dd> - <dt><code>cameraConfiguration</code></dt> - <dd>このカメラのオプションを設定するオブジェクト: <code>mode</code>, <code>previewSize</code> および <code>recorderProfile</code></dd> -</dl> - -<h3 id="Return_Value" name="Return_Value">戻り値</h3> - -<p>{{domxref("Promise")}} を返します。Promise の <code>.then()</code> 関数は以下の 2 個の引数を受け取ります:</p> - -<dl> - <dt><code>onsuccess</code></dt> - <dd>カメラオブジェクトを引数に取るコールバック関数。このオブジェクトには、{{domxref("CameraControl")}} オブジェクトである <code>camera</code> プロパティと端末の実際の設定値を含む <code>configuration</code> プロパティが含まれます。</dd> - <dt><code>onerror</code></dt> - <dd>エラー文字列を引数に取るオプションのコールバック関数。</dd> -</dl> - -<h2 id="Example_2" name="Example_2">例</h2> - -<pre class="brush: js">var options = { - mode: 'picture', - recorderProfile: 'jpg', - previewSize: { - width: 352, - height: 288 - } -}; - -var camera = navigator.mozCameras.getListOfCameras()[0]; - -function onSuccess(cameraObj) { - var cameraControl = cameraObj.camera; - // Do stuff with the cameraControl -}; - -function onError(error) { - console.warn(error); -}; - -navigator.mozCameras.getCamera(camera, options).then(onSuccess, onError); -</pre> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>標準仕様には含まれていません。<a href="/docs/WebRTC">WebRTC</a> がモバイル端末で広くサポートされるようになった時、これと置き換えられる予定です。</p> - -<h2 id="Permissions" name="Permissions">許可設定</h2> - -<p>Firefox OS 1.4 まで Camera API は Certified API だったため、サードパーティアプリからはアクセスできませんでした。Firefox OS 2.0 からは許可レベルが Privileged に下げられたため、開発者が独自のアプリで利用できるようになりました。</p> - -<pre class="brush: json">"type": "privileged"</pre> - -<pre class="brush: json">"permissions": { - "camera": { - "description": "Required for accessing cameras on the device." - } -}</pre> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li>{{domxref("CameraManager.getListOfCameras()")}}</li> - <li>{{domxref("CameraControl")}}</li> - <li>{{domxref("navigator.mozCamera","navigator.mozCamera")}}</li> -</ul> diff --git a/files/ja/web/api/cameramanager/getlistofcameras/index.html b/files/ja/web/api/cameramanager/getlistofcameras/index.html deleted file mode 100644 index 3ae9d281d5..0000000000 --- a/files/ja/web/api/cameramanager/getlistofcameras/index.html +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: CameraManager.getListOfCameras() -slug: Web/API/CameraManager/getListOfCameras -tags: - - API - - Firefox OS - - Graphics - - JavaScript - - Method - - Non Standard - - Reference - - WebAPI -translation_of: Archive/B2G_OS/API/CameraManager/getListOfCameras ---- -<div>{{APIRef("Camera API")}} {{ non-standard_header() }}{{B2GOnlyHeader2('privileged')}}</div> - -<h2 id="Summary" name="Summary">概要</h2> - -<p>このメソッドは、端末上の利用可能なすべてのカメラの識別子を含む <a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array"><code>配列</code></a> を取得するために使用します。</p> - -<h2 id="Syntax" name="Syntax">構文</h2> - -<pre>var cameras = navigator.mozCameras.getListOfCameras();</pre> - -<h3 id="Return_Value" name="Return_Value">戻り値</h3> - -<dl> - <dt><code>camera</code></dt> - <dd>利用可能なすべてのカメラの識別子の <a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array"><code>配列</code></a></dd> -</dl> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>標準仕様には含まれていません。<a href="/docs/WebRTC">WebRTC</a> がモバイル端末で広くサポートされるようになった時、これと置き換えられる予定です。</p> - -<h2 id="Permissions" name="Permissions">許可設定</h2> - -<p>Firefox OS 1.4 まで Camera API は Certified API だったため、サードパーティアプリからはアクセスできませんでした。Firefox OS 2.0 からは許可レベルが Privileged に下げられたため、開発者が独自のアプリで利用できるようになりました。</p> - -<pre class="brush: json language-json"><code class="language-json"><span class="key token">"permissions":</span> <span class="punctuation token">{</span> - <span class="key token">"camera":</span> <span class="punctuation token">{</span> - <span class="key token">"description":</span> <span class="string token">"Required for accessing cameras on the device."</span> - <span class="punctuation token">}</span> -<span class="punctuation token">}</span></code></pre> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li>{{domxref("CameraManager.getCamera()")}}</li> - <li>{{domxref("navigator.mozCamera","navigator.mozCamera")}}</li> -</ul> diff --git a/files/ja/web/api/cameramanager/index.html b/files/ja/web/api/cameramanager/index.html deleted file mode 100644 index f4afb2039f..0000000000 --- a/files/ja/web/api/cameramanager/index.html +++ /dev/null @@ -1,49 +0,0 @@ ---- -title: CameraManager -slug: Web/API/CameraManager -tags: - - API - - DOM - - DOM Reference - - Firefox OS - - Graphics - - JavaScript - - Reference - - WebAPI -translation_of: Archive/B2G_OS/API/CameraManager ---- -<p>{{ apiref("Camera API") }}</p> - -<p>{{ non-standard_header() }}</p> - -<p>{{B2GOnlyHeader2('privileged')}}</p> - -<p><span class="seoSummary"><strong><code>CameraManager</code></strong> インターフェースは、ユーザの端末上で利用可能な任意のカメラへのアクセスを提供します。</span></p> - -<h2 id="Properties" name="Properties">プロパティ</h2> - -<p><em>このインターフェースは実装されていないか、いかなるプロパティも継承しません。</em></p> - -<h2 id="Methods" name="Methods">メソッド</h2> - -<dl> - <dt>{{ domxref("CameraManager.getCamera()") }}</dt> - <dd>カメラの識別子に基づいて camera インスタンスを取得します。</dd> - <dt>{{ domxref("CameraManager.getListOfCameras()") }}</dt> - <dd>端末上の利用可能なすべてのカメラの識別子が格納された <a href="/docs/JavaScript/Reference/Global_Objects/Array" title="/docs/JavaScript/Reference/Global_Objects/Array"><code>配列</code></a> を返します。</dd> -</dl> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>{{page("/ja/docs/Web/API/Navigator/mozCameras","Specification")}}</p> - -<h2 id="許可設定">許可設定</h2> - -<p>{{page("/ja/docs/Web/API/Navigator/mozCameras","Permissions")}}</p> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li>{{ domxref("CameraControl") }}</li> - <li>{{ domxref("navigator.mozCamera","navigator.mozCamera") }}</li> -</ul> diff --git a/files/ja/web/api/device_storage_api/index.html b/files/ja/web/api/device_storage_api/index.html deleted file mode 100644 index 0dc35b0527..0000000000 --- a/files/ja/web/api/device_storage_api/index.html +++ /dev/null @@ -1,254 +0,0 @@ ---- -title: Device Storage API -slug: Web/API/Device_Storage_API -translation_of: Archive/B2G_OS/API/Device_Storage_API ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('privileged') }}</p> -<h2 id="概要">概要</h2> -<p>Device Storage API はwebアプリがファイルシステムへアクセスするために使われます。 ファイルシステムへのアクセスは非常に注意を要するため、このAPIはprivilleged アプリのみが使用できます。</p> -<div class="note"> - <p><strong>Note:</strong> デバイスストレージへのアクセスは物理レベルの制限で遅いです。多くの場合、<a href="/en-US/docs/IndexedDB" title="/en-US/docs/IndexedDB">IndexedDB</a> を使用することで高速化できます。</p> -</div> -<h2 id="デバイスストレージへのアクセス">デバイスストレージへのアクセス</h2> -<p>このセクションはデバイスストレージへのアクセスに必要なことを説明します。</p> -<h3 id="エントリーポイント">エントリーポイント</h3> -<p>記憶領域へのアクセスは次のように記述することができます。</p> -<p>{{domxref("window.navigator.getDeviceStorage()","navigator.getDeviceStorage()")}}<br> - {{domxref("window.navigator.getDeviceStorages()","navigator.getDeviceStorages()")}}</p> -<ul> - <li>{{domxref("window.navigator.getDeviceStorage()","navigator.getDeviceStorage()")}}</li> - <li>アクセス先の記憶領域を代表した名前を文字列で渡すことができます。このメソッドは関連した記憶領域へアクセスするための {{domxref("DeviceStorage")}} オブジェクトをリターンします。オブジェクトの <code>.default</code> 属性は <code>true になります</code>。 これはユーザの次の手順を通してコントロールされます。<br> - <em>Settings App > Media Storage > Default media location</em></li> - <li>{{domxref("window.navigator.getDeviceStorages()","navigator.getDeviceStorages()")}}</li> - <li>記憶領域へのアクセスが許可される {{domxref("DeviceStorage")}} オブジェクトの <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array" title="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array">Array</a></code> が返されます。記憶領域毎にひとつのオブジェクトです。</li> -</ul> -<p>Firefox OS は次の記憶領域名を定めています。:</p> -<ul> - <li><code>apps</code>: この記憶領域はアプリが必要とするユーザデータを格納します。 これは重要なデータなのでこの記憶領域へのアクセスには特別な権限が要求されます。 (下記参照) これは certified アプリケーションのみが使用可能です。</li> - <li><code>music</code>: ミュージックとサウンドが保存される記憶領域です。</li> - <li><code>pictures</code>: 写真が保存される記憶領域です。</li> - <li><code>sdcard</code>: SDカードデバイスにアクセスできます。</li> - <li><code>videos</code>: 動画が保存される記憶領域です</li> -</ul> -<pre class="brush: js">var pics = navigator.getDeviceStorage('pictures');</pre> -<h3 id="navigator.getDeviceStorages()_による異なる記憶領域へのアクセス">navigator.getDeviceStorages() による異なる記憶領域へのアクセス</h3> -<p>When using {{domxref("window.navigator.getDeviceStorages()","navigator.getDeviceStorages()")}}, if there is more than one storage area then the internal one will be named for example <code>sdcard</code> and the physical storage area will be called something else (sometimes it's <code>extsdcard</code>, sometimes it's <code>sdcard1</code>). This varies by device manufacturer. The names of files on the <code>sdcard</code> storage area will be <code>/sdcard/path/filename</code>, and the names of files on the <code>sdcard1</code> storage area will be <code>/sdcard1/path/filename</code>, or whatever.</p> -<p>Note that the <code>/sdcard</code> and <code>/sdcard1</code> are storage names. Their actual mount points on the system are determined via <code>vold</code> and/or <code>/system/etc/volume.cfg</code> file.) DeviceStorage transparently maps the <code>storageName</code> into the actual <code>mountPoint</code> (so you don't need the mount point if you're just accessing the files through device storage).</p> -<p>If you want to determine the mount point to examine the filesystem from an adb shell, then you can determine the <code>vold</code> mount points by using the command <code>adb shell vdc volume list</code> (this requires a root shell).</p> -<p>On the <a href="https://developer.mozilla.org/en-US/Firefox_OS/Developer_phone_guide/Flame">Flame</a>, you'll see something like this:</p> -<p>110 0 sdcard /storage/sdcard 4<br> - 110 0 sdcard1 /storage/sdcard1 4<br> - 200 0 Volumes listed.</p> -<p>For volumes that aren't managed by <code>vold</code> (for example, the <code>sdcard</code> volume on a Nexus 4/5), the mount point is found in <code>/system/etc/volume.cfg</code>.</p> -<div class="note"> - <p><strong>Note</strong>: In Gaia engineering builds there is a <a href="https://github.com/mozilla-b2g/gaia/tree/master/dev_apps/ds-test"><code>ds-test</code> app</a>, which is useful for device storage testing.</p> -</div> -<h3 id="sect1"> </h3> -<h3 id="デバイスストレージのパーミッション">デバイスストレージのパーミッション</h3> -<p>これらの記憶領域を使用するためにアプリケーションはマニフェストにて宣言しておく必要があります。たとえばもしアプリケーションが <code>sdcard</code> 領域にアクセスしたい場合、マニフェストの permissionに "<code>device-storage:sdcard</code>" を記述しなければなりません。</p> -<pre class="brush: js">"permissions": { - "device-storage:videos":{ "access": "readonly" }, - "device-storage:pictures":{ "access": "readwrite" } -}</pre> -<p>前述のように、 <code>device-storage:apps</code> は特別な権限が必要です。open web apps のインストールを管理する <a href="https://developer.mozilla.org/en-US/docs/Web/Apps/JavaScript_API#Management_API"><code>navigator.mozApps.mgmt</code></a> APIを使うために <a href="https://developer.mozilla.org/en-US/Apps/Build/App_permissions#webapps-manage">webapps-manage</a> permissionが必要となります。</p> -<pre class="brush: js">"permissions": { - "device-storage:apps":{ "access": "readwrite" }, - "webapps-manage":{ } -}</pre> -<p><code>appsを除く</code>すべての <code>device-storage</code> 記憶領域は privileged level の権限を必要とします。 <code>apps</code> は certifiedです。<code>webapps-manage</code> は certified levelの権限で使用できます。</p> -<h2 id="ストレージの利用">ストレージの利用</h2> -<p>アプリケーションは記憶領域へのアクセスを取得すると、その記憶領域内のファイルを追加、取得、および削除することが可能です。</p> -<h3 id="ファイルの追加">ファイルの追加</h3> -<p>Adding a file is done using the {{domxref("DeviceStorage.addNamed()","addNamed")}} or {{domxref("DeviceStorage.add()","add")}} methods. The former allows to set an explicit name when storing a file while the latter creates a name automatically when the file is stored. Both methods are asynchronous and return a {{domxref("DOMRequest")}} object to handle the <code>success</code> or <code>error</code> of the operation. This is very important as writing and reading files on a physical support is a slow process.</p> -<p>Those two methods expect a {{domxref("Blob")}} as their first parameter. This object will be turned into a file under the hood and stored. When creating a {{domxref("Blob")}} object, it's mandatory to give it a <code>type</code>. This <code>type</code>, which is a mime type, is important because some storage areas have restrictions based on the type:</p> -<ul> - <li><code>music</code> only accepts {{domxref("Blob")}} with a valid audio mime type</li> - <li><code>pictures</code> only accepts {{domxref("Blob")}} with a valid image mime type</li> - <li><code>videos</code> only accepts {{domxref("Blob")}} with a valid video mime type</li> -</ul> -<pre class="brush: js">var sdcard = navigator.getDeviceStorage("sdcard"); -var file = new Blob(["This is a text file."], {type: "text/plain"}); - -var request = sdcard.addNamed(file, "my-file.txt"); - -request.onsuccess = function () { - var name = this.result; - console.log('File "' + name + '" successfully wrote on the sdcard storage area'); -} - -// An error typically occur if a file with the same name already exist -request.onerror = function () { - console.warn('Unable to write the file: ' + this.error); -} -</pre> -<div class="note"> - <p><strong>Note:</strong> Repository in a storage area are implicit. It's not possible to create explicitly an empty repository. If you want to use a repository structure you have to make it part of the name of the file to store. So if you want to store the file <code>bar</code> inside the <code>foo</code> repository, you have to use the {{domxref("DeviceStorage.addNamed()","addNamed")}} method with the complete path name of the file <code>addNamed(<em>blob</em>, "foo/bar")</code>. This is also true when you want to retrieve a file using it's name (see below).</p> - <p>As file are added in a given restricted storage area for security reason, a file path name cannot start with "<code>/</code>" nor "<code>../</code>" (and "<code>./</code>" is pointless).</p> -</div> -<h3 id="ファイルの取得">ファイルの取得</h3> -<p>Retrieving a file can be done in both ways: by using its name or by iterating the whole list of files.</p> -<p>The easiest way is to retrieve a file by its name using the {{domxref("DeviceStorage.get()","get")}} and {{domxref("DeviceStorage.getEditable","getEditable")}} methods. The former provides a {{domxref("File")}} object (which act like a read only file) when the latter provides a {{domxref("FileHandle")}} object (which allows updating the underlaying file). Both methods are asynchronous and return a {{domxref("DOMRequest")}} object to handle the <code>success</code> or <code>error</code> of the operation.</p> -<pre class="brush: js">var sdcard = navigator.getDeviceStorage('sdcard'); - -var request = sdcard.get("my-file.txt"); - -request.onsuccess = function () { - var file = this.result; - console.log("Get the file: " + file.name); -} - -request.onerror = function () { - console.warn("Unable to get the file: " + this.error); -} -</pre> -<p>The other way to retrieve files is by browsing the content of the storage area. This is possible using the {{domxref("DeviceStorage.enumerate()","enumerate")}} and {{domxref("DeviceStorage.enumerateEditable()","enumerateEditable")}} methods. The former provides {{domxref("File")}} objects when the latter provides {{domxref("FileHandle")}} objects. Both methods are asynchronous and return a {{domxref("DOMCursor")}} object to iterate along the list of files. A {{domxref("DOMCursor")}} is nothing less than a {{domxref("DOMRequest")}} with extra power to iterate asynchronously along a list of things (files in that case).</p> -<pre class="brush: js">var pics = navigator.getDeviceStorage('pictures'); - -// Let's browse all the images available -var cursor = pics.enumerate(); - -cursor.onsuccess = function () { - var file = this.result; - console.log("File found: " + file.name); - - // Once we found a file we check if there is other results - if (!this.done) { - // Then we move to the next result, which call the cursor - // success with the next file as result. - this.continue(); - } -} - -cursor.onerror = function () { - console.warn("No file found: " + this.error); -} -</pre> -<p>It's possible to limit the number of result by passing two optional parameters to the {{domxref("DeviceStorage.enumerate()","enumerate")}} and {{domxref("DeviceStorage.enumerateEditable()","enumerateEditable")}} methods.</p> -<p>The first parameter can be a string representing a sub folder to search inside.</p> -<p>The second parameter can be an object with a <code>since</code> property, which allow to limit the search to a given time period.</p> -<pre class="brush: js">var pics = navigator.getDeviceStorage('pictures'); - -// Lets retrieve picture from the last week. -var param = { - since: new Date((+new Date()) - 7*24*60*60*1000) -} - -var cursor = pics.enumerate(param); - -cursor.onsuccess = function () { - var file = this.result; - console.log("Picture taken on: " + file.<code class="language-js">lastModifiedDate</code>); - - if (!this.done) { - this.continue(); - } -} -</pre> -<h3 id="ファイルの削除">ファイルの削除</h3> -<p>A file can be removed from the storage area by simply using the {{domxref("DeviceStorage.delete()","delete")}} method. This method just need the name of the file to delete. As all the other methods from the {{domxref("DeviceStorage")}} interface, this one is also asynchronous and return a {{domxref("DOMRequest")}} object to handle the <code>success</code> or <code>error</code> of the operation.</p> -<pre class="brush: js">var sdcard = navigator.getDeviceStorage('sdcard'); - -var request = sdcard.delete("my-file.txt"); - -request.onsuccess = function () { - console.log("File deleted"); -} - -request.onerror = function () { - console.log("Unable to delete the file: " + this.error); -} -</pre> -<h2 id="ストレージ情報">ストレージ情報</h2> -<p>Beyond accessing files, a storage area provide a few methods to easily reach some important information</p> -<h3 id="利用可能領域">利用可能領域</h3> -<p>One of the most important thing to know when storing files on a device is the amount of space available. The {{domxref("DeviceStorage")}} interface provide two useful function dedicated to space:</p> -<ul> - <li>{{domxref("DeviceStorage.freeSpace()","freeSpace()")}} to get the amount of free space available to store new files;</li> - <li>{{domxref("DeviceStorage.freeSpace()","usedSpace()")}} to get the amount of space used to store the files;</li> -</ul> -<p>As those methods are asynchronous, they return a {{domxref("DOMRequest")}} object to handle the <code>success</code> or <code>error</code> of the operation.</p> -<pre class="brush: js">var videos = navigator.getDeviceStorage('videos'); - -var request = videos.usedSpace(); - -request.onsuccess = function () { - // The result is express in bytes, lets turn it into megabytes - var size = this.result / 1048576; - console.log("The videos on your device use a total of " + size.toFixed(2) + "Mo of space."); -} - -request.onerror = function () { - console.warn("Unable to get the space used by videos: " + this.error); -} -</pre> -<h3 id="変更の監視">変更の監視</h3> -<p>As many applications can use a same storage area at the same time, it's sometime useful for an application to be aware of a change in that storage area. It's also useful for an application who want to perform asynchronous action without relaying on all the {{domxref("DOMRequest")}} objects return by each method of the {{domxref("DeviceStorage")}} interface.</p> -<p>To that end, a {{event("change")}} event is triggered each time a file is created, modified or deleted. This event can be capture using the {{domxref("DeviceStorage.onchange","onchange")}} property or the {{domxref("EventTarget.addEventListener()","addEventListener()")}} method. The event handler get a {{domxref("DeviceStorageChangeEvent")}} object which is a regular {{domxref("Event")}} object with two extra properties:</p> -<ul> - <li>{{domxref("DeviceStorageChangeEvent.reason")}} which gives the reason of the change (<code>created</code>, <code>modified</code> or <code>deleted</code>)</li> - <li>{{domxref("DeviceStorageChangeEvent.path")}} which gives the full path to the file affected by the change.</li> -</ul> -<pre class="brush: js">var sdcard = navigator.getDeviceStorage('sdcard'); - -sdcard.onchange = function (change) { - var reason = change.reason; - var path = change.path; - - console.log('The file "' + path + '" has been ' + reason); -} -</pre> -<h2 id="仕様">仕様</h2> -<p>Not part of any specification.</p> -<h2 id="ブラウザ互換性">ブラウザ互換性</h2> -<p>{{ CompatibilityTable() }}</p> -<div id="compat-desktop"> - <table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Chrome</th> - <th>Firefox (Gecko)</th> - <th>Internet Explorer</th> - <th>Opera</th> - <th>Safari</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - </tr> - </tbody> - </table> -</div> -<div id="compat-mobile"> - <table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>IE Mobile</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - <td>{{ CompatNo() }}</td> - </tr> - </tbody> - </table> -</div> -<h2 id="関連項目">関連項目</h2> -<ul> - <li>{{domxref("window.navigator.getDeviceStorage()","navigator.getDeviceStorage()")}}</li> - <li>{{domxref("DeviceStorage")}}</li> - <li>{{domxref("DeviceStorageChangeEvent")}}</li> -</ul> diff --git a/files/ja/web/api/domapplicationsmanager/getall/index.html b/files/ja/web/api/domapplicationsmanager/getall/index.html deleted file mode 100644 index 3c01a9c81a..0000000000 --- a/files/ja/web/api/domapplicationsmanager/getall/index.html +++ /dev/null @@ -1,38 +0,0 @@ ---- -title: Apps.mgmt.getAll -slug: Web/API/DOMApplicationsManager/getAll -tags: - - API - - Apps - - Apps API - - Firefox OS - - Method -translation_of: Archive/Marketplace/API/DOMApplicationsManager/getAll ---- -<p>{{ ApiRef() }}</p> -<p>{{ non-standard_header() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>ユーザのレポジトリにインストールされているアプリ一覧を取得します。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre>window.navigator.mozApps.mgmt.getAll() -</pre> -<h2 id="Parameters" name="Parameters">引数</h2> -<p>ありません。</p> -<h2 id="Returns" name="Returns">戻り値</h2> -<p><code>getAll()</code> は <code>pendingGetAll</code> オブジェクトを返します。呼び出し元は戻り値オブジェクトの <code>onsuccess</code> と <code>onerror</code> コールバックプロパティを設定することが期待されます。</p> -<p><code>pendingGetAll.result</code> は、現在のブラウザにインストールされているすべてのアプリを含んだ <code>App</code> オブジェクトの配列となります。何もアプリがインストールされていない場合、<code>pendingGetAll.result</code> は空の配列となります。アプリの取得時に深刻な問題が発生した場合、<code>onerror</code> が呼び出されます。</p> -<p>これは特権付き呼び出しです。アプリを取得する特権がない場合、<code>navigator.mozApps.mgmt</code> は <code>null</code> となります。</p> -<h2 id="Errors" name="Errors">エラー</h2> -<p>以下のエラーが <code>DOMRequest.error</code> で返される可能性があります。</p> -<dl> -</dl> -<dl> - <dt> - DENIED</dt> - <dd> - 権限なし。</dd> -</dl> -<h2 id="Related_topics" name="Related_topics">関連記事</h2> -<ul> - <li><a href="/ja/docs/Web/Apps/JavaScript_API">Apps JavaScript API</a></li> -</ul> diff --git a/files/ja/web/api/domapplicationsmanager/index.html b/files/ja/web/api/domapplicationsmanager/index.html deleted file mode 100644 index d30d16fa32..0000000000 --- a/files/ja/web/api/domapplicationsmanager/index.html +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: DOMApplicationsManager -slug: Web/API/DOMApplicationsManager -tags: - - API -translation_of: Archive/Marketplace/API/DOMApplicationsManager ---- -<p>{{ ApiRef("Apps") }}</p> - -<p>{{ non-standard_header() }}</p> - -<p>Provides support for managing, and Open Web apps in a browser. A manager can be accessed via {{domxref("DOMApplicationsRegistry.mgmt", "Navigator.mozApps.mgmt")}}</p> - -<h2 id="Property">Property</h2> - -<dl> - <dt>{{domxref("DOMApplicationsManager.oninstall")}}</dt> - <dd>Is an {{domxref("EventManager")}} call when <code>install</code> event is received.</dd> - <dt>{{domxref("DOMApplicationsManager.onuninstall")}}</dt> - <dd>Is an {{domxref("EventManager")}} call when <code>uninstall</code> event is received.</dd> - <dt>{{domxref("DOMApplicationsManager.onenablestatechange")}}</dt> - <dd>Is an {{domxref("EventManager")}} call when <code>enablestatechange</code> event is received.</dd> -</dl> - -<h2 id="Methods">Methods</h2> - -<dl> - <dt>{{ domxref("DOMApplicationsManager.getAll()") }}</dt> - <dd>Returns all applications.</dd> -</dl> - -<h2 id="Browser_compatibility">Browser compatibility</h2> - -<p>{{ CompatibilityTable() }}</p> - -<div id="compat-desktop"> -<table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Chrome</th> - <th>Firefox (Gecko)</th> - <th>Internet Explorer</th> - <th>Opera</th> - <th>Safari (WebKit)</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{ CompatUnknown() }}</td> - <td>16.0</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatUnknown() }}</td> - </tr> - </tbody> -</table> -</div> - -<div id="compat-mobile"> -<table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>IE Phone</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{ CompatUnknown() }}</td> - <td>16.0</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatUnknown() }}</td> - <td>{{ CompatUnknown() }}</td> - </tr> - </tbody> -</table> -</div> - -<p> </p> diff --git a/files/ja/web/api/domapplicationsregistry/checkinstalled/index.html b/files/ja/web/api/domapplicationsregistry/checkinstalled/index.html deleted file mode 100644 index 88b7ededb5..0000000000 --- a/files/ja/web/api/domapplicationsregistry/checkinstalled/index.html +++ /dev/null @@ -1,49 +0,0 @@ ---- -title: Apps.checkInstalled -slug: Web/API/DOMApplicationsRegistry/checkInstalled -tags: - - API - - Apps - - Apps API - - Firefox OS - - Method -translation_of: Archive/Marketplace/API/DOMApplicationsRegistry/checkInstalled ---- -<p>{{ ApiRef() }}</p> -<p>{{ non-standard_header() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>指定されたアプリについての情報を取得します。これを使って、そのアプリがインストールされているかどうかを判別できます。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre><code>var request = window.navigator.mozApps.</code>checkInstalled<code>(url)</code>; -</pre> -<h2 id="Parameters" name="Parameters">引数</h2> -<dl> - <dt> - <code>url</code></dt> - <dd> - アプリの <a href="/ja/docs/Web/Apps/Manifest">マニフェスト</a> の場所を含んだ <a href="/ja/docs/JavaScript/Reference/Global_Objects/String">文字列型</a> の URL。</dd> -</dl> -<h2 id="Returns" name="Returns">戻り値</h2> -<p><code>checkInstalled()</code> 関数は {{ domxref("DOMRequest") }} オブジェクトを返します。<code>DOMRequest.result</code> プロパティには <a href="/ja/docs/Web/API/App"><code>App</code> オブジェクト</a> が含まれており、これはインストールされているアプリの情報を提供する JavaScript オブジェクトです。アプリがインストールされていない場合、<code>DOMRequest.result</code> は <code>null</code> となります。</p> -<h2 id="Example" name="Example">例</h2> -<pre class="brush: js">var request = window.navigator.mozApps.checkInstalled("http://example.com/manifest.webapp"); -request.onerror = function(e) { - alert("checkInstalled 呼び出しエラー: " + request.error.name); -}; -request.onsuccess = function(e) { - if (request.result) { - console.log("アプリはインストールされています"); - } - else { - console.log("アプリはインストールされていません"); - } -};</pre> -<p>呼び出し元スクリプトは、この例のように、戻り値オブジェクトの <code>onsuccess</code>/<code>onerror</code> コールバックプロパティを設定することが期待されます。呼び出しが成功した場合、戻り値オブジェクトの <code>result</code> プロパティには <a href="/ja/docs/Web/API/App"><code>App</code> オブジェクト</a> が含まれています。この例では <code>request.result</code> に当たります。</p> -<h2 id="Errors" name="Errors">エラー</h2> -<p><code>DOMRequest.error</code> において文字列の <code>ERROR</code> が返ります。</p> -<p>マニフェストが情報を要求したページとは異なるドメインにある場合、<code>checkInstalled</code> が呼び出された直後に例外 <code>NS_ERROR_DOM_BAD_URI</code> が投げられます。</p> -<h2 id="Related_topics" name="Related_topics">関連記事</h2> -<ul> - <li><a href="/ja/docs/Web/API/App"><code>App</code> オブジェクト</a></li> - <li><a href="/ja/docs/Web/Apps/JavaScript_API">Apps JavaScript API</a></li> -</ul> diff --git a/files/ja/web/api/domapplicationsregistry/getinstalled/index.html b/files/ja/web/api/domapplicationsregistry/getinstalled/index.html deleted file mode 100644 index 1bfc36d895..0000000000 --- a/files/ja/web/api/domapplicationsregistry/getinstalled/index.html +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: Apps.getInstalled -slug: Web/API/DOMApplicationsRegistry/getInstalled -tags: - - API - - Apps - - Apps API - - Firefox OS - - Method -translation_of: Archive/Marketplace/API/DOMApplicationsRegistry/getInstalled ---- -<p>{{ ApiRef() }}</p> -<p>{{ non-standard_header() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>この生成元からインストールされたアプリの一覧を取得します。例えば、これを Mozilla Marketplace を呼び出した場合、Mozilla Marketplace によってインストールされたアプリの一覧を取得できます。</p> -<div class="note"> - <p><strong>注:</strong> ひとつの生成元 (オリジン) に複数のアプリをホストすることはできません。ひとつのドメインで複数のアプリを登録したい場合は、例えば <code>myapp.mydomain.com</code>、<code>otherapp.mydomain.com</code> のように、<a href="/ja/docs/Web/Apps/Adding_a_subdomain">アプリごとにサブドメインを用意してください</a>。</p> -</div> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre><code>var request = window.navigator.mozApps.<code>getInstalled</code>()</code>; -</pre> -<h2 id="Parameters" name="Parameters">引数</h2> -<p>ありません。</p> -<h2 id="Example" name="Example">例</h2> -<pre class="brush: js">var request = window.navigator.mozApps.getInstalled(); -request.onerror = function(e) { - alert("getInstalled の呼び出し時にエラーが発生しました: " + request.error.name); -}; -request.onsuccess = function(e) { - alert("成功しました。アプリの数は " + request.result.length); - var appsRecord = request.result; -};</pre> -<p>呼び出し元スクリプトは、この例のように、戻り値オブジェクトの <code>onsuccess</code>/<code>onerror</code> コールバックプロパティを設定することが期待されます。呼び出しが成功した場合、戻り値オブジェクトの <code>result</code> プロパティに <a href="/ja/docs/Web/API/App"><code>App</code> オブジェクト</a> の配列が含まれています。この例では <code>request.result</code> に当たります。</p> -<h2 id="Errors" name="Errors">エラー</h2> -<p><code>DOMRequest.error</code> において文字列の <code>ERROR</code> が返ります。</p> -<h2 id="Related_topics" name="Related_topics">関連情報</h2> -<ul> - <li><a href="/ja/docs/Web/API/App"><code>App</code> オブジェクト</a></li> - <li><a href="/ja/docs/Web/Apps/JavaScript_API">Apps JavaScript API</a></li> -</ul> diff --git a/files/ja/web/api/domapplicationsregistry/getself/index.html b/files/ja/web/api/domapplicationsregistry/getself/index.html deleted file mode 100644 index 5fdd46a1ce..0000000000 --- a/files/ja/web/api/domapplicationsregistry/getself/index.html +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: Apps.getSelf -slug: Web/API/DOMApplicationsRegistry/getSelf -tags: - - API - - Apps - - Apps API - - Firefox OS - - Method -translation_of: Archive/Marketplace/API/DOMApplicationsRegistry/getSelf ---- -<p>{{ ApiRef() }}</p> -<p>{{ non-standard_header() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>現在のアプリに関する情報を返します。つまり、呼び出し元アプリとドメインが一致するインストール済みアプリの情報です。これを使ってアプリがインストールされているかどうかを判別できます。</p> -<div class="note"> - <p><strong>注:</strong> ひとつの生成元 (オリジン) に複数のアプリをホストすることはできません。ひとつのドメインで複数のアプリを登録したい場合は、例えば <code>myapp.mydomain.com</code>、<code>otherapp.mydomain.com</code> のように、<a href="/ja/docs/Web/Apps/Adding_a_subdomain">アプリごとにサブドメインを用意してください</a>。</p> -</div> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre><code>var request = window.navigator.mozApps.getSelf()</code>; -</pre> -<h2 id="Parameters" name="Parameters">引数</h2> -<p>ありません。</p> -<h2 id="Returns" name="Returns">戻り値</h2> -<p><code>getSelf()</code> は <a href="/ja/docs/Web/API/DOMRequest"><code>DOMRequest</code></a> オブジェクトを返します。<code>success</code> イベントが <code>DOMRequest</code> に対して通知されると、<code>DOMRequest.result</code> フィールドには、現在のアプリを表す <a href="/ja/docs/Web/API/App"><code>App</code> オブジェクト</a>、あるいは <code>getSelf()</code> がアプリ外部から呼び出された (つまりアプリがインストールされていない) 場合は <code>null</code> が含まれます。操作が完了するまでは、<code>DOMRequest.result</code> は <code>null</code> です。</p> -<p>呼び出しが成功しなかった場合、<code>error</code> イベントが <code>DOMRequest</code> に対して通知され、<code>DOMRequest.error</code> には <a href="/ja/docs/Web/Apps/JavaScript_API/Error_object"><code>DOMError</code></a> オブジェクトが含まれ、これにはエラーに関する情報が含まれます。</p> -<h2 id="Example" name="Example">例</h2> -<p><code>DOMRequest.onsuccess</code> と <code>DOMRequest.onerror</code> コールバックプロパティとともに <code>getSelf()</code> を使う方法を示した例です。</p> -<pre class="brush: js">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); -};</pre> -<p>呼び出しが成功した場合、戻り値オブジェクトの <code>result</code> プロパティに <a href="/ja/docs/Web/API/App"><code>App</code></a> オブジェクトが含まれています。この例では <code>request.result</code> に当たります。<code>request.result</code> が <code>null</code> の場合、アプリがインストールされていないことが分かります。</p> -<p>アプリがそのプロトコルを HTTP から HTTPS へ変えている場合は、<a href="/en-US/docs/Web/API/Apps.checkInstalled"><code>navigator.mozApps.checkInstalled()</code></a> を使ってインストールされているか判別した方が良いでしょう。</p> -<h2 id="Related_topics" name="Related_topics">関連情報</h2> -<ul> - <li><a href="/ja/docs/Web/Apps/JavaScript_API">Apps JavaScript API</a></li> -</ul> diff --git a/files/ja/web/api/domapplicationsregistry/index.html b/files/ja/web/api/domapplicationsregistry/index.html deleted file mode 100644 index 72bff00c25..0000000000 --- a/files/ja/web/api/domapplicationsregistry/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Apps -slug: Web/API/DOMApplicationsRegistry -tags: - - API - - Apps - - Apps API - - Non-standard -translation_of: Archive/Marketplace/API/DOMApplicationsRegistry ---- -<div>{{ ApiRef("Apps") }}</div> - -<div class="blockIndicator deprecated"> -<p><strong><span class="tlid-translation translation" lang="ja"><span title="">マーケットプレイス機能の削除</span></span></strong><br> - <span class="tlid-translation translation" lang="ja"><span title="">このページで説明されている機能は動作しなくなりました— Firefox Marketplaceは、Android、デスクトップ、タブレット、および支払い(その他の関連機能)のサポートを終了しました。</span><span title="">詳細については、</span></span> <a href="https://wiki.mozilla.org/Marketplace/FutureofMarketplaceFAQ">Future of Marketplace FAQ</a> <span class="tlid-translation translation" lang="ja"><span title="">をご覧ください。</span></span></p> -</div> - -<p><span class="seoSummary">ブラウザ内で Open Web apps をインストール、管理する機能を提供します。現時点では {{domxref('window.navigator.mozApps')}} として実装されています。</span></p> - -<h2 id="プロパティ">プロパティ</h2> - -<dl> - <dt>{{domxref("DOMApplicationsRegistry.mgmt")}}</dt> - <dd>ダッシュボードがユーザに代わってアプリを管理、起動できるようにする関数を含む <code>mgmt</code> オブジェクト。</dd> -</dl> - -<h2 id="Methods" name="Methods">メソッド</h2> - -<dl> - <dt>{{ domxref("DOMApplicationsRegistry.checkInstalled()") }}</dt> - <dd>アプリが既にインストールされているかどうかを確認します。マニフェストを引数に取ります。</dd> - <dt>{{ domxref("DOMApplicationsRegistry.install()") }}</dt> - <dd>アプリのインストールを実行します。インストールの過程で、アプリは検証され、ユーザはインストールを許可するかどうか訪ねられます。</dd> - <dt>{{ domxref("DOMApplicationsRegistry.getSelf()") }}</dt> - <dd>該当するアプリの {{domxref('app')}} オブジェクトを含むオブジェクトを返します。</dd> - <dt>{{ domxref("DOMApplicationsRegistry.getInstalled()") }}</dt> - <dd>インストールされているアプリの一覧を取得します。</dd> - <dt> - <h3 id="Obsolete_methods">Obsolete methods</h3> - </dt> - <dt><a href="https://wiki.developer.mozilla.org/en-US/docs/Archive/Marketplace/API/DOMApplicationsRegistry/amInstalled" title="Provides a means for an app to check whether it is installed. This function is typically called from an origin that hosts an app."><code>DOMApplicationsRegistry.amInstalled()</code></a> {{Obsolete_Inline}}</dt> - <dd>アプリがインストールされているかどうかを確認する手段を提供します。</dd> - <dt><a href="https://wiki.developer.mozilla.org/en-US/docs/Archive/Marketplace/API/DOMApplicationsRegistry/getInstalledBy" title="Returns, through the callback function, the apps that were installed by the calling domain. This allows an app directory or store to determine which app it has installed on behalf of the current user."><code>DOMApplicationsRegistry.getInstalledBy()</code></a> {{Obsolete_Inline}}</dt> - <dd>呼び出し元のドメインによってインストールされたアプリを返します。 これにより、アプリのディレクトリまたはストアは、現在のユーザーに代わってインストールしたアプリを判別できます。</dd> -</dl> diff --git a/files/ja/web/api/domapplicationsregistry/install/index.html b/files/ja/web/api/domapplicationsregistry/install/index.html deleted file mode 100644 index af89013ff4..0000000000 --- a/files/ja/web/api/domapplicationsregistry/install/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: Apps.install -slug: Web/API/DOMApplicationsRegistry/install -tags: - - API - - Apps - - Apps API - - Firefox OS - - Method -translation_of: Archive/Marketplace/API/DOMApplicationsRegistry/install ---- -<div> - {{ApiRef}} {{non-standard_header}}</div> -<h2 id="Summary" name="Summary">概要</h2> -<p>アプリのインストールを実行します。インストールの過程で、アプリは検証され、ユーザはインストールを許可するかどうか訪ねられます。</p> -<p>アプリが既に同じドメインからインストールされていた場合、<code>install()</code> を再度呼び出すことで既存のインストールデータが確認なく上書きされます。これは、例えばユーザが無料版からプレミアム版にアップグレードした場合など、購入レシートの変更に使用される場合があります。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox"><code>var <em>request</em> = window.navigator.mozApps.install(<em>url</em>, <em>[receipt1, …]</em>)</code>;</pre> -<h3 id="Parameters" name="Parameters">引数</h3> -<div class="note"> - <strong>注:</strong> 現在 (2012 年 5 月時点)、<code>url</code> 引数に相対パスを使った場合に生じるバグがあります。{{ Bug("745928") }} を参照してください。</div> -<dl> - <dt> - <code>url</code></dt> - <dd> - インストールされる <a href="/ja/docs/Web/Apps/Manifest">マニフェスト</a> の場所を含んだ <a href="/ja/docs/JavaScript/Reference/Global_Objects/String"><code>string</code></a> 型の URL。独自配布の場合 (インストール元がアプリの生成元と同じ場合)、インストール元のサイトは URL の生成元部分を省略し、(<code>/</code> で始まる) 絶対パスを使うことも可能です。</dd> - <dt> - <code><strong>receipts</strong></code></dt> - <dd> - (オプション) 1 つあるいは複数のレシートの配列を含む配列。例:</dd> - <dd> - <pre>window.navigator.mozApps.install(url, ["receipt"])</pre> - </dd> - <dd> - <code>receipts</code> が省略された場合、これは <code>null</code> として扱われます。詳しくは <a href="/ja/docs/Web/Apps/Publishing/Validating_a_receipt">レシートの検証</a> を参照してください。</dd> -</dl> -<p>要求された引数 (<code>url</code>) が欠落していた場合、あるいは非対応の引数が与えられた場合、<code>install()</code> 関数は例外を投げます。</p> -<h2 id="Returns" name="Returns">戻り値</h2> -<p><code>install()</code> 関数は {{ domxref("DOMRequest") }} オブジェクトを返します。<code>DOMRequest.result</code> フィールドには <a href="/ja/docs/Web/API/App"><code>App</code> オブジェクト</a> が含まれ、これはインストールされたばかりのアプリを説明する JavaScript オブジェクトです。操作が完了するまでは、<code>DOMRequest.result</code> は <code>null</code> です。</p> -<p>インストールが成功しなかった場合、<code>DOMRequest.error</code> には <a href="/ja/docs/Web/Apps/JavaScript_API/Error_object "><code>DOMError</code> オブジェクト</a> が含まれ、これにはエラーに関する情報が含まれます。</p> -<h2 id="Example" name="Example">例</h2> -<p><code>DOMRequest.onsuccess</code> と <code>DOMRequest.onerror</code> コールバックプロパティとともに <code>install()</code> を使う方法を示した例です。</p> -<pre class="brush: js">var request = window.navigator.mozApps.install(manifestUrl); -request.onsuccess = function () { - // 戻り値の App オブジェクトを保存 - var appRecord = this.result; - alert('インストール成功!'); -}; -request.onerror = function () { - // DOMError オブジェクトからエラー情報を表示 - alert('インストール失敗、エラー: ' + this.error.name); -}; -</pre> -<p>インストールが成功した場合、<code>onsuccess</code> コールバックが呼び出されます。これは、<a href="/ja/docs/Web/Apps/Platform-specific_details">ここ</a> に書かれているインストールアクションが発生したことを意味します。</p> -<p>インストールが成功しなかった場合、<code>onerror</code> コールバックが呼び出されます。失敗したインストールでは、<code>DOMRequest.error</code> にエラーに関する情報を含む <code>DOMError</code> オブジェクトが含まれます。</p> -<p>上のコードでは、既に呼び出された関数の後にリスナーが追加されているため、おかしな感じに見えるかもしれません。しかし、これが <code>DOMRequest</code> オブジェクトの操作方法なのです。関数の呼び出しはリスナーが定義されるまで待機し、リスナーは適切に呼び出されます。<code>install()</code> 関数は <code>onsuccess</code> や <code>onerror</code> リスナーが定義されていない場合でも動作します。</p> -<h2 id="Error" name="Error">エラー</h2> -<p>インストールが成功しなかった場合、以下のエラーのいずれかが <code>DOMRequest.error</code> に含まれて返ります。</p> -<dl> - <dt> - <code>DENIED</code></dt> - <dd> - ユーザがインストールをキャンセルした。</dd> - <dt> - <code>INVALID_MANIFEST</code></dt> - <dd> - マニフェストが、正しい JSON 形式ではあるものの、必要な項目を含んでいないか、何らかの不正な状態。</dd> - <dt> - <code>MANIFEST_URL_ERROR</code></dt> - <dd> - HTTP 200 以外のステータスコードが返ってきた、あるいは何らかの接続エラー。</dd> - <dt> - <code>MANIFEST_PARSE_ERROR</code></dt> - <dd> - マニフェストの JSON が不正な形式。</dd> - <dt> - <code>NETWORK_ERROR</code></dt> - <dd> - 接続エラー。</dd> - <dt> - <code>REINSTALL_FORBIDDEN</code></dt> - <dd> - アプリの再インストールが禁止されている。</dd> - <dt> - <code>MULTIPLE_APPS_PER_ORIGIN_FORBIDDEN</code></dt> - <dd> - インストール可能なアプリには「オリジンごとにアプリひとつ」というセキュリティポリシーが適用され、基本的に 1 つのオリジンで 2 つ以上のアプリをホストできません。</dd> -</dl> -<h2 id="Related_topics" name="Related_topics">関連情報</h2> -<ul> - <li><a href="/ja/docs/Web/Apps/Publishing/Validating_a_receipt">レシートの検証</a></li> - <li><a href="/ja/docs/Web/Apps/Platform-specific_details">プラットフォーム固有の詳細</a></li> - <li><a href="/ja/docs/Web/API/App">App オブジェクト</a></li> - <li><a href="/ja/docs/Web/API/DOMError">DOMError オブジェクト</a></li> - <li><a href="/ja/docs/Web/Apps/JavaScript_API">Apps JavaScript API</a></li> -</ul> diff --git a/files/ja/web/api/domapplicationsregistry/installpackage/index.html b/files/ja/web/api/domapplicationsregistry/installpackage/index.html deleted file mode 100644 index 12b2912820..0000000000 --- a/files/ja/web/api/domapplicationsregistry/installpackage/index.html +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: Apps.installPackage -slug: Web/API/DOMApplicationsRegistry/installPackage -tags: - - API - - Apps - - Firefox OS - - Method - - NeedsContent -translation_of: Archive/Marketplace/API/DOMApplicationsRegistry/installPackage ---- -<p>{{ ApiRef() }} {{non-standard_header}}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p><a href="/ja/docs/Web/Apps/Packaged_apps">パッケージ型アプリ</a> をインストールします。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">installPackage: function(aURL[, aParams])</pre> -<h3 id="Parameters" name="Parameters">引数</h3> -<div> - </div> -<div> - <dl> - <dt> - <code>aURL</code></dt> - <dd> - インストールしようとするアプリパッケージに関連付けられたミニマニフェストの URL。完全な絶対 URL でなければいけません。</dd> - <dt> - <code>aParams</code></dt> - <dd> - (オプション) 以下の追加の情報を含むオブジェクト。</dd> - </dl> -</div> -<ul> - <li><code>receipts</code>: このインストールの支払レシートを指定するのに使用されます。</li> - <li><code>categories</code>: Web アプリのカテゴリを指定するのに使用されます。</li> -</ul> -<h2 id="Returns" name="Returns">戻り値</h2> -<dl> - <dt> - <code>DOMRequest</code></dt> -</dl> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/Marketplace/Options/Self_publishing#Self-publishing_packaged_apps">パッケージ型アプリの自主配布</a></li> - <li>{{domxref("Apps.install()")}}</li> - <li><a href="/ja/docs/Web/Apps/JavaScript_API">Apps JavaScript API</a></li> -</ul> diff --git a/files/ja/web/api/domcursor/done/index.html b/files/ja/web/api/domcursor/done/index.html deleted file mode 100644 index 360e731a56..0000000000 --- a/files/ja/web/api/domcursor/done/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: DOMCursor.done -slug: Web/API/DOMCursor/done -translation_of: Archive/B2G_OS/API/DOMCursor/done ---- -<div> - {{ApiRef}} {{non-standard_header}}</div> -<h2 id="概要">概要</h2> -<p>The <code>done</code> property indicate if the {{domxref("DOMCursor")}} has reach the last result.</p> -<h2 id="構文">構文</h2> -<pre class="syntaxbox"><var>done</var> = <em>instanceOfDOMCursor</em>.done</pre> -<h3 id="値">値</h3> -<p>A boolean.</p> -<h2 id="ブラウザ互換性">ブラウザ互換性</h2> -<div> - {{CompatibilityTable}}</div> -<div id="compat-desktop"> - <table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Chrome</th> - <th>Firefox (Gecko)</th> - <th>Internet Explorer</th> - <th>Opera</th> - <th>Safari</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatGeckoDesktop("21.0")}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - </tr> - </tbody> - </table> -</div> -<div id="compat-mobile"> - <table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Android</th> - <th>Chrome for Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>IE Mobile</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatGeckoMobile("21.0")}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - </tr> - </tbody> - </table> -</div> -<h2 id="Specification" name="Specification">仕様</h2> -<p>Not currently part of any specification.</p> -<h2 id="関連情報">関連情報</h2> -<ul> - <li>{{domxref("DOMCursor")}}</li> -</ul> diff --git a/files/ja/web/api/domcursor/index.html b/files/ja/web/api/domcursor/index.html deleted file mode 100644 index 8f1d51f581..0000000000 --- a/files/ja/web/api/domcursor/index.html +++ /dev/null @@ -1,102 +0,0 @@ ---- -title: DOMCursor -slug: Web/API/DOMCursor -tags: - - API - - DOM - - DOM Reference - - Gecko DOM Reference - - Non-standard - - Reference - - WebAPI -translation_of: Archive/B2G_OS/API/DOMCursor ---- -<div> - {{Apiref}} {{non-standard_header}}</div> -<h2 id="概要">概要</h2> -<p><code>DOMCursor</code> オブジェクトは結果のリスト全体の継続的な操作を可能にしています。これは、結果のリストを非同期で反復することを許可した{{domxref("DOMRequest")}} を拡張したものです。{{domxref("DOMCursor.continue()","continue()")}}メソッドが呼ばれるたびに、DOMCurosr はリストの次の要素へ移動を試み、結果の成功または失敗を呼び出します。</p> -<h2 id="属性">属性</h2> -<dl> - <dt> - {{domxref("DOMCursor.done")}}</dt> - <dd> - 最後の要素に達しているかを示します。</dd> -</dl> -<p>Inherited from {{domxref("DOMRequest")}}:</p> -<p>{{page("/en-US/docs/Web/API/DOMRequest","Properties")}}</p> -<h2 id="メソッド">メソッド</h2> -<dl> - <dt> - {{domxref("DOMCursor.continue()")}}</dt> - <dd> - 次のカーソルへと移動します。</dd> -</dl> -<h2 id="例">例</h2> -<pre class="brush:js">var sdcard = navigator.getDeviceStorage('sdcard'); -var cursor = sdcard.enumerate(); - -cursor.onsuccess = function () { - console.log("File found: " + this.result.name); - - // Once we found a file we check if there is other results - if (!this.done) { - // Then we move to the next result, which call the - // cursor success with the next file as result. - this.continue(); - } -}</pre> -<h2 id="ブラウザ互換性">ブラウザ互換性</h2> -<div> - {{CompatibilityTable}}</div> -<div id="compat-desktop"> - <table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Chrome</th> - <th>Firefox (Gecko)</th> - <th>Internet Explorer</th> - <th>Opera</th> - <th>Safari</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatGeckoDesktop("21.0")}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - </tr> - </tbody> - </table> -</div> -<div id="compat-mobile"> - <table class="compat-table"> - <tbody> - <tr> - <th>Feature</th> - <th>Android</th> - <th>Chrome for Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>IE Mobile</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>Basic support</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatGeckoMobile("21.0")}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - <td>{{CompatUnknown}}</td> - </tr> - </tbody> - </table> -</div> -<h2 id="Specification" name="Specification">仕様</h2> -<p>Not currently part of any specification.</p> -<h2 id="関連情報">関連情報</h2> -<ul> - <li>{{domxref("DOMRequest")}}</li> -</ul> diff --git a/files/ja/web/api/domrequest/error/index.html b/files/ja/web/api/domrequest/error/index.html deleted file mode 100644 index 44416750c8..0000000000 --- a/files/ja/web/api/domrequest/error/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: DOMRequest.error -slug: Web/API/DOMRequest/error -tags: - - DOM - - DOMRequest - - Gecko DOM Reference -translation_of: Archive/B2G_OS/API/DOMRequest/error ---- -<div>{{ApiRef}}{{non-standard_header}}</div> - -<h2 id="Summary" name="Summary">概要</h2> - -<p>このプロパティは {{domxref("DOMError")}} オブジェクト内のエラー情報を含みます。</p> - -<h2 id="Syntax" name="Syntax">構文</h2> - -<pre class="syntaxbox"><var>errorname</var> = <em>request</em>.error.name; -</pre> - -<ul> - <li><var>request</var> : {{domxref("DOMRequest")}} オブジェクト。エラー名を取得します。エラーの型については {{domxref("DOMError")}} を参照して下さい。</li> -</ul> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>どの仕様書にも記載されていません。</p> - -<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザ実装状況</h2> - -<div>Supported in Firefox 13.<br> -Available in workers in Firefox 41.</div> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li>{{domxref("DOMRequest")}} - <ul> - <li>{{domxref("DOMRequest.onsuccess")}}</li> - <li>{{domxref("DOMRequest.onerror")}}</li> - <li>{{domxref("DOMRequest.readyState")}}</li> - <li>{{domxref("DOMRequest.result")}}</li> - </ul> - </li> -</ul> diff --git a/files/ja/web/api/domrequest/index.html b/files/ja/web/api/domrequest/index.html deleted file mode 100644 index 0e6ef466a3..0000000000 --- a/files/ja/web/api/domrequest/index.html +++ /dev/null @@ -1,102 +0,0 @@ ---- -title: DOMRequest -slug: Web/API/DOMRequest -tags: - - DOM - - Gecko DOM Reference -translation_of: Archive/B2G_OS/API/DOMRequest ---- -<div> - {{ApiRef}}</div> -<p><code>DOMRequest</code> オブジェクトは、進行中の操作を表します。操作の完了時に呼び出されるコールバックと、操作結果への参照を提供します。 進行中の操作を開始する DOM メソッドは、その操作の進行状況の監視に使用できる <code>DOMRequest</code> オブジェクトを返すことがあります。</p> -<h2 id="Attributes" name="Attributes">属性</h2> -<dl> - <dt> - {{ domxref("DOMRequest.onsuccess") }}</dt> - <dd> - <code>DOMRequest</code> によって表される、操作の完了時に呼び出されるコールバックハンドラ</dd> - <dt> - {{ domxref("DOMRequest.onerror") }}</dt> - <dd> - 操作の処理中にエラーが発生したときに呼び出されるコールバックハンドラ</dd> - <dt> - {{ domxref("DOMRequest.readyState") }}</dt> - <dd> - 操作が完了しているか否かを示す <a href="/ja/docs/JavaScript/Reference/Global_Objects/String" title="JavaScript/Reference/Global_Objects/String"><code>string</code></a>。値は "done" もしくは "pending" の何れか。</dd> - <dt> - {{ domxref("DOMRequest.result") }}</dt> - <dd> - 操作結果</dd> - <dt> - {{ domxref("DOMRequest.error") }}</dt> - <dd> - エラー情報(※存在する場合)</dd> -</dl> -<h2 id="Example" name="Example">例</h2> -<p>{{domxref("App")}} の <code>onsuccess</code>、 <code>onerror</code>、 <code>result</code>、 <code>error</code> の使用例</p> -<pre class="brush: js">var pending = navigator.mozApps.install(manifestUrl); - -pending.onsuccess = function () { - // Save the App object that is returned - var appRecord = this.result; - alert('Installation successful!') -}; - -pending.onerror = function () { - // Display the name of the error - alert('Install failed, error: ' + this.error.name); -};</pre> -<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザ実装状況</h2> -<p>{{ CompatibilityTable }}</p> -<div id="compat-desktop"> - <table class="compat-table"> - <tbody> - <tr> - <th>機能</th> - <th>Chrome</th> - <th>Firefox (Gecko)</th> - <th>Internet Explorer</th> - <th>Opera</th> - <th>Safari</th> - </tr> - <tr> - <td>基本サポート</td> - <td>{{ CompatUnknown }}</td> - <td>{{ CompatGeckoDesktop("13.0") }}</td> - <td>{{ CompatUnknown }}</td> - <td>{{ CompatUnknown }}</td> - <td>{{ CompatUnknown }}</td> - </tr> - </tbody> - </table> -</div> -<div id="compat-mobile"> - <table class="compat-table"> - <tbody> - <tr> - <th>機能</th> - <th>Android</th> - <th>Chrome for Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>IE Mobile</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>基本サポート</td> - <td>{{ CompatUnknown }}</td> - <td>{{ CompatUnknown }}</td> - <td>{{ CompatGeckoMobile("13.0") }}</td> - <td>{{ CompatUnknown }}</td> - <td>{{ CompatUnknown }}</td> - <td>{{ CompatUnknown }}</td> - </tr> - </tbody> - </table> -</div> -<h2 id="Specification" name="Specification">仕様</h2> -<p>どの仕様書にも含まれていません。</p> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/docs/DOM/SmsRequest">SmsRequest</a> {{non-standard_inline}} ※現・<code>DOMRequest</code></li> -</ul> diff --git a/files/ja/web/api/fmradio/antennaavailable/index.html b/files/ja/web/api/fmradio/antennaavailable/index.html deleted file mode 100644 index 231ff03eb6..0000000000 --- a/files/ja/web/api/fmradio/antennaavailable/index.html +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: FMRadio.antennaAvailable -slug: Web/API/FMRadio/antennaAvailable -tags: - - API - - B2G - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/antennaAvailable ---- -<div class="syntaxbox"> - {{ non-standard_header() }}</div> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>antennaAvailable</code> プロパティの値は、アンテナが接続されており利用可能かどうかを示します。</p> -<h2 id="構文">構文</h2> -<pre class="syntaxbox">var antenna = <em>instanceOfFMRadio</em>.antennaAvailable</pre> -<h2 id="値">値</h2> -<p>真偽値を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">navigator.mozFMRadio.onantennaavailablechange = function () { - if (navigator.mozFMRadio.antennaAvailable) { - console.log("アンテナが接続されています"); - } else { - console.log("アンテナが接続されていません"); - } -}; -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.onantennaavailablechange")}}</li> - <li>{{event("antennaavailablechange")}} イベント</li> -</ul> diff --git a/files/ja/web/api/fmradio/cancelseek/index.html b/files/ja/web/api/fmradio/cancelseek/index.html deleted file mode 100644 index 736c88f018..0000000000 --- a/files/ja/web/api/fmradio/cancelseek/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: FMRadio.cancelSeek -slug: Web/API/FMRadio/cancelSeek -tags: - - API - - B2G - - Firefox OS - - Method - - Non Standard - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/cancelSeek ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>cancelSeek</code> メソッドは、ラジオチャンネルの周波数の探索を中止するために使用します。</p> -<h2 id="構文">構文</h2> -<pre>var request = <em>instanceOfFMRadio</em>.cancelSeek();</pre> -<h3 id="戻り値">戻り値</h3> -<p>命令の成功またはエラーを扱う <a href="/docs/Web/API/DOMRequest" title="/docs/Web/API/DOMRequest"><code>DOMRequest</code></a> を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">navigator.mozFMRadio.seekUp(); - -window.onfrenquencychange = function () { - var request = navigator.mozFMRadio.cancelSeek(); - - request.onsuccess = function () { - console.log("Ok, let's stop seeking."); - } - - request.onerror = function () { - console.log("Mmmh... ok, but there is actually nothing to cancel."); - } -} -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.seekDown")}}</li> - <li>{{domxref("FMRadio.seekUp ")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/channelwidth/index.html b/files/ja/web/api/fmradio/channelwidth/index.html deleted file mode 100644 index 0e69232a4c..0000000000 --- a/files/ja/web/api/fmradio/channelwidth/index.html +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: FMRadio.channelWidth -slug: Web/API/FMRadio/channelWidth -tags: - - API - - B2G - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/channelWidth ---- -<div class="syntaxbox"> - {{ non-standard_header() }}</div> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>channelWidth</code> プロパティの値は、周波数範囲のチャンネル幅を MHz 単位で示します。</p> -<p>通常、この値は次のいずれかです: <code>0.05</code>, <code>0.1</code> (既定値) または <code>0.2</code>。</p> -<p>周波数がラジオに割り当てられる時、<code>channelWidth</code> に与えられた最も近い周波数の値に丸められます。例えば、100MHz が正しい周波数であり、channelWidth の値が 0.2 である場合、100.2 や 99.8 は正しい周波数ですが、100.15 は 100.2 に丸められます。</p> -<h2 id="構文">構文</h2> -<pre class="syntaxbox">var width = <em>instanceOfFMRadio</em>.channelWidth</pre> -<h2 id="値">値</h2> -<p>真偽値を返します。</p> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/disable/index.html b/files/ja/web/api/fmradio/disable/index.html deleted file mode 100644 index 0ea44dca1b..0000000000 --- a/files/ja/web/api/fmradio/disable/index.html +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: FMRadio.disable -slug: Web/API/FMRadio/disable -tags: - - API - - B2G - - Firefox OS - - Method - - Non Standard - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/disable ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>disable</code> メソッドは、ラジオを OFF にするために使用します。</p> -<p>このメソッドの呼び出しが成功した時に、毎回 {{event("disabled")}} イベントが発生します。</p> -<h2 id="構文">構文</h2> -<pre>var request = <em>instanceOfFMRadio</em>.disable();</pre> -<h3 id="戻り値">戻り値</h3> -<p>命令の成功またはエラーを扱う <a href="/docs/Web/API/DOMRequest" title="/docs/Web/API/DOMRequest"><code>DOMRequest</code></a> を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">var request = navigator.mozFMRadio.disable(100.0); - -request.onsuccess = function () { - console.log("The radio is turned off"); -} - -request.onerror = function () { - console.log("Something goes wrong!"); -} -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.enabled")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/enable/index.html b/files/ja/web/api/fmradio/enable/index.html deleted file mode 100644 index 323607f8ad..0000000000 --- a/files/ja/web/api/fmradio/enable/index.html +++ /dev/null @@ -1,49 +0,0 @@ ---- -title: FMRadio.enable -slug: Web/API/FMRadio/enable -tags: - - API - - B2G - - Firefox OS - - Method - - Non Standard - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/enable ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>enable</code> メソッドは、与えられた周波数でラジオを ON にするために使用します。</p> -<p>この関数は、引数なしで呼び出された場合、エラーを投げます。</p> -<p>このメソッドの呼び出しが成功した時に、毎回 {{event("enabled")}} イベントと {{event("frequencychange")}} イベントが発生します。</p> -<h2 id="構文">構文</h2> -<pre>var request = <em>instanceOfFMRadio</em>.enable(frequency);</pre> -<h3 id="引数">引数</h3> -<dl> - <dt> - <code>frenquency</code></dt> - <dd> - ラジオが受信する信号の周波数の値。</dd> -</dl> -<h3 id="戻り値">戻り値</h3> -<p>命令の成功またはエラーを扱う <a href="/docs/Web/API/DOMRequest" title="/docs/Web/API/DOMRequest"><code>DOMRequest</code></a> を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">var request = navigator.mozFMRadio.enable(100.0); - -request.onsuccess = function () { - console.log("The radio is enable"); -} - -request.onerror = function () { - console.log("Something goes wrong!"); -} -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.enabled")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/enabled/index.html b/files/ja/web/api/fmradio/enabled/index.html deleted file mode 100644 index c45a6568a9..0000000000 --- a/files/ja/web/api/fmradio/enabled/index.html +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: FMRadio.enabled -slug: Web/API/FMRadio/enabled -tags: - - API - - B2G - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/enabled ---- -<div class="syntaxbox"> - {{ non-standard_header() }}</div> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>enabled</code> プロパティの値は、ラジオが再生中 (<code>true</code>) か、そうでない (<code>false</code>) かを示します。</p> -<h2 id="構文">構文</h2> -<pre class="syntaxbox">var playing = <em>instanceOfFMRadio</em>.enabled</pre> -<h2 id="値">値</h2> -<p>真偽値を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">window.addEventListener('enabled', function () { - if (navigator.mozFMRadio.enabled) { - console.log("ラジオは再生中です"); - } else { - console.log("ラジオは OFF です"); - } -}); -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.enable()")}}</li> - <li>{{domxref("FMRadio.onenabled")}}</li> - <li>{{event("enabled")}} イベント</li> -</ul> diff --git a/files/ja/web/api/fmradio/frequency/index.html b/files/ja/web/api/fmradio/frequency/index.html deleted file mode 100644 index b495dd9516..0000000000 --- a/files/ja/web/api/fmradio/frequency/index.html +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: FMRadio.frequency -slug: Web/API/FMRadio/frequency -tags: - - API - - B2G - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/frequency ---- -<div class="syntaxbox"> - {{ non-standard_header() }}</div> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>frequency</code> プロパティの値は、現在のラジオ周波数を返します。</p> -<h2 id="構文">構文</h2> -<pre class="syntaxbox">var frequency = <em>instanceOfFMRadio</em>.frequency</pre> -<h2 id="値">値</h2> -<p>ラジオ周波数の <a href="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84" title="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84">MHz</a> (MegaHertz) 単位の値を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">window.addEventListener('frequencychange', function () { - console.log("周波数が " + navigator.mozFMRadio.frequency + "MHz に変更されました"); -}); -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.onfrequencychange")}}</li> - <li>{{event("frequencychange")}} イベント</li> -</ul> diff --git a/files/ja/web/api/fmradio/frequencylowerbound/index.html b/files/ja/web/api/fmradio/frequencylowerbound/index.html deleted file mode 100644 index ac16e95d45..0000000000 --- a/files/ja/web/api/fmradio/frequencylowerbound/index.html +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: FMRadio.frequencyLowerBound -slug: Web/API/FMRadio/frequencyLowerBound -tags: - - API - - B2G - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/frequencyLowerBound ---- -<div class="syntaxbox"> - {{ non-standard_header() }}</div> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>frequencyLowerBound</code> プロパティの値は、{{domxref("FMRadio.seek","seek")}} メソッドで検索できるラジオ局の周波数の最小値を示します。</p> -<h2 id="構文">構文</h2> -<pre class="syntaxbox">var max = <em>instanceOfFMRadio</em>.frequencyLowerBound</pre> -<h2 id="値">値</h2> -<p><a href="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84" title="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84">MHz</a> (MegaHertz) 単位の数値を返します。</p> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.seek()")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/frequencyupperbound/index.html b/files/ja/web/api/fmradio/frequencyupperbound/index.html deleted file mode 100644 index 2e5e426b61..0000000000 --- a/files/ja/web/api/fmradio/frequencyupperbound/index.html +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: FMRadio.frequencyUpperBound -slug: Web/API/FMRadio/frequencyUpperBound -tags: - - API - - B2G - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/frequencyUpperBound ---- -<div class="syntaxbox"> - {{ non-standard_header() }}</div> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>frequencyUpperBound</code> プロパティの値は、{{domxref("FMRadio.seek","seek")}} メソッドで検索できるラジオ局の周波数の最大値を示します。</p> -<h2 id="構文">構文</h2> -<pre class="syntaxbox">var max = <em>instanceOfFMRadio</em>.frequencyUpperBound</pre> -<h2 id="値">値</h2> -<p><a href="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84" title="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84">MHz</a> (MegaHertz) 単位の数値を返します。</p> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.seek()")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/index.html b/files/ja/web/api/fmradio/index.html deleted file mode 100644 index 84880d4d92..0000000000 --- a/files/ja/web/api/fmradio/index.html +++ /dev/null @@ -1,120 +0,0 @@ ---- -title: FMRadio -slug: Web/API/FMRadio -tags: - - API - - B2G - - Firefox OS - - Non Standard - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p>WebFM API は、端末の FM ラジオへのアクセスを提供します。このインターフェースは、FM ラジオの ON、OFF およびチューニングにより他の局への切り替えを可能にします。これらは {{domxref("window.navigator.mozFMRadio","navigator.mozFMRadio")}} プロパティを通してアクセスできます。</p> -<h2 id="API_概観">API 概観</h2> -<pre>interface FMRadio : EventTarget { - readonly attribute boolean enabled; - readonly attribute boolean antennaAvailable; - readonly attribute double frequency; - readonly attribute double frequencyUpperBound; - readonly attribute double frequencyLowerBound; - readonly attribute double channelWidth; - - attribute Function onantennaavailablechange; - attribute Function onfrequencychange; - attribute Function onenabled; - attribute Function ondisabled; - - DOMRequest enable(double frequency); - DOMRequest disable(); - DOMRequest setFrequency(double frequency); - DOMRequest seekUp(); - DOMRequest seekDown(); - DOMRequest cancelSeek(); -}</pre> -<h2 id="プロパティ">プロパティ</h2> -<dl> - <dt> - {{domxref("FMRadio.enabled")}}</dt> - <dd> - ラジオが再生中かどうかを示します。</dd> - <dt> - {{domxref("FMRadio.antennaAvailable")}}</dt> - <dd> - アンテナが接続され利用可能かどうかを示します。</dd> - <dt> - {{domxref("FMRadio.frequency")}}</dt> - <dd> - 現在のラジオ周波数を示します。</dd> - <dt> - {{domxref("FMRadio.frequencyUpperBound")}}</dt> - <dd> - <code>seek</code> メソッドで検索するラジオ局の周波数の最大値。</dd> - <dt> - {{domxref("FMRadio.frequencyLowerBound")}}</dt> - <dd> - <code>seek</code> メソッドで検索するラジオ局の周波数の最小値。</dd> - <dt> - {{domxref("FMRadio.channelWidth")}}</dt> - <dd> - 周波数の範囲のチャンネル幅 (MHz 単位)。</dd> -</dl> -<h3 id="イベントハンドラ">イベントハンドラ</h3> -<dl> - <dt> - {{domxref("FMRadio.onenabled")}}</dt> - <dd> - {{event("enabled")}} イベントのためのハンドラ。ラジオが ON になった時に発火します。</dd> - <dt> - {{domxref("FMRadio.ondisabled")}}</dt> - <dd> - {{event("disabled")}} イベントのためのハンドラ。ラジオが OFF になった時に発火します。</dd> - <dt> - {{domxref("FMRadio.onantennaavailablechange")}}</dt> - <dd> - {{event("antennaavailablechange")}} イベントのためのハンドラ。アンテナが抜き差しされた時に発火します。</dd> - <dt> - {{domxref("FMRadio.onfrequencychange")}}</dt> - <dd> - {{event("frequencychange")}} イベントのためのハンドラ。ラジオ周波数が変更されるたびに発火します。</dd> -</dl> -<h2 id="メソッド">メソッド</h2> -<dl> - <dt> - {{domxref("FMRadio.enable()")}}</dt> - <dd> - 与えられた周波数でラジオを ON にします。この関数は、引数なしで呼ばれた場合にエラーを投げます。命令の成功またはエラーを扱う {{domxref("DOMRequest")}} を返します。</dd> - <dt> - {{domxref("FMRadio.disable()")}}</dt> - <dd> - ラジオを OFF にします。{{domxref("DOMRequest")}} を返し、これが成功の場合、ラジオが正しく無効化されたことを示します。</dd> - <dt> - {{domxref("FMRadio.setFrequency()")}}</dt> - <dd> - 非同期でラジオの周波数を変更します。周波数の値は、<code>frequencyLowerBound</code> と <code>frequencyUpperBound</code> の間にしなければなりません。この範囲外の値をセットしようとするとエラーになります。</dd> - <dd> - {{domxref("DOMRequest")}} を返し、これが成功の場合、周波数が正しく変更されたことを示します。</dd> - <dt> - {{domxref("FMRadio.seekUp()")}}</dt> - <dd> - 次の周波数を探索します (通常は現在よりも高いほうの周波数)。ラジオチャンネルが見つかると、<code>frequencychange</code> イベントが発生します。{{domxref("DOMRequest")}} を返し、これが成功の場合、探索が開始されたことを示します。探索する周波数が上限に達すると、低い周波数に折り返して探索されます。</dd> - <dt> - {{domxref("FMRadio.seekDown()")}}</dt> - <dd> - 上記と同じですが、現在よりも低いほうの周波数を探索します。探索する周波数が下限に達すると、高い周波数に折り返して探索されます。</dd> - <dt> - {{domxref("FMRadio.cancelSeek()")}}</dt> - <dd> - ラジオチャンネルの探索をキャンセルします。{{domxref("DOMRequest")}} を返し、これが成功の場合、周波数の探索がキャンセルされたことを示します。</dd> -</dl> -<h2 id="仕様書">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li><a href="/docs/WebAPI/WebFM_API" title="/en-US/docs/WebAPI/WebFM_API">WebFM API</a></li> - <li><a href="https://github.com/mozilla-b2g/gaia/tree/master/apps/fm" title="https://github.com/mozilla-b2g/gaia/tree/master/apps/fm">Gaia の FM ラジオアプリ</a></li> -</ul> diff --git a/files/ja/web/api/fmradio/onantennaavailablechange/index.html b/files/ja/web/api/fmradio/onantennaavailablechange/index.html deleted file mode 100644 index caf0caa08d..0000000000 --- a/files/ja/web/api/fmradio/onantennaavailablechange/index.html +++ /dev/null @@ -1,29 +0,0 @@ ---- -title: FMRadio.onantennaavailablechange -slug: Web/API/FMRadio/onantennaavailablechange -tags: - - API - - B2G - - DOM - - DOM Reference - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/onantennaavailablechange ---- -<p>{{ ApiRef() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>{{event("antennaavailablechange")}} イベントを受け取るイベントリスナ関数を指定します。このイベントは、端末にアンテナが接続された時、または外された時に発生します。</p> -<p>現在のアンテナの状態を確認するには、{{domxref("FMRadio.antennaAvailable")}} プロパティを使用してください。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">navigator.mozFMRadio.onantennaavailablechange = funcRef</pre> -<p><code><em>funcRef</em></code> の部分は、{{event("antennaavailablechange")}} イベントが発生した時に呼び出される関数です。</p> -<h2 id="仕様書">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/ondisabled/index.html b/files/ja/web/api/fmradio/ondisabled/index.html deleted file mode 100644 index 70b1272f45..0000000000 --- a/files/ja/web/api/fmradio/ondisabled/index.html +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: FMRadio.ondisabled -slug: Web/API/FMRadio/ondisabled -tags: - - API - - B2G - - DOM - - DOM Reference - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/ondisabled ---- -<p>{{ ApiRef() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>{{event("disabled")}} イベントを受け取るイベントリスナ関数を指定します。このイベントは、端末の FM ラジオが OFF になると発生します。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">navigator.mozFMRadio.ondisabled = funcRef</pre> -<p><code><em>funcRef</em></code> の部分は、{{event("disabled")}} イベントが発生した時に呼び出される関数です。</p> -<h2 id="仕様書">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/onenabled/index.html b/files/ja/web/api/fmradio/onenabled/index.html deleted file mode 100644 index 5188ef58ea..0000000000 --- a/files/ja/web/api/fmradio/onenabled/index.html +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: FMRadio.onenabled -slug: Web/API/FMRadio/onenabled -tags: - - API - - B2G - - DOM - - DOM Reference - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/onenabled ---- -<p>{{ ApiRef() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>{{event("enabled")}} イベントを受け取るイベントリスナ関数を指定します。このイベントは、端末の FM ラジオが ON になると発生します。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">navigator.mozFMRadio.onenabled = funcRef</pre> -<p><code><em>funcRef</em></code> の部分は、{{event("enabled")}} イベントが発生した時に呼び出される関数です。</p> -<h2 id="仕様書">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/onfrequencychange/index.html b/files/ja/web/api/fmradio/onfrequencychange/index.html deleted file mode 100644 index bb340ccb5a..0000000000 --- a/files/ja/web/api/fmradio/onfrequencychange/index.html +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: FMRadio.onfrequencychange -slug: Web/API/FMRadio/onfrequencychange -tags: - - API - - B2G - - DOM - - DOM Reference - - Firefox OS - - Non Standard - - Property - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/onfrequencychange ---- -<p>{{ ApiRef() }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p>{{event("frequencychange")}} イベントを受け取るイベントリスナ関数を指定します。このイベントは、ラジオの周波数が変更されるたびに発生します。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">navigator.mozFMRadio.onfrequencychange = funcRef</pre> -<p><code><em>funcRef</em></code> の部分は、{{event("frequencychange")}} イベントが発生した時に呼び出される関数です。</p> -<h2 id="仕様書">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/seekdown/index.html b/files/ja/web/api/fmradio/seekdown/index.html deleted file mode 100644 index cb1caf4d09..0000000000 --- a/files/ja/web/api/fmradio/seekdown/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: FMRadio.seekDown -slug: Web/API/FMRadio/seekDown -tags: - - API - - B2G - - Firefox OS - - Method - - Non Standard - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/seekDown ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>seekDown</code> メソッドは、次に低い周波数のラジオチャンネルを探索するために使用します。周波数の下限に到達すると、高い周波数から折り返して検索されます。</p> -<p>周波数の変更が成功すると、{{ event("frequencychange")}} イベントが発生します。</p> -<p>探索は一度に一回だけが許可されます。<code>seekDown</code> が呼び出されラジオがすでに探索中である場合、要求は失敗します。</p> -<h2 id="構文">構文</h2> -<pre>var request = <em>instanceOfFMRadio</em>.seekDown();</pre> -<h3 id="戻り値">戻り値</h3> -<p>命令の成功またはエラーを扱う <a href="/docs/Web/API/DOMRequest" title="/docs/Web/API/DOMRequest"><code>DOMRequest</code></a> を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">var request = navigator.mozFMRadio.seekDown(); - -request.onsuccess = function () { - console.log("Searching..."); -} - -request.onerror = function () { - console.log("I guess we are already seeking."); -} -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.seekUp")}}</li> - <li>{{domxref("FMRadio.cancelSeek")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/seekup/index.html b/files/ja/web/api/fmradio/seekup/index.html deleted file mode 100644 index 5a61109c8d..0000000000 --- a/files/ja/web/api/fmradio/seekup/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: FMRadio.seekUp -slug: Web/API/FMRadio/seekUp -tags: - - API - - B2G - - Firefox OS - - Method - - Non Standard - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/seekUp ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>seekUp</code> メソッドは、次に高い周波数のラジオチャンネルを探索するために使用します。周波数の上限に到達すると、低い周波数から折り返して検索されます。</p> -<p>周波数の変更が成功すると、{{ event("frequencychange")}} イベントが発生します。</p> -<p>探索は一度に一回だけが許可されます。<code>seekUp</code> が呼び出されラジオがすでに探索中である場合、要求は失敗します。</p> -<h2 id="構文">構文</h2> -<pre>var request = <em>instanceOfFMRadio</em>.seekUp();</pre> -<h3 id="戻り値">戻り値</h3> -<p>命令の成功またはエラーを扱う <a href="/docs/Web/API/DOMRequest" title="/docs/Web/API/DOMRequest"><code>DOMRequest</code></a> を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">var request = navigator.mozFMRadio.seekUp(); - -request.onsuccess = function () { - console.log("Searching..."); -} - -request.onerror = function () { - console.log("I guess we are already seeking."); -} -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.seekDown")}}</li> - <li>{{domxref("FMRadio.cancelSeek")}}</li> -</ul> diff --git a/files/ja/web/api/fmradio/setfrequency/index.html b/files/ja/web/api/fmradio/setfrequency/index.html deleted file mode 100644 index 9cf575a709..0000000000 --- a/files/ja/web/api/fmradio/setfrequency/index.html +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: FMRadio.setFrequency -slug: Web/API/FMRadio/setFrequency -tags: - - API - - B2G - - Firefox OS - - Method - - Non Standard - - Reference - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/FMRadio/setFrequency ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p><code>setFrequency</code> メソッドは、ラジオが受信する信号の周波数を変更するために使用します。</p> -<p>このメソッドの呼び出しが成功した時に、毎回 {{event("frequencychange")}} イベントが発生します。</p> -<p>セットする周波数の値は、{{domxref("FMRadio.frequencyLowerBound","frequencyLowerBound")}} プロパティと {{domxref("FMRadio.frequencyUpperBound","frequencyUpperBound")}} プロパティで定義された範囲内でなければなりません。</p> -<p>周波数の値をセットすると、実際にラジオが使用する周波数として渡されますが、{{domxref("FMRadio.channelWidth","channelWidth")}} プロパティの値に従って丸められます。</p> -<h2 id="構文">構文</h2> -<pre>var request = <em>instanceOfFMRadio</em>.setFrequency(frequency);</pre> -<h3 id="引数">引数</h3> -<dl> - <dt> - frequency</dt> - <dd> - セットする新しい周波数の値。これは、<a href="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84" title="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84">MHz</a> (MegaHertz) 単位の数値を表します。</dd> -</dl> -<h3 id="戻り値">戻り値</h3> -<p>命令の成功またはエラーを扱う <a href="/docs/Web/API/DOMRequest" title="/docs/Web/API/DOMRequest"><code>DOMRequest</code></a> を返します。</p> -<h2 id="例">例</h2> -<pre class="brush: js">var request = navigator.mozFMRadio.setFrequency(100.15); - -request.onsuccess = function () { - console.log("The radio is now listening the frequency: " + navigator.mozFMRadio.frequency + "MHz"); -} - -request.onerror = function () { - console.log("Something goes wrong!"); -} -</pre> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li>{{domxref("FMRadio.frequency")}}</li> - <li>{{domxref("FMRadio.channelWidth")}}</li> - <li>{{domxref("FMRadio.frequencyLowerBound")}}</li> - <li>{{domxref("FMRadio.frequencyUpperBound")}}</li> -</ul> diff --git a/files/ja/web/api/htmliframeelement/getvisible/index.html b/files/ja/web/api/htmliframeelement/getvisible/index.html deleted file mode 100644 index 6f91260fc9..0000000000 --- a/files/ja/web/api/htmliframeelement/getvisible/index.html +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: HTMLIFrameElement.getVisible -slug: Web/API/HTMLIFrameElement/getVisible -tags: - - B2G - - Browser - - Firefox OS - - Non Standard - - WebAPI -translation_of: Mozilla/Gecko/Chrome/API/Browser_API/getVisible ---- -<div> - {{non-standard_header}} {{B2GOnlyHeader2('privileged')}}</div> -<h2 id="Summary" name="Summary">概要</h2> -<p><code>getVisible</code> メソッドは、 {{HTMLElement("iframe")}} 要素の現在の可視状態の取得に用います。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox"><var>instanceOfDOMRequest</var> = <em>instanceOfHTMLIframeElement</em>.getVisible();</pre> -<h3 id="Return" name="Return">Return</h3> - -<p>リクエストの成功とエラーを処理するために {{domxref("DOMRequest")}} オブジェクトを返します。要求が成功した場合、リクエストの <code>result</code> はブラウザ {{HTMLElement("iframe")}} の可視状態を示す真偽値となります。</p> -<h2 id="Example" name="Example">例</h2> -<pre class="brush:js;highlight:[2,5]">var browser = document.querySelector("iframe[mozbrowser]"); -var request = browser.getVisible(); - -request.onsuccess = function () { - console.log("The visible state is: " + this.result ? "true" : "false"); -}</pre> -<h2 id="Specification" name="Specification">仕様</h2> -<p>どの仕様書にも含まれていません。</p> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/docs/WebAPI/Browser">Browser API の利用</a></li> -</ul> diff --git a/files/ja/web/api/htmliframeelement/stop/index.html b/files/ja/web/api/htmliframeelement/stop/index.html deleted file mode 100644 index 882a544abb..0000000000 --- a/files/ja/web/api/htmliframeelement/stop/index.html +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: HTMLIFrameElement.stop -slug: Web/API/HTMLIFrameElement/stop -tags: - - B2G - - Browser - - Firefox OS - - Non Standard - - WebAPI -translation_of: Mozilla/Gecko/Chrome/API/Browser_API/stop ---- -<div>{{non-standard_header}} {{B2GOnlyHeader2('privileged')}}</div> - - -<h2 id="Summary" name="Summary">概要</h2> - -<p><code>stop</code> メソッドは {{HTMLElement("iframe")}} のコンテンツの読み込みの停止に用います。</p> - - -<h2 id="Syntax" name="Syntax">構文</h2> - -<pre class="syntaxbox"><em>instanceOfHTMLIframeElement</em>.stop();</pre> - - -<h2 id="Specification" name="Specification">仕様</h2> -<p>どの仕様書にも含まれていません。</p> - - -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/docs/WebAPI/Browser">Browser API の利用</a></li> -</ul> diff --git a/files/ja/web/api/identitymanager/get/index.html b/files/ja/web/api/identitymanager/get/index.html deleted file mode 100644 index 1d772fd295..0000000000 --- a/files/ja/web/api/identitymanager/get/index.html +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: navigator.id.get -slug: Web/API/IdentityManager/get -tags: - - BrowserID - - DOM - - Gecko DOM Reference - - Persona - - Security -translation_of: Archive/IdentityManager/get ---- -<div> - {{ ApiRef }} {{ non-standard_header }}</div> -<div class="note"> - <strong>注記:</strong> この機能は、まだどのブラウザでもサポートされていません。Persona を使用する Web サイトは、そのページに <a href="https://login.persona.org/include.js" title="https://login.persona.org/include.js">ポリフィルライブラリ</a> を含めなければなりません。</div> -<h2 id="Summary" name="Summary">要約</h2> -<p>この関数は、Web サイトが <a href="/ja/docs/Persona" title="Persona">Persona</a> を使用してユーザの認証ができるようにします。この関数は、コールバック関数を引数に指定した "log in with Persona" ボタンの click ハンドラから呼び出してください。</p> -<p><code>navigator.id.get()</code> は、サインインに使用するメールアドレスの選択をユーザに求めます。ユーザの証明書が期限切れの場合は、Persona のパスワードも求めます。その後、ユーザのメールアドレスとパスワードを含む署名付きの <strong>アサーション</strong> が生成され、コールバックに渡されます。</p> -<p>何らかの理由で署名付きのアサーションが生成できないとき (例えば、ユーザがログインをキャンセルした場合や間違ったパスワードを入力した場合) は、コールバック関数に <code>NULL</code> が渡されて呼び出されます。</p> -<p>コールバックが署名付きのアサーションを受け取ったら、検証のためにそれをサーバに送信してください。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">navigator.id.get(gotAssertion); -navigator.id.get(gotAssertion, {privacyPolicy: "/privacy.html", termsOfService: "/tos.html"});</pre> -<h3 id="Parameters" name="Parameters">引数</h3> -<dl> - <dt> - <code>gotAssertion</code></dt> - <dd> - 署名付きのアサーションオブジェクトまたは <code>NULL</code> を引数に持つ関数。コールバック関数で、検証のためにアサーションをサーバに送信してください。</dd> - <dt> - <code>privacyPolicy</code> {{ optional_inline() }}</dt> - <dd> - Web サイトのプライバシーポリシーのページへの絶対パスまたは URL。この引数を指定する場合、<code>termsOfService</code> も指定しなければなりません。<code>termsOfService</code> と <code>privacyPolicy</code> の両方を与えた場合、ログインダイアログに "you confirm that you accept this site's Terms of Use and Privacy Policy." というメッセージを表示してサイトの利用規約とプライバシーポリシーを知らせます。これには、それぞれのページへのリンクが含まれます。<code>termsOfService</code> が指定されない場合、この引数は効果がありません。</dd> - <dt> - <code>termsOfService</code> {{ optional_inline() }}</dt> - <dd> - Web サイトの利用規約のページへの絶対パスまたは URL。この引数を指定する場合、<code>privacyPolicy</code> も指定しなければなりません。<code>termsOfService</code> と <code>privacyPolicy</code> の両方を与えた場合、ログインダイアログに "you confirm that you accept this site's Terms of Use and Privacy Policy." というメッセージを表示してサイトの利用規約とプライバシーポリシーを知らせます。これには、それぞれのページへのリンクが含まれます。<code>privacyPolicy</code> が指定されない場合、この引数は効果がありません。</dd> -</dl> -<h2 id="Example" name="Example">コード例</h2> -<p>例が必要。</p> -<h2 id="Specification" name="Specification">仕様</h2> -<p>まだどの仕様書にも含まれていません。</p> -<h2 id="See_also" name="See_also">参照</h2> -<ul> - <li><a href="/ja/docs/Persona" title="Persona">BrowserID</a></li> - <li>{{domxref("navigator.id")}}</li> - <li>{{domxref("navigator.id.logout()")}}</li> -</ul> diff --git a/files/ja/web/api/identitymanager/getverifiedemail/index.html b/files/ja/web/api/identitymanager/getverifiedemail/index.html deleted file mode 100644 index ba681461a2..0000000000 --- a/files/ja/web/api/identitymanager/getverifiedemail/index.html +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: navigator.id.getVerifiedEmail -slug: Web/API/IdentityManager/getVerifiedEmail -tags: - - BrowserID - - DOM - - Gecko DOM Reference - - Persona - - Security -translation_of: Archive/IdentityManager/getVerifiedEmail ---- -<div> - {{ ApiRef }} {{ non-standard_header }} {{ deprecated_header }}</div> -<div class="note"> - <strong>注記:</strong> この機能は、まだどのブラウザでもサポートされていません。Persona を使用する Web サイトは、そのページに <a href="https://login.persona.org/include.js" title="https://login.persona.org/include.js">ポリフィルライブラリ</a> を含めなければなりません。</div> -<h2 id="Summary" name="Summary">要約</h2> -<p>この関数は、Web サイトが <a href="/ja/docs/BrowserID" title="BrowserID">BrowserID</a> を使用してユーザの認証ができるようにします。この関数は、コールバック関数を引数に指定した "log in with BrowserID" ボタンの click ハンドラから呼び出してください。</p> -<p><code>navigator.id.getVerifiedEmail()</code> は、サインインに使用するメールアドレスの選択をユーザに求めます。ユーザの証明書が期限切れの場合は、BrowserID のパスワードも求めます。その後、ユーザのメールアドレスとパスワードを含む署名付きの <strong>アサーション</strong> が生成され、コールバックに渡されます。</p> -<p>何らかの理由で署名付きのアサーションが生成できないとき (例えば、ユーザがログインをキャンセルした場合や間違ったパスワードを入力した場合) は、コールバック関数に <code>NULL</code> が渡されて呼び出されます。</p> -<p>コールバックが署名付きのアサーションを受け取ったら、検証のためにそれをサーバに送信してください。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">window.navigator.id.getVerifiedEmail(gotAssertion);</pre> -<h3 id="Parameters" name="Parameters">引数</h3> -<dl> - <dt> - <code>gotAssertion</code></dt> - <dd> - 署名付きのアサーションオブジェクトまたは <code>NULL</code> を引数に持つコールバック関数。コールバック関数では、検証のためにアサーションをサーバに送信してください。</dd> -</dl> -<h2 id="Example" name="Example">コード例</h2> -<p>例が必要。</p> -<h2 id="Specification" name="Specification">仕様</h2> -<p>まだどの仕様書にも含まれていません。</p> -<h2 id="See_also" name="See_also">参照</h2> -<ul> - <li><a href="/ja/docs/BrowserID" title="BrowserID">BrowserID</a></li> - <li>{{domxref("navigator.id")}}</li> - <li>{{domxref("navigator.id.get()")}}</li> - <li>{{domxref("navigator.id.logout()")}}</li> -</ul> diff --git a/files/ja/web/api/identitymanager/index.html b/files/ja/web/api/identitymanager/index.html deleted file mode 100644 index 561c8e450e..0000000000 --- a/files/ja/web/api/identitymanager/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: IdentityManager -slug: Web/API/IdentityManager -tags: - - API -translation_of: Archive/IdentityManager ---- -<p>{{APIRef("Persona")}}{{non-standard_header}}</p> - -<p>The <strong><code>IdentityManager</code></strong> of the <a href="/en-US/docs/Persona" title="BrowserID">BrowserID protocol</a> exposes the BrowserID API, via {{domxref("navigator.id")}}. This API has gone through several significant revisions. Each generation is listed separately below.</p> - -<h2 id="ObserverMethods" name="ObserverMethods">The "Observer" API (Current)</h2> - -<p>The Observer API introduces much-requested features, such as an improved post-verification experience for first-time users, automatic persistent logins, and easier integration with native applications.</p> - -<dl> - <dt>{{ domxref("IdentityManager.watch()")}}</dt> - <dd>Registers callbacks to be invoked when a user logs into or out of a website.</dd> - <dt>{{ domxref("IdentityManager.request()")}}</dt> - <dd>Requests a signed identity assertion from the user.</dd> - <dt>{{ domxref("IdentityManager.logout()")}}</dt> - <dd>Logs the user out of a website and prevents the <code>onlogin</code> action from automatically firing on their next visit.</dd> -</dl> - -<div class="note"> -<p>Users with third-party cookies disabled may experience problems logging in using the Observer API as detailed in <a href="https://github.com/mozilla/browserid/issues/2999" title="https://github.com/mozilla/browserid/issues/2999">issue 2999</a>.</p> -</div> - -<h2 id="CallbackMethods" name="CallbackMethods">The "Callback" API (Current)</h2> - -<p>The Callback API was introduced in November 2011. It improved upon the initial API by allowing options to be passed to <code>navigator.id.get()</code> and offering experimental support for BrowserID-managed persistent sessions.</p> - -<dl> - <dt>{{ domxref("IdentityManager.get()")}}</dt> - <dd>Gets the user's BrowserID in a signed assertion.</dd> -</dl> - -<h2 id="VerifiedEmailMethods" name="VerifiedEmailMethods">The "VerifiedEmail" API (Deprecated)</h2> - -<p>The VerifiedEmail API was BrowserID's first API. It was deprecated at the end of 2011.</p> - -<dl> - <dt>{{ domxref("IdentityManager.getVerifiedEmail()")}} {{ deprecated_inline() }}</dt> - <dd>Gets the user's BrowserID in a signed assertion. This method is deprecated; {{ domxref("navigator.id.get()")}} is backwards compatible and can be used instead.</dd> -</dl> diff --git a/files/ja/web/api/identitymanager/logout/index.html b/files/ja/web/api/identitymanager/logout/index.html deleted file mode 100644 index e235472220..0000000000 --- a/files/ja/web/api/identitymanager/logout/index.html +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: navigator.id.logout -slug: Web/API/IdentityManager/logout -tags: - - BrowserID - - DOM - - Gecko DOM Reference - - Persona - - Security -translation_of: Archive/IdentityManager/logout ---- -<div> - {{ ApiRef() }} {{ non-standard_header() }}</div> -<div class="note"> - <strong>注記:</strong> この機能は、まだどのブラウザでもサポートされていません。Persona を使用する Web サイトは、そのページに <a href="https://login.persona.org/include.js" title="https://login.persona.org/include.js">ポリフィルライブラリ</a> を含めなければなりません。</div> -<h2 id="Summary" name="Summary">要約</h2> -<p>この関数は、<a href="/ja/docs/Persona" title="Persona">Persona</a> で、Web サイトに対する自動的なログインの持続フラグをリセットするために使用します。この関数が呼び出された後、サイトに自動的にサインインされなくなるので、ユーザが明示的にログインしなおす必要があります。</p> -<p>Web サイトは、この関数をサイトの "log out" ボタンの click ハンドラから呼び出さなければなりません。</p> -<p>この関数は、ユーザの証明書や署名キーをブラウザに <strong>消去させません</strong>。そのため、<code>logout()</code> を呼び出した後、ユーザの ID プロバイダが与えた証明書の新しさに依存して、新たなログインの時に新しいパスワードをユーザに求めたり求めなかったりします。しかし、サインインに使用するメールアドレスの選択は求められます。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">navigator.id.logout();</pre> -<h2 id="Example" name="Example">コード例</h2> -<pre class="brush: js">// ユーザが "Sign Out" をクリックした時に navigator.id.logout(); を実行する -var signoutLink = document.getElementById('signout'); - -if (signoutLink) { - signoutLink.onclick = function(event) { - event.preventDefault(); - navigator.id.logout(); - }; -};</pre> -<h2 id="Specification" name="Specification">仕様</h2> -<p>まだどの仕様書にも含まれていません。</p> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/docs/Persona" title="Persona">BrowserID</a></li> - <li>{{domxref("navigator.id")}}</li> - <li>{{domxref("navigator.id.watch()")}}</li> - <li>{{domxref("navigator.id.logout()")}}</li> -</ul> diff --git a/files/ja/web/api/identitymanager/request/index.html b/files/ja/web/api/identitymanager/request/index.html deleted file mode 100644 index df3d91bdeb..0000000000 --- a/files/ja/web/api/identitymanager/request/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: navigator.id.request -slug: Web/API/IdentityManager/request -tags: - - BrowserID - - DOM - - Gecko DOM Reference - - Persona - - Security -translation_of: Archive/IdentityManager/request ---- -<div> - {{ ApiRef }} {{ non-standard_header }}</div> -<div class="note"> - <strong>注記:</strong> この機能は、まだどのブラウザでもサポートされていません。Persona を使用する Web サイトは、そのページに <a href="https://login.persona.org/include.js" title="https://login.persona.org/include.js">ポリフィルライブラリ</a> を含めなければなりません。</div> -<h2 id="Summary" name="Summary">概要</h2> -<p>この関数は、Web サイトが <a href="/ja/docs/Persona" title="Persona">Persona</a> を使用してユーザの認証ができるようにします。この関数は click ハンドラから呼び出されなければなりません。例えば、ユーザがページ上の「log in with Persona」ボタンをクリックした時に呼び出します。</p> -<p>呼び出された時、<code>navigator.id.request()</code> がユーザにログインするメールアドレスを選択するように求め、さらにユーザの証明書が期限切れの場合は ID プロバイダで認証するように求めます。これらが完了した後、ユーザのメールアドレスとパスワードを含む署名付きの <strong>アサーション</strong> が生成されます。このアサーションは、{{domxref("navigator.id.watch()")}} で登録された <code>onlogin</code> コールバックに渡されます。</p> -<p>この関数は、{{domxref("navigator.id.watch()")}} と連動して <strong>使用されなければなりません</strong>。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">navigator.id.request(); -navigator.id.request({siteName: 'Example Site', siteLogo: '/logo.png'}); -navigator.id.request({termsOfService: '/tos.html', privacyPolicy: '/privacy.html'}); -</pre> -<h3 id="Parameters" name="Parameters">引数</h3> -<dl> - <dt> - <code>oncancel</code> {{ optional_inline() }}</dt> - <dd> - この関数は、ユーザが ID をサイトと共有することを拒否した場合に呼び出されます。</dd> - <dt> - <code>privacyPolicy</code> {{ optional_inline() }}</dt> - <dd> - Web サイトのプライバシーポリシーのページへの絶対パスまたは URL。この引数を指定する場合、<code>termsOfService</code> も指定しなければなりません。<code>termsOfService</code> と <code>privacyPolicy</code> の両方を与えた場合、ログインダイアログに "you confirm that you accept this site's Terms of Use and Privacy Policy." というメッセージを表示してサイトの利用規約とプライバシーポリシーを知らせます。これには、それぞれのページへのリンクが含まれます。<code>termsOfService</code> が指定されない場合、この引数は効果がありません。</dd> - <dt> - <code>returnTo</code> {{ optional_inline() }}</dt> - <dd> - 新しいユーザが最初にメールアドレスの検証を完了した後に表示されるページへの絶対パス。パスは '<code>/</code>' で始めなければなりません。この引数は、Mozilla のフォールバック ID プロバイダにより証明されたユーザにのみ影響します。</dd> - <dt> - <code>siteLogo</code> {{ optional_inline() }}</dt> - <dd> - ログインダイアログに表示する、画像への絶対パス。パスは '<code>/</code>' で始めなければなりません。また、SSL 経由の読み込みが可能でなければなりません。大きなサイズの画像は 100×100 ピクセルに収まるサイズに縮小されます。</dd> - <dt> - <code>siteName</code> {{ optional_inline() }}</dt> - <dd> - ログインダイアログに表示する、サイトのプレーンテキスト表記。Unicode 文字列とスペースは使えますが、マークアップはできません。</dd> - <dt> - <code>termsOfService</code> {{ optional_inline() }}</dt> - <dd> - Web サイトの利用規約のページへの絶対パスまたは URL。この引数を指定する場合、<code>privacyPolicy</code> も指定しなければなりません。<code>termsOfService</code> と <code>privacyPolicy</code> の両方を与えた場合、ログインダイアログに "you confirm that you accept this site's Terms of Use and Privacy Policy." というメッセージを表示してサイトの利用規約とプライバシーポリシーを知らせます。これには、それぞれのページへのリンクが含まれます。<code>privacyPolicy</code> が指定されない場合、この引数は効果がありません。</dd> -</dl> -<h2 id="Example" name="Example">例</h2> -<pre class="brush:js;">var signinLink = document.getElementById('signin'); -if (signinLink) { - signinLink.onclick = function(evt) { - // ユーザから署名付き ID アサーションを要求する - navigator.id.request({ - siteName: 'My Example Site', - siteLogo: '/logo.png', - termsOfService: '/tos.html', - privacyPolicy: '/privacy.html', - returnTo: '/welcome.html', - oncancel: function() { alert('ユーザが ID の共有を拒否しました。'); } - }); - }; -}</pre> -<h2 id="Specification" name="Specification">仕様</h2> -<p>まだどの仕様書にも含まれていません。</p> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/docs/Persona" title="Persona">BrowserID</a></li> - <li>{{domxref("navigator.id")}}</li> - <li>{{domxref("navigator.id.watch()")}}</li> - <li>{{domxref("navigator.id.logout()")}}</li> -</ul> diff --git a/files/ja/web/api/identitymanager/watch/index.html b/files/ja/web/api/identitymanager/watch/index.html deleted file mode 100644 index 7daf89d3ac..0000000000 --- a/files/ja/web/api/identitymanager/watch/index.html +++ /dev/null @@ -1,143 +0,0 @@ ---- -title: navigator.id.watch -slug: Web/API/IdentityManager/watch -tags: - - BrowserID - - DOM - - Persona -translation_of: Archive/IdentityManager/watch ---- -<div>{{ApiRef}} {{non-standard_header}}</div> - -<div class="note"><strong>注記:</strong> この機能は、まだどのブラウザでもサポートされていません。Persona を使用する Web サイトは、そのページに <a href="https://login.persona.org/include.js" title="https://login.persona.org/include.js">ポリフィルライブラリ</a> を含めなければなりません。</div> - -<h2 id="Summary" name="Summary">概要</h2> - -<p>この関数は、<a href="/docs/Persona" title="Persona">Persona</a> ユーザのログインとログアウトに応答するコールバックを登録します。</p> - -<h2 id="Syntax" name="Syntax">構文</h2> - -<pre class="brush:js;">navigator.id.watch({ - loggedInUser: 'bob@example.org', - onlogin: function(assertion) { - // ユーザがログインしました! ここで必要なことは: - // 1. 検証とセッション作成のためのアサーションをバックエンドに送信する。 - // 2. UI を更新する。 - }, - onlogout: function() { - // ユーザがログアウトしました! ここで必要なことは: - // リダイレクトするかバックエンドの呼び出しを行って、ユーザのセッションを破棄する。 - } -}); -</pre> - -<h3 id="Parameters" name="Parameters">引数</h3> - -<dl> - <dt><code>loggedInUser </code>{{optional_inline}}</dt> - <dd>このパラメーターはユーザーの状態がどうなっているはずであるかを Persona に伝えるものです。値は文字列か <code>null</code> あるいは <code>undefined</code> です。</dd> - <dd>文字列はユーザーがサイトに現在ログインしているはずであることを表します。この文字列はそのユーザーの E-mail アドレスであって,大文字/小文字は区別します。null は誰もログインしていないはずであることを表します。このパラメーターを省略するか,あるいは undefined を与えるのは,ユーザーがログインしているか否か不明であることを意味します。</dd> - <dd>Persona は常に,ユーザーはサイトにログインしたいか,あるいはしたくないのだと考えています。Persona は loggedInUser の値を自らの信ずるところ(訳注:Persona が認識しているユーザー)と比較し,この二つの状態を一致させるため,(以下の表のごとくに)適切な関数を呼び出します:</dd> - <dd> - <table> - <thead> - <tr> - <th scope="col">loggedInUser</th> - <th scope="col">Persona's State</th> - <th scope="col">Callback</th> - </tr> - </thead> - <tbody> - <tr> - <td><code>null</code></td> - <td>"foo@example.com"</td> - <td><code>onlogin()</code></td> - </tr> - <tr> - <td><code>undefined</code></td> - <td>"foo@example.com"</td> - <td><code>onlogin()</code></td> - </tr> - <tr> - <td>"bar@example.com"</td> - <td>"foo@example.com"</td> - <td><code>onlogin()</code></td> - </tr> - <tr> - <td>"foo@example.com"</td> - <td>"foo@example.com"</td> - <td style="text-align: center;"><em>none</em></td> - </tr> - <tr> - <td><code>null</code></td> - <td><code>null</code></td> - <td style="text-align: center;"><em>none</em></td> - </tr> - <tr> - <td>"foo@example.com"</td> - <td><code>null</code></td> - <td><code>onlogout()</code></td> - </tr> - <tr> - <td><code>undefined</code></td> - <td><code>null</code></td> - <td><code>onlogout()</code></td> - </tr> - </tbody> - </table> - </dd> - <dd>ページが読み込まれた時に Persona が自動的に呼び出すのは <code>onlogin</code> と <code>onlogout</code> の <em>どちらか</em> であることに注意してください。<em>両方</em> 呼ばれることはありません(訳注:表のとおりどちらも呼ばれないことはある)。<code>loggedInUser</code> に <code>foo@example.com</code> がセットされているのに、Persona が <code>bar@example.com</code> がログインしていると認識している場合、<code>onlogin</code> のみが呼び出されます。この場合、第1引数として <code>bar@example.com</code> のアサーションが渡されます。</dd> - <dt><code>onlogin</code></dt> - <dd>ユーザがログインした時に、1 個の引数としてアサーションが渡され、呼び出される関数。この関数は、検証のためにアサーションをサイトのバックエンドに送信します。検証が成功した場合、バックエンドでユーザのセッションを確立し、この関数内で UI (ログインボタン) を適切なものに更新してください。</dd> - <dt><code>onlogout</code> {{ optional_inline() }}</dt> - <dd>ユーザがログアウトした時に、引数なしで呼び出される関数。この関数で、サイトのバックエンドを呼び出すかユーザをリダイレクトすることにより、ユーザのセッションを破棄してください。</dd> - <dd><code>onlogout</code> が与えられなかったとき <a href="/Persona/The_navigator.id_API#The_Observer_API">Observer API</a> によるセッション管理は無効化されます。<code>onready</code> と <code>onlogin</code> だけが呼び出されます。<code>onlogin</code> は、ユーザーによるログイン操作の反応としてしか呼び出されません(つまりユーザーがログインしていた場合に自動的に呼び出されたりはしません)。</dd> - <dt><code>onready</code> {{ optional_inline() }}</dt> - <dd>A function that will be invoked when the user agent is initialized and able to process calls to <code>id.request</code> and <code>id.logout</code>. The onready callback will be invoked immediately after any automatic invocations of <code>onlogin</code>, <code>onlogout</code>, or <code>onmatch</code>. By waiting to display UI until <code>onready</code> is called, relying parties can avoid UI flicker in cases where the user agent's preferred state is out of sync with the site's session.</dd> - <dd>Note that <code>onready</code> will not be invoked after calls to <code>id.request</code> or <code>id.logout</code>. It is the punctuation mark that concludes the conversation started by <code>watch</code>.</dd> -</dl> - -<h2 id="Example" name="Example">コード例</h2> - -<div class="container"> -<pre class="brush: js">navigator.id.watch({ - loggedInUser: currentUser, // This is email of current user logged into your site - - onlogin: function(assertion) { - - $.ajax({ // This example uses jQuery, but you can use whatever you'd like - type: 'POST', - url: '/auth/login', // This is a URL on your website. - data: {assertion: assertion} - success: function(res, status, xhr) { window.location.reload(); }, - error: function(xhr, status, err) { - navigator.id.logout(); - alert("Login failure: " + err); - } - }); - }, - - onlogout: function() { - $.ajax({ - type: 'POST', - url: '/auth/logout', // This is a URL on your website. - success: function(res, status, xhr) { window.location.reload(); }, - error: function(xhr, status, err) { alert("Logout failure: " + err); } - }); - } - -})<code class="js plain">;</code></pre> -</div> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>まだどの仕様書にも含まれていません。</p> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li><a href="/docs/Persona" title="Persona">BrowserID</a></li> - <li>{{domxref("navigator.id")}}</li> - <li>{{domxref("navigator.id.logout()")}}</li> - <li>{{domxref("navigator.id.request()")}}</li> -</ul> diff --git a/files/ja/web/api/indexeddb_api/using_indexeddb_in_chrome/index.html b/files/ja/web/api/indexeddb_api/using_indexeddb_in_chrome/index.html deleted file mode 100644 index c55da4940f..0000000000 --- a/files/ja/web/api/indexeddb_api/using_indexeddb_in_chrome/index.html +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: chrome(ブラウザー内部) で IndexedDB を使う -slug: Web/API/IndexedDB_API/Using_IndexedDB_in_chrome -translation_of: Mozilla/Tech/XPCOM/Using_IndexedDB_in_chrome ---- -<div>{{DefaultAPISidebar("IndexedDB")}}</div> - -<p><code>IndexedDB</code> API は、通常、コンテンツ JavaScript からユーザーのブラウザーにデータを格納するために使用されます(概要については <a href="/ja/docs/IndexedDB/Using_IndexedDB" title='/ja/docs/IndexedDB/Using_IndexedDB""'>IndexedDB の使用</a>を参照してください) 。ただし、この API には、システム特権の JavaScript から、<code><a href="/ja/docs/Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.importGlobalProperties">Components.utils.importGlobalProperties()</a> </code>関数を使用してアクセスすることもできます:</p> - -<pre class="brush: js">Components.utils.importGlobalProperties(["indexedDB"]); - -// ここからは、コンテンツから IndexedDB を使うのと同様 -var req = indexedDB.open("my-database"); -// ...</pre> - -<p>サンドボックスを作成していて、その中で <code>indexedDB</code> を使用できるようにするには、<code><a href="https://developer.mozilla.org/ja/docs/Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.Sandbox">Sandbox</a></code> コンストラクタで <code>wantGlobalProperties</code> オプションを使用します:</p> - -<pre class="brush: js">var options = { - "wantGlobalProperties": ["indexedDB"] -} -var principal = Cc["@mozilla.org/systemprincipal;1"].createInstance(Ci.nsIPrincipal); -var sandbox = Components.utils.Sandbox(principal, options); - -// サンドボックスから indexedDB にアクセスできるようになる -var sandboxScript = 'var req = indexedDB.open("my-database");'; -Components.utils.evalInSandbox(sandboxScript, sandbox); -</pre> - -<p>Firefox 33以前では、<code>nsIIndexedDatabaseManager</code> サービスの <code>initWindowless</code> メソッドを使用して chrome コードから <code>indexedDB</code> にアクセスしました。このメソッドは Firefox 33 で削除されました。</p> - -<div class="note"> -<p><strong>訳注:</strong> ここでの chrome コードとは、Google chrome ではなく、<span class="st"><em>chrome特権付きのコードを指しています</em></span></p> -</div> diff --git a/files/ja/web/api/moznfc/index.html b/files/ja/web/api/moznfc/index.html deleted file mode 100644 index 221ee0a161..0000000000 --- a/files/ja/web/api/moznfc/index.html +++ /dev/null @@ -1,130 +0,0 @@ ---- -title: MozNFC -slug: Web/API/MozNFC -tags: - - API - - Firefox OS - - Interface - - MozNFC - - NFC - - Reference -translation_of: Archive/B2G_OS/API/MozNFC ---- -<p></p><section class="Quick_links" id="Quick_Links"><ol><li><strong><a href="/ja/docs/Mozilla/Firefox_OS/API/NFC_API">NFC API</a></strong></li><li><strong><a href="/ja/docs/Mozilla/Firefox_OS/API/Web"><code>Web</code></a></strong></li><li class="toggle"><details open><summary>NFC API に関連するページ</summary><ol><li><a href="/ja/docs/Mozilla/Firefox_OS/API/MozNDEFRecord"><code>MozNDEFRecord</code></a></li><li><a href="/ja/docs/Mozilla/Firefox_OS/API/MozNFC"><code>MozNFC</code></a></li><li><a href="/ja/docs/Mozilla/Firefox_OS/API/MozNFCPeer"><code>MozNFCPeer</code></a></li><li><a href="/ja/docs/Mozilla/Firefox_OS/API/MozNFCTag"><code>MozNFCTag</code></a></li></ol></details></li></ol></section><p></p> - -<p><code>MozNFC</code> は、NFC の Reader/Writer モード、P2P モード、カードエミュレーションモードを操作するトップレベル API です。</p> - -<div class="note"> -<p><strong>注記</strong>: このインターフェイスは <a href="/ja/docs/Web/API/Navigator/mozNfc" title="この項目についての文書はまだ書かれていません。書いてみませんか?"><code>Navigator.mozNfc</code></a> 属性を経由してアクセスされます。</p> -</div> - -<h2 id="イベントハンドラ">イベントハンドラ</h2> - -<dl> -</dl> - -<dl> - <dt><a href="/ja/docs/Web/API/MozNFC/onpeerfound" title="MozNFC インターフェースの onpeerfound イベントハンドラは、MozNFCPeer が検出された時にの呼び出されます 。"><code>MozNFC.onpeerfound</code></a></dt> - <dd>NFC デバイスが検出された場合、<code>onpeerfound</code> イベントのコールバック関数が呼び出されます。<strong> Firefox OS 2.2 以上で利用可能</strong>です。</dd> -</dl> - -<dl> - <dt><a href="/ja/docs/Web/API/MozNFC/onpeerlost" title="この項目についての文書はまだ書かれていません。書いてみませんか?"><code>MozNFC.onpeerlost</code></a></dt> - <dd>onpeerfound で検出された peer オブジェクトがアプリケーションから参照できなくなった場合、<code>onpeerlost</code> イベントのコールバック関数が呼び出されます。(peer デバイスが通信範囲外へ移動した場合など)</dd> -</dl> - -<dl> - <dt><a href="/ja/docs/Web/API/MozNFC/ontagfound" title="この項目についての文書はまだ書かれていません。書いてみませんか?"><code>MozNFC.ontagfound</code></a></dt> - <dd>NFCタグが発見された場合、<code>ontagfound</code> イベントがコールバックされます。<strong>Firefox OS 2.2 以上で利用可能</strong>です。</dd> -</dl> - -<dl> - <dt><a href="/ja/docs/Web/API/MozNFC/ontaglost" title="この項目についての文書はまだ書かれていません。書いてみませんか?"><code>MozNFC.ontaglost</code></a></dt> - <dd>ontagfound 中の tag object がアプリケーションから参照できなくなった場合、<code>ontaglost</code> イベントがコールバックされます。(タグが領域外へ移動した場合など) <strong>Firefox OS 2.2 以上で利用可能</strong>です。</dd> -</dl> - -<h2 id="仕様">仕様</h2> - -<p>Gecko の NFC の実装は <a href="http://members.nfc-forum.org/specs/">NFC Forum specifications</a> に準拠しています。</p> - -<dl> -</dl> - -<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザ実装状況</h2> - -<p></p><p class="warning"><strong><a href="https://github.com/mdn/browser-compat-data">現在、互換性データを可読形式の JSON フォーマットに置き換えているところです。</a></strong> - この互換性一覧は古い形式を使っており、これに含まれるデータの置き換えが済んでいません。 - <strong><a href="/ja/docs/MDN/Contribute/Structures/Compatibility_tables">手助けしていただける場合は、こちらから!</a></strong></p> - -<div class="htab"> - <a id="AutoCompatibilityTable" name="AutoCompatibilityTable"></a> - <ul> - <li class="selected"><a>デスクトップ</a></li> - <li><a>モバイル</a></li> - </ul> -</div><p></p> - -<div id="compat-desktop"> -<table class="compat-table"> - <tbody> - <tr> - <th>機能</th> - <th>Chrome</th> - <th>Firefox (Gecko)</th> - <th>Internet Explorer</th> - <th>Opera</th> - <th>Safari (WebKit)</th> - </tr> - <tr> - <td>基本サポート</td> - <td> - <p><span style="color: #f00;">未サポート</span></p> - </td> - <td><span style="color: #f00;">未サポート</span></td> - <td><span style="color: #f00;">未サポート</span></td> - <td><span style="color: #f00;">未サポート</span></td> - <td><span style="color: #f00;">未サポート</span></td> - </tr> - </tbody> -</table> -</div> - -<div id="compat-mobile"> -<table class="compat-table"> - <tbody> - <tr> - <th>機能</th> - <th>Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>Firefox OS (Gecko)</th> - <th>IE Phone</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>基本サポート</td> - <td><span style="color: #f00;">未サポート</span></td> - <td><span style="color: #f00;">未サポート</span></td> - <td>2.0 <span class="inlineIndicator prefixBox prefixBoxInline" title="prefix"><a href="/ja/docs/Web/Guide/Prefixes" title="The name of this feature is prefixed with 'moz' as this browser considers it experimental">moz</a></span> [1]</td> - <td><span style="color: #f00;">未サポート</span></td> - <td><span style="color: #f00;">未サポート</span></td> - <td><span style="color: #f00;">未サポート</span></td> - </tr> - </tbody> -</table> -</div> - -<p>[1] Firefox OS 2.2 の特権アプリで利用可能です。以前は認証アプリでのみ利用可能でした。</p> - -<h2 id="関連情報">関連情報</h2> - -<ul> - <li><a href="https://developer.mozilla.org/docs/Web/API/NFC_API/Using_the_NFC_API">NFC API の使い方</a></li> - <li><a href="https://developer.mozilla.org/docs/Web/API/NFC_API/Using_the_NFC_emulator">NFC エミュレータの使い方</a></li> - <li>W3C API 関連: - <ul> - <li><a href="http://www.w3.org/TR/2014/WD-nfc-20140114/#idl-def-NFCPeer">NFCPeer spec </a></li> - <li><a href="http://www.w3.org/TR/2014/WD-nfc-20140114/#nfctag-interface">NFCTag spec</a></li> - </ul> - </li> -</ul> diff --git a/files/ja/web/api/moznfc/onpeerfound/index.html b/files/ja/web/api/moznfc/onpeerfound/index.html deleted file mode 100644 index 68db382343..0000000000 --- a/files/ja/web/api/moznfc/onpeerfound/index.html +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: MozNFC.onpeerfound -slug: Web/API/MozNFC/onpeerfound -tags: - - API - - Reference -translation_of: Archive/B2G_OS/API/MozNFC/onpeerfound ---- -<p></p><div class="overheadIndicator nonStandard nonStandardHeader"> - <p><strong><span title="この API は標準化されていません。"><i class="icon-warning-sign"> </i></span> 非標準</strong><br> - この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。</p> - </div><p></p> - -<p></p><section class="Quick_links" id="Quick_Links"><ol><li><strong><a href="/ja/docs/Web/API/MozNFC"><code>MozNFC</code></a></strong></li><li class="toggle"><details open><summary>継承</summary><ol><li><a href="/ja/docs/Web/API/EventTarget"><code>EventTarget</code></a></li></ol></details></li><li class="toggle"><details open><summary>Firefox OS に関連するページ</summary><ol><li><a href="/ja/docs/Web/API/MozAlarmsManager"><code>MozAlarmsManager</code></a></li><li><a href="/ja/docs/Web/API/MozMobileNetworkInfo"><code>MozMobileNetworkInfo</code></a></li><li><a href="/ja/docs/Web/API/MozWifiP2pGroupOwner"><code>MozWifiP2pGroupOwner</code></a></li></ol></details></li></ol></section><p></p> - -<p><a href="/ja/docs/Web/API/MozNFC" title="MozNFC は、NFC の Reader/Writer モード、P2P モード、カードエミュレーションモードを操作するトップレベル API です。"><code>MozNFC</code></a> インターフェースの onpeerfound イベントハンドラは、<a href="/ja/docs/Web/API/MozNFCPeer" title="この項目についての文書はまだ書かれていません。書いてみませんか?"><code>MozNFCPeer</code></a> が検出された時にの呼び出されます 。</p> - -<p>このイベントを受け取るためには、アプリケーションをフォアグラウンド (システムアプリによって決まります) で実行している必要があります。</p> - -<p>このイベントのデフォルトの挙動は、システムアプリで再度このイベントをディスパッチすることです。この場合、システムアプリはデフォルトの挙動を行います(例えばバイブレーションなど)。もしアプリケーションがこのイベントをキャンセルしたい場合は、アプリケーションから event.preventDefault() を呼ぶか、このイベントハンドラ内で false を返す必要があります。</p> - -<h2 class="syntaxbox" id="構文">構文</h2> - -<pre class="syntaxbox">attribute EventHandler onpeerfound;</pre> - -<h2 id="プロパティ">プロパティ</h2> - -<p>peer : NFCPeer オブジェクト</p> diff --git a/files/ja/web/api/mozsocial/closepanel/index.html b/files/ja/web/api/mozsocial/closepanel/index.html deleted file mode 100644 index be59b68ee7..0000000000 --- a/files/ja/web/api/mozsocial/closepanel/index.html +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: MozSocial.closePanel -slug: Web/API/MozSocial/closePanel -tags: - - DOM - - Gecko DOM Reference - - Social -translation_of: Archive/Social_API/MozSocial/closePanel ---- -<div> - {{ApiRef}}{{non-standard_header}}{{fx_minversion_header("17.0")}}</div> -<h2 id="Summary" name="Summary">概要</h2> -<p>親のソーシャルメディアプロバイダーパネルの内、現在開いているソーシャルパネルを閉じます。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">MozSocial.closePanel(); -</pre> -<h3 id="Parameters" name="Parameters">引数</h3> -<p>無し</p> -<h2 id="Specification" name="Specification">仕様</h2> -<p>どの仕様書にも含まれていません。</p> diff --git a/files/ja/web/api/mozsocial/index.html b/files/ja/web/api/mozsocial/index.html deleted file mode 100644 index a2f559a9df..0000000000 --- a/files/ja/web/api/mozsocial/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: MozSocial -slug: Web/API/MozSocial -tags: - - API -translation_of: Archive/Social_API/MozSocial ---- -<div>{{ ApiRef("Social API") }} {{non-standard_header}}{{fx_minversion_header("17.0")}}</div> - -<p>The <code>MozSocial</code> object, returned by the <code>navigator.mozSocial</code> property, is available within the social media provider's panel to provide functionality it may need.</p> - -<div class="note"> -<p><strong>Note:</strong> Although Mozilla hopes to submit this API for standardization eventually, it has not yet done so.</p> -</div> - -<h2 id="Attributes" name="Attributes">Properties</h2> - -<dl> - <dt>{{domxref("MozSocial.isVisible")}}</dt> - <dd>Returns a Boolean value; the result is <code>true</code> if the content is visible, otherwise it's <code>false</code>.</dd> -</dl> - -<h2 id="Methods" name="Methods">Methods</h2> - -<dl> - <dt>{{domxref("MozSocial.closePanel()")}}</dt> - <dd>Closes the currently open flyout panel.</dd> - <dt>{{domxref("MozSocial.getAttention()")}}</dt> - <dd>Performs some action designed to get the user's attention; the exact behavior may vary from platform to platform. This might display a visual effect, play an audible notification, flash the screen, or use some other technique.</dd> - <dt>{{domxref("MozSocial.getWorker()")}}</dt> - <dd>Returns a reference to the service worker; once content has this reference, it can call <code>worker.port.postMessage()</code> method to communicate with the service.</dd> - <dt>{{domxref("MozSocial.openChatWindow()")}}</dt> - <dd>Opens a chat window that is anchored to the bottom of the browser window. Each chat window is expected to be a singular chat, but functionality may vary by provider.</dd> - <dt>{{domxref("MozSocial.openPanel()")}}</dt> - <dd>Opens a flyout panel attached to the sidebar at a given vertical offset. This might be, for example, used to display the actual conversation corresponding to a notification in the sidebar.</dd> - <dt>{{domxref("MozSocial.share()")}}</dt> - <dd>Initiates a share action via the SocialAPI Share panel. One argument is passed, an object containing "url", "title", "description", "source" and "image".</dd> -</dl> - -<h2 id="See_also" name="See_also">See also</h2> - -<ul> - <li><a href="/en-US/docs/Social_API" title="Social_API">Social API</a></li> -</ul> diff --git a/files/ja/web/api/mozsocial/isvisible/index.html b/files/ja/web/api/mozsocial/isvisible/index.html deleted file mode 100644 index e40fdffd5b..0000000000 --- a/files/ja/web/api/mozsocial/isvisible/index.html +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: MozSocial.isVisible -slug: Web/API/MozSocial/isVisible -tags: - - DOM - - Gecko DOM Reference - - Social -translation_of: Archive/Social_API/MozSocial/isVisible ---- -<div> - {{ApiRef}}{{non-standard_header}}{{fx_minversion_header("17.0")}}</div> -<h2 id="Summary" name="Summary">概要</h2> -<p>ソーシャルメディアプロバイダのコンテンツサイドバーが現在表示されているかどうかを示します。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">var <var>visible</var> = navigator.MozSocial.isVisible -</pre> -<p>サイドバーが表示されている場合、<var>visible</var> は <code>true</code> に、非表示の場合 <code>false</code> となります。</p> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>どの仕様書にも含まれていません。</p> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/docs/Social_API" title="Social_API">Social API</a></li> -</ul> diff --git a/files/ja/web/api/moztimemanager/index.html b/files/ja/web/api/moztimemanager/index.html deleted file mode 100644 index f841b18ed8..0000000000 --- a/files/ja/web/api/moztimemanager/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: MozTimeManager -slug: Web/API/MozTimeManager -tags: - - B2G - - Firefox OS - - Non-standard - - Time - - WebAPI -translation_of: Archive/B2G_OS/API/MozTimeManager ---- -<div>{{APIRef("Firefox OS")}} {{non-standard_header}} {{B2GOnlyHeader2('certified')}}</div> - -<h2 id="概要">概要</h2> - -<p><code>MozTimeManager</code> インタフェースはデバイスのシステム時間の設定に用います。</p> - -<h2 id="Syntax" name="Syntax">インタフェースの概要</h2> - -<pre class="syntaxbox">interface MozTimeManager -{ - void set((double or Date) time); -}</pre> - -<h2 id="API" name="API">プロパティ</h2> - -<p>無し</p> - -<h2 id="メソッド">メソッド</h2> - -<dl> - <dt>{{domxref("MozTimeManager.set()")}}</dt> - <dd>システム時間を設定する</dd> -</dl> - -<h2 id="仕様">仕様</h2> - -<p>標準仕様書には含まれていません。</p> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li><a href="https://github.com/mozilla-b2g/gaia/blob/master/apps/settings/js/date_time.js">Gaia date/time code in the setting app</a></li> -</ul> diff --git a/files/ja/web/api/navigator/id/index.html b/files/ja/web/api/navigator/id/index.html deleted file mode 100644 index 375c08c5de..0000000000 --- a/files/ja/web/api/navigator/id/index.html +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: navigator.id -slug: Web/API/Navigator/id -tags: - - BrowserID - - DOM - - Gecko DOM Reference - - Persona - - Security -translation_of: Archive/Navigator-id ---- -<div> - {{ ApiRef() }} {{ non-standard_header() }}</div> -<div class="note"> - <strong>注記:</strong> この機能は、まだどのブラウザでもサポートされていません。Persona を使用する Web サイトは、そのページに <a class="link-https" href="https://login.persona.org/include.js" title="https://login.persona.org/include.js">https://login.persona.org/include.js</a> でホストされているポリフィルライブラリを含めなければなりません。</div> -<h2 id="Summary" name="Summary">要約</h2> -<p><a href="/docs/Persona" title="Persona">BrowserID プロトコル</a> は、BrowserID API を開示する {{ domxref ("window.navigator")}} オブジェクトに新しい <code>id</code> プロパティを定義しています。この API はいくつかの重要なリビジョンを経ています。各世代別の API は以下の通りです。</p> -<h2 id="ObserverMethods" name="ObserverMethods">"Observer" API (現在)</h2> -<p>Observer API は、初めて利用したユーザに対する検証後の振る舞いの改善、自動的なログインの持続、ネイティブアプリケーションへの簡単な統合など、多くのリクエストがあった機能を導入しています。</p> -<dl> - <dt> - {{ domxref("navigator.id.watch()")}}</dt> - <dd> - ユーザが Web サイトにログインまたはログアウトした時に呼び出されるコールバックを登録します。</dd> - <dt> - {{ domxref("navigator.id.request()")}}</dt> - <dd> - ユーザからの署名付き ID アサーションを要求します。</dd> - <dt> - {{ domxref("navigator.id.logout()")}}</dt> - <dd> - ユーザを Web サイトからログアウトし、次回そのユーザが Web サイトを訪れた時に自動的に <code>onlogin</code> が実行されることを防ぎます。</dd> -</dl> -<div class="note"> - <p>ユーザがサードパーティーのクッキーを無効にしている場合、Observer API を使用してのログイン時に問題が発生する可能性があります(※参照: <a href="https://github.com/mozilla/browserid/issues/2999" title="https://github.com/mozilla/browserid/issues/2999">onlogout called immediately after onlogin if 3rd party cookies are disabled · Issue #2999 · mozilla/browserid</a> )</p> -</div> -<h2 id="CallbackMethods" name="CallbackMethods">"Callback" API (現在)</h2> -<p>Callback API は、2011 年 11 月に導入されました。この API は、<code>navigator.id.get()</code> にオプションが渡されることを許可し、BrowserID が管理する持続的なセッションの実験的なサポートを提供して初期の API を改善するためのものです。</p> -<dl> - <dt> - {{ domxref("navigator.id.get()")}}</dt> - <dd> - ユーザの署名付きアサーション内の BrowserID を取得します。</dd> -</dl> -<h2 id="VerifiedEmailMethods" name="VerifiedEmailMethods">"VerifiedEmail" API (非推奨)</h2> -<p>VerifiedEmail API は、BrowserID の最初の API でした。この API は、2011 年末に非推奨になりました。</p> -<dl> - <dt> - {{ domxref("navigator.id.getVerifiedEmail()")}} {{ deprecated_inline() }}</dt> - <dd> - ユーザの署名付きアサーション内の BrowserID を取得します。このメソッドは非推奨です。代わりに、後方互換性を持つ {{ domxref("navigator.id.get()")}} を使用してください。</dd> -</dl> diff --git a/files/ja/web/api/navigator/mozcameras/index.html b/files/ja/web/api/navigator/mozcameras/index.html deleted file mode 100644 index 2b67cbfe87..0000000000 --- a/files/ja/web/api/navigator/mozcameras/index.html +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Navigator.mozCameras -slug: Web/API/Navigator/mozCameras -tags: - - API - - DOM - - Firefox OS - - Gecko DOM Reference - - Graphics - - Non Standard - - Property - - WebAPI -translation_of: Archive/B2G_OS/API/Navigator/mozCameras ---- -<p>{{APIRef("Firefox OS")}}</p> - -<p>{{ non-standard_header() }}</p> - -<p>{{B2GOnlyHeader2('privileged')}}</p> - -<h2 id="Summary" name="Summary">概要</h2> - -<p>ユーザの端末で利用可能なカメラへのアクセスに用いる {{domxref("CameraManager")}} オブジェクトを返します。</p> - -<h2 id="Syntax" name="Syntax">構文</h2> - -<pre class="eval">var cameraManager = window.navigator.mozCameras; -</pre> - -<h3 id="Value" name="Value">値</h3> - -<p><code>navigator.mozCameras</code> は、端末で利用可能なカメラへのアクセスに用いる {{domxref("CameraManager")}} オブジェクトです。</p> - -<h2 id="Specification" name="Specification">仕様</h2> - -<p>標準仕様には含まれていません。WebRTC がモバイル端末で広くサポートされるようになった時、これと置き換えられる予定です。</p> - -<h2 id="Permissions" name="Permissions">許可設定</h2> - -<p>Firefox OS 1.4 まで、Camera API は Certified API だったためサードパーティアプリからはアクセスできませんでした。Firefox OS 2.0 からは許可レベルが Privileged に下げられたため、開発者が独自のアプリで利用できるようになりました。</p> - -<pre class="brush: json">"permissions": { - "camera": { - "description": "Required for accessing cameras on the device." - } -}</pre> - -<h2 id="See_also" name="See_also">関連情報</h2> - -<ul> - <li><a href="/docs/WebRTC" title="/docs/WebRTC">WebRTC API</a></li> -</ul> diff --git a/files/ja/web/api/navigator/mozfmradio/index.html b/files/ja/web/api/navigator/mozfmradio/index.html deleted file mode 100644 index 271629e8d7..0000000000 --- a/files/ja/web/api/navigator/mozfmradio/index.html +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: Navigator.mozFMRadio -slug: Web/API/Navigator/mozFMRadio -tags: - - API - - Non-standard - - Property -translation_of: Archive/B2G_OS/API/Navigator/mozFMRadio ---- -<p>{{APIRef}}{{ non-standard_header() }}</p> - -<p>{{ B2GOnlyHeader2('installed') }}</p> - -<h2 id="Summary" name="Summary">概要</h2> - -<p>端末の FM ラジオへのアクセスに使用できる {{ domxref("FMRadio") }} オブジェクトを返します。</p> - -<h2 id="Syntax" name="Syntax">構文</h2> - -<pre class="eval">var WebFM = navigator.mozFMRadio; -</pre> - -<h2 id="Value" name="Value">値</h2> - -<p><code>navigator.mozFMRadio</code> は {{domxref("FMRadio")}} オブジェクトです。</p> - -<h2 id="Specification" name="Specification">仕様書</h2> - -<p>仕様の一部ではありません。</p> - -<h2 id="参照">参照</h2> - -<ul> - <li>{{domxref("FMRadio")}}</li> - <li><a href="/docs/WebAPI/WebFM_API" title="/docs/WebAPI/WebFM_API">WebFM API</a></li> -</ul> diff --git a/files/ja/web/api/navigator/mozpay/index.html b/files/ja/web/api/navigator/mozpay/index.html deleted file mode 100644 index 5226b8eb62..0000000000 --- a/files/ja/web/api/navigator/mozpay/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -title: Navigator.mozPay() -slug: Web/API/Navigator/mozPay -tags: - - API - - Apps - - B2G - - Firefox OS - - Method - - Non Standard - - Web Payment - - WebAPI -translation_of: Archive/Marketplace/API/Navigator/mozPay ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="Summary" name="Summary">概要</h2> -<p><code>mozPay</code> 関数は決済の実行に使用され、アプリ内課金を実現します。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="eval">var request = navigator.mozPay(jwts); -</pre> -<dl> - <dt> - jwts</dt> - <dd> - <a href="http://openid.net/specs/draft-jones-json-web-token-07.html">JSON Web トークン</a> の配列。</dd> -</dl> -<div class="warning"> - <p><strong>警告:</strong> 署名は <a href="/ja/docs/Web/Apps/Publishing/In-app_payments">アプリケーション秘密鍵</a> に由来することから、JSON Web トークンへの署名は必ずサーバサイドで行う必要があります。権限のないユーザがアプリケーション秘密鍵へアクセスすることのないよう注意してください。</p> -</div> -<h2 id="Return" name="Return">戻り値</h2> -<p>{{domxref("DOMRequest")}} オブジェクト。</p> -<h2 id="Example" name="Example">例</h2> -<pre class="brush: js">// 購入を開始します。具体的にはこれを「購入」ボタン上のクリックハンドラに設定します。 -purchaseSomething("A nice unicorn"); - -function purchaseSomething(productID) { - var xhr = new XMLHttpRequest(); - xhr.responseType = 'json'; - - // productID をサーバへ送信し、 - // JWT の配列を受け取る準備をします。 - xhr.open('POST', '/create_jwts'); - - xhr.addEventListener('load', function () { - // JSON レスポンスから JWT と transactionID を受け取ります。これは以下のような形式です。 - // {"jwts": ["jwt1...", "jwt2..."], "transactionID": "1234"} - var jwts = xhr.response.jwts; - var transactionID = xhr.response.transactionID; - - // JSON Web トークンを決済プロバイダに渡します。 - var request = navigator.mozPay(jwts); - - // 決済ウィンドウのために成功・失敗ハンドラを用意します。 - request.onsuccess = function () { - console.log('ユーザの決済フローが正常に完了しました'); - // 決済フローは完了しましたが、決済が成立したことを確認するため、 - // サーバへポーリングを行って検証された決済結果を待ちます。 - waitForPaymentResult(transactionID); - }; - request.onerror = function () { - console.log('申し訳ありませんが、決済フローにエラーが発生しました: ', this.error.name); - }; - }) - - // 情報を送信して決済リクエストを開始し、 - // 署名済み JSON Web トークンを受け取ります。 - // この例では、productID はユーザが購入したい商品の ID です。 - xhr.send(productID); -} - -function waitForPaymentResult(transactionID) { - var xhr = new XMLHttpRequest(); - xhr.responseType = 'json'; - - // transactionID のためにポストバック・チャージバックを受信したことを確認する準備をします。 - xhr.open('GET', '/payment_result/' + transactionID); - - xhr.addEventListener('load', function () { - // 以下のような結果を取得します。 - // {"result": "postback received"} or {"result": "still waiting"} - if (xhr.response.result == 'postback received') { - // ポストバック通知を受信し、そこに含まれる JWT 署名を検証しました。 - console.log('成功! 商品は購入されました'); - } else { - // ポストバック・チャージバックがまだサーバへ送信されていません。3 秒後に再試行します。 - window.setTimeout(function() { waitForPaymentResult(transactionID); }, 3000); - } - }); - - // リクエストを送信し transactionID のステータスを確認します。 - xhr.send(); -}</pre> -<h2 id="Specification" name="Specification">仕様</h2> -<p>どの仕様書にも含まれていません。ただしこの話題は W3C の <a href="http://www.w3.org/community/webpayments/">Web Payment Community Group</a> において盛んに議論されています。</p> -<h2 id="See_also" name="See_also">関連記事</h2> -<ul> - <li><a href="/ja/docs/Web/Apps/Publishing/In-app_payments">アプリ内課金</a></li> - <li>Mozilla <a href="https://wiki.mozilla.org/WebAPI/WebPayment">Web Payment 仕様全文</a> (Mozilla Wiki)</li> - <li>{{domxref("DOMRequest")}}</li> -</ul> diff --git a/files/ja/web/api/navigator/mozsettings/index.html b/files/ja/web/api/navigator/mozsettings/index.html deleted file mode 100644 index fb06aa962c..0000000000 --- a/files/ja/web/api/navigator/mozsettings/index.html +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: window.navigator.mozSettings -slug: Web/API/Navigator/mozSettings -tags: - - B2G - - Firefox OS - - Non Standard - - WebAPI -translation_of: Archive/B2G_OS/API/Navigator/mozSettings ---- -<div>{{non-standard_header}}{{B2GOnlyHeader2("certified")}}</div> - - -<h2 id="Summary" name="Summary">概要</h2> -<p>デバイス設定へのアクセス及びデバイス設定の変更のための {{domxref("SettingsManager")}} オブジェクトを返します。</p> - - - -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox"><var>settings</var> = window.navigator.mozSettings; -</pre> - - -<h2 id="Specification" name="Specification">仕様</h2> -<p>この API はまだ標準仕様に含まれるものではありませんが、現在、 W3C の <a href="http://www.w3.org/2012/sysapps/" rel="external">System Applications Working Group</a> で議論されています。</p> - - -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li>{{domxref("SettingsManager")}}</li> - <li>{{domxref("SettingsLock")}}</li> -</ul> diff --git a/files/ja/web/api/navigator/mozsms/index.html b/files/ja/web/api/navigator/mozsms/index.html deleted file mode 100644 index defb9326b5..0000000000 --- a/files/ja/web/api/navigator/mozsms/index.html +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: window.navigator.mozSms -slug: Web/API/Navigator/mozSms -tags: - - DOM - - Gecko DOM Reference - - Mobile - - WebSMS -translation_of: Archive/B2G_OS/API/Navigator/mozSms ---- -<div> - {{ApiRef}}{{non-standard_header}}</div> -<h2 id="Summary" name="Summary">概要</h2> -<p>SMS メッセージの送受信に用いることが出来る {{domxref("SmsManager")}} オブジェクトを返します。</p> -<h2 id="Syntax" name="Syntax">構文</h2> -<pre class="syntaxbox">var sms = window.navigator.mozSms; -</pre> -<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザ実装状況</h2> -<p>主にモバイルブラウザでのサポートが期待されます。</p> -<table class="compat-table"> - <tbody> - <tr> - <th>機能</th> - <th>Android</th> - <th>Firefox Mobile (Gecko)</th> - <th>IE Mobile</th> - <th>Opera Mobile</th> - <th>Safari Mobile</th> - </tr> - <tr> - <td>基本サポート</td> - <td>{{CompatNo}}</td> - <td>{{CompatGeckoMobile("12.0")}}</td> - <td>{{CompatNo}}</td> - <td>{{CompatNo}}</td> - <td>{{CompatNo}}</td> - </tr> - </tbody> -</table> -<h2 id="Preferences_.26_availability" name="Preferences_.26_availability">設定 / 可用性</h2> -<ul> - <li>WebSMS はデフォルトで無効となっており、 <code>dom.sms.enabled</code> を true とする事で有効にする事が出来ます。</li> - <li>WebSMS API の使用を許可するホスト名のカンマ区切りのホワイトリストは、 <code>dom.sms.whitelist</code> 設定を使用して指定しなければなりません。デフォルトでは空文字となっています。</li> - <li>WebSMS は、Firefox OS (B2G) に認定されたアプリでのみ利用できます。</li> -</ul> -<h2 id="Specification" name="Specification">仕様書</h2> -<p>標準仕様には含まれていません。ただし、<a class="link-https" href="https://wiki.mozilla.org/WebAPI/WebSMS" title="https://wiki.mozilla.org/WebAPI/WebSMS">WebSMS design document</a> に基づく提案が予定されています。</p> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/docs/API/WebSMS" title="API/WebSMS">WebSMS API</a></li> - <li>{{domxref("SmsManager")}}</li> - <li>{{domxref("window.navigator.mozTelephony")}} - 電話の呼び出しの制御</li> -</ul> diff --git a/files/ja/web/api/navigator/mozsocial/index.html b/files/ja/web/api/navigator/mozsocial/index.html deleted file mode 100644 index b5e28e701f..0000000000 --- a/files/ja/web/api/navigator/mozsocial/index.html +++ /dev/null @@ -1,49 +0,0 @@ ---- -title: navigator.mozSocial -slug: Web/API/Navigator/mozSocial -tags: - - DOM - - Gecko DOM Reference - - Social -translation_of: Archive/mozSocial ---- -<div> - {{ApiRef}}{{non-standard_header}}{{fx_minversion_header("17.0")}}</div> -<p><code>navigator.mozSocial</code> プロパティによって返される <code>MozSocial</code> オブジェクトは、ソーシャルメディアプロバイダーパネル内で利用することができます。ソーシャルメディアプロバイダーパネルが必要とする機能を提供します。</p> -<div class="note"> - <p><strong>注記:</strong> Mozilla は最終的に標準化のためにこの API の提出を予定していますが、まだ実行には至っていません。</p> -</div> -<h2 id="Attributes" name="Attributes">属性</h2> -<dl> - <dt> - {{domxref("MozSocial.isVisible")}}</dt> - <dd> - 真偽値を返す。コンテンツが表示されている場合は <code>true</code> を、表示されていない場合は <code>false</code> を返す。</dd> -</dl> -<h2 id="Methods" name="Methods">メソッド</h2> -<dl> - <dt> - {{domxref("MozSocial.closePanel()")}}</dt> - <dd> - 現在開いているフライアウトパネルを閉じます。</dd> - <dt> - {{domxref("MozSocial.getAttention()")}}</dt> - <dd> - ユーザの注意を引くために設計されたいくつかのアクションを実行します。実際の動作はプラットフォームによって異なる場合があり、ヴィジュアル効果、音声通知、画面の点滅、または他のいくつかの技術が用いられる場合があります。</dd> - <dt> - {{domxref("MozSocial.getWorker()")}}</dt> - <dd> - サービスワーカーへの参照を返します。コンテンツが一度この参照を持つと、サービスとの通信のために、<code>worker.port.postMessage()</code> メソッドを呼び出すことが可能となります。</dd> - <dt> - {{domxref("MozSocial.openChatWindow()")}}</dt> - <dd> - ブラウザウィンドウの下部に固定されたチャットウィンドウを開きます。その機能は概ね個人チャットとなると考えられますが、提供者によって異なる場合があります。</dd> - <dt> - {{domxref("MozSocial.openPanel()")}}</dt> - <dd> - 指定された垂直オフセットで、サイドバーに付属するフライアウトパネルを開きます。これは例えば、サイドバー通知に対応する実際の対話の表示に用いられます。</dd> -</dl> -<h2 id="See_also" name="See_also">関連情報</h2> -<ul> - <li><a href="/ja/docs/Social_API" title="Social_API">Social API</a></li> -</ul> diff --git a/files/ja/web/api/settings_api/index.html b/files/ja/web/api/settings_api/index.html deleted file mode 100644 index 1f41812c59..0000000000 --- a/files/ja/web/api/settings_api/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: Settings API -slug: Web/API/Settings_API -tags: - - API - - Firefox OS - - Non-standard - - Reference - - Settings API -translation_of: Archive/B2G_OS/API/Settings_API ---- -<p>{{DefaultAPISidebar("Settings API")}}{{ non-standard_header() }}</p> - -<p>{{ B2GOnlyHeader2('certified') }}</p> - -<p class="summary"><strong>Settings API</strong> はデバイス設定へのアクセス、監視、変更を行うための手段です。デバイス設定にはシステムを危険に晒す可能性のある、慎重に取り扱うべき情報が含まれるため、認定アプリのみこのAPIを利用することができます。</p> - -<h2 id="デバイス設定の利用">デバイス設定の利用</h2> - -<p>デバイス設定は {{domxref("SettingsManager")}} インターフェースのインスタンスである {{domxref("navigator.mozSettings")}} オブジェクトを経由して操作することができます。</p> - -<h3 id="デバイス設定へのアクセス">デバイス設定へのアクセス</h3> - -<p>デバイス設定にアクセスするには、まず {{domxref("SettingsManager.createLock()","createLock()")}} メソッドを呼び出して "lock" を作成する必要があります。これは複数のアプリがデバイス設定を同時に呼び出して設定の変更を行う可能性があるため、他のアプリに干渉しないようにする必要があるからです。"lock" 作成することで、特定の期間内にひとつのアプリのみがデバイス設定にアクセスできることを保証します。</p> - -<p>"lock" を作成したら、アプリは {{domxref("SettingsLock.get()","get()")}} 関数を利用して様々な設定情報を取得することができます。この関数はリクエストの成功または失敗を示す {{domxref("DOMRequest")}} オブジェクトを返します。リクエストが完了すると、(結果の成功または失敗にかかわらず)"lock" は例外なく自動的に解放されて他のアプリにデバイス設定へのアクセスを譲ります。必要に応じて "lock" の {{domxref("SettingsLock.closed","closed")}} プロパティを参照し "lock" が解放されたかどうか確認することもできます。</p> - -<p>以下のコードは "lock" を作成してシステムの wifi.enabled 設定を取得しています。取得結果は {{domxref("console.log()")}} によりコンソールに出力されます。</p> - -<pre class="brush: js">var lock = navigator.mozSettings.createLock(); -var setting = lock.get('wifi.enabled'); - -setting.onsuccess = function () { - console.log('wifi.enabled: ' + setting.result); -} - -setting.onerror = function () { - console.warn('An error occured: ' + setting.error); -} -</pre> - -<h3 id="デバイス設定の変更">デバイス設定の変更</h3> - -<p>設定値の変更手順は、{{domxref("SettingsLock.set()","set()")}} 関数を呼び出す以外は設定値の取得と全く同じです。この関数は設定変更の成功または失敗を示す {{domxref("DOMRequest")}} オブジェクトを返します。</p> - -<p>{{domxref("SettingsLock.set()","set()")}} は引数としてオブジェクトを渡す必要があります。オブジェクトは設定名称をキーとし、変更後の値を対とするキーペアの集合です。設定可能な値については <a href="/docs/Mozilla/Firefox_OS/Platform/Settings_list" title="/docs/Mozilla/Firefox_OS/Platform/Settings_list">Firefox OS settings list</a> を参照して下さい(ただし設定できる項目がデバイス毎に異なる場合があることに注意して下さい)。</p> - -<p>以下のコードは "lock" を作成してシステムの wifi.enabled 設定を変更し、その結果をコンソールに出力します。</p> - -<pre class="brush: js">var lock = navigator.mozSettings.createLock(); -var result = lock.set({ - 'wifi.enabled': true -}); - -result.onsuccess = function () { - console.log("the settings has been changed"); -} - -result.onerror = function () { - console.log("An error occure, the settings remain unchanged"); -}</pre> - -<h3 id="デバイス設定の変更を監視する">デバイス設定の変更を監視する</h3> - -<p>設定の取得や変更だけでなく、アプリはデバイス設定への変更を監視することもできます。システムは設定が変更される毎に {{event("settingchange")}} イベントを発火します。. これは {{domxref("MozSettingsEvent")}} イベントの一つで、通常のイベントに加えて以下の追加プロパティを保持します。</p> - -<ul> - <li>{{domxref("MozSettingsEvent.settingName","settingName")}} 変更された設定の名称</li> - <li>{{domxref("MozSettingsEvent.settingValue","settingValue")}} 変更後の値</li> -</ul> - -<p>{{event("settingchange")}} イベントを監視するには、設定の変更毎に呼び出される {{domxref("SettingsManager.onsettingchange")}} にコールバック関数を渡します。また、{{domxref("SettingsManager.addObserver()")}} 関数を利用すると、特定の設定に限定して変更を監視する事もできます。</p> - -<pre class="brush: js">function handleWifi(event) { - if (event.settingValue === true) { - console.log("Hey! I can download that crazy heavy 4GB file") - } else { - console.log("Oh! I should stop downloading that crazy 4GB file") - } -} - -navigator.mozSettings.addObserver('wifi.enabled', handleWifi); -</pre> - -<h2 id="仕様">仕様</h2> - -<p>草案。これは正式な仕様ではありませんが、W3Cにおいて <a class="external" href="http://www.w3.org/2012/sysapps/" rel="external" title="http://www.w3.org/2012/sysapps/">System Applications Working Group</a> の一部として協議される予定です。</p> - -<h2 id="参考">参考</h2> - -<ul> - <li>{{domxref("Navigator.mozSettings")}}</li> - <li>{{domxref("SettingsManager")}}</li> - <li>{{domxref("SettingsLock")}}</li> - <li>{{domxref("MozSettingsEvent")}}</li> -</ul> diff --git a/files/ja/web/api/simple_push_api/index.html b/files/ja/web/api/simple_push_api/index.html deleted file mode 100644 index b67dc801e2..0000000000 --- a/files/ja/web/api/simple_push_api/index.html +++ /dev/null @@ -1,189 +0,0 @@ ---- -title: Simple Push -slug: Web/API/Simple_Push_API -tags: - - API - - B2G - - Firefox OS - - Non-standard - - Simple Push API - - WebAPI -translation_of: Archive/B2G_OS/API/Simple_Push_API ---- -<p>{{ non-standard_header() }}</p> - -<p><strong>Simple Push API</strong>、別名プッシュ通知 API はウェイクアップして通知を受け取る能力をアプリにもたらします。Simple Push は同期メカニズムとしても、あるいはサードパーティのサーバーから最新データを取得する方法としても利用できます。</p> - -<p>「プッシュ」とはリモートサーバーから送られてくるイベントに過ぎません。これは以下のようにして動作します。アプリは Simple Push API を使ってエンドポイントと呼ばれる特殊なユニーク URL をリクエストします。このリクエストは、Mozilla がこの目的のために管理する既存のサーバー(これは「プッシュサーバー」と呼ばれます)へ送られます。プッシュサーバーから返されるエンドポイントをアプリが受け取ると、アプリは自身のサーバー(あなたのアプリサーバーです)へエンドポイントを送信します。アプリサーバーはこのエンドポイントを保存します。その後、アプリをウェイクアップしたいと思った時にバージョン番号付きでエンドポイントを呼び出し、プッシュサーバーはアプリにそのバージョン番号通知を連絡します。アプリは通知を受け取った時に、それを無視することも含め何らかのこと行うことができます。</p> - -<p>Simple Push APIは {{domxref("window.navigator")}} を拡張して {{domxref("PushManager")}} オブジェクトを保持する <span style="font-family: Consolas, Monaco, 'Andale Mono', monospace;"><code>push</code> </span>プロパティを持たせ、またプッシュの状態を監視するために受け取れる新しいイベントをいくつか追加します。</p> - -<h2 id="基本を説明する例">基本を説明する例</h2> - -<p>Simple Push の使い方はいくつかあります。この例では基本的な使い方を取り上げます。例は以下の一般的な手順からなります。各手順の完全な情報についてはその後のセクションをご覧ください。</p> - -<ol> - <li><a href="#1._.E3.82.A2.E3.83.97.E3.83.AA.E3.81.AE.E3.83.9E.E3.83.8B.E3.83.95.E3.82.A7.E3.82.B9.E3.83.88.E3.83.95.E3.82.A1.E3.82.A4.E3.83.AB.E3.81.AB_push_.E3.81.AE.E8.A8.AD.E5.AE.9A.E3.82.92.E8.BF.BD.E5.8A.A0.E3.81.99.E3.82.8B">アプリのマニフェストファイルに <code>push</code> の設定を追加する</a></li> - <li><a href="#2._PushManager.register()_.E3.82.92.E5.91.BC.E3.82.93.E3.81.A7.E3.82.A8.E3.83.B3.E3.83.89.E3.83.9D.E3.82.A4.E3.83.B3.E3.83.88.E3.82.92.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88.E3.81.99.E3.82.8B"><code>PushManager.register</code> を呼んでエンドポイントをリクエストする</a></li> - <li><a href="#3._.E3.82.A8.E3.83.B3.E3.83.89.E3.83.9D.E3.82.A4.E3.83.B3.E3.83.88.E3.82.92.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.81.AB.E9.80.81.E4.BF.A1.E3.81.99.E3.82.8B">エンドポイントをサーバーに送信する</a></li> - <li><a href="#4._.E3.82.A2.E3.83.97.E3.83.AA.E3.81.AB_push_.E9.80.9A.E7.9F.A5.E7.94.A8.E3.81.AE.E3.83.A1.E3.83.83.E3.82.BB.E3.83.BC.E3.82.B8.E3.83.8F.E3.83.B3.E3.83.89.E3.83.A9.E3.83.BC.E3.82.92.E8.BF.BD.E5.8A.A0.E3.81.99.E3.82.8B">アプリにプッシュ通知用のメッセージハンドラーを追加する</a></li> - <li><a href="#5._.E3.82.A8.E3.83.B3.E3.83.89.E3.83.9D.E3.82.A4.E3.83.B3.E3.83.88.E3.82.92.E4.BD.BF.E3.81.A3.E3.81.A6.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.81.8B.E3.82.89.E9.80.9A.E7.9F.A5.E3.82.92.E9.80.81.E4.BF.A1.E3.81.99.E3.82.8B">エンドポイントを使ってサーバーから通知を送信する</a></li> -</ol> - -<h2 id="1._アプリのマニフェストファイルに_push_の設定を追加する">1. アプリのマニフェストファイルに push の設定を追加する</h2> - -<p>Sinple Push を使えるようにするため、マニフェストファイルで二か所変更が必要です。</p> - -<ol> - <li><a href="/docs/Web/Apps/Manifest#messages" title="https://developer.mozilla.org/en-US/docs/Web/Apps/Manifest?redirectlocale=en-US&redirectslug=Apps%2FManifest#messages"><code>messages</code> フィールド</a> - <code>push</code> と <code>push-register</code> メッセージを追加。<br> - これはアプリの(<code>push</code> と <code>push-register</code> の)各イベントを受け取るページを示します。この例ではどちらも同じ「/index.html」ページへ進みますが、異なるページを使っても構いません。より詳細な各イベントの情報は後述します。</li> - <li><a href="/docs/Web/Apps/Manifest#permissions" title="https://developer.mozilla.org/en-US/docs/Web/Apps/Manifest?redirectlocale=en-US&redirectslug=Apps%2FManifest#permissions"><code>permissions</code> フィールド</a> - アプリがプッシュ通知受け取りを要求することを追加。<br> - なぜ push 権限が必要なのか、エンドユーザーが理解できるように明確な説明を提供するのはいい考えです。</li> -</ol> - -<pre class="brush: js"><span class="s2">"messages"</span><span class="o">:</span> <span class="cp">[</span> - <span class="p">{</span> <span class="s2">"push"</span><span class="p">:</span> <span class="s2">"/index.html"</span><span class="p">},</span> - <span class="p">{</span> <span class="s2">"push-register"</span><span class="p">:</span> <span class="s2">"/index.html"</span><span class="p">}</span> -<span class="cp">]</span><span class="o">,</span> -<span class="s2">"permissions"</span><span class="o">:</span> <span class="p">{</span> - <span class="s2">"push"</span><span class="o">:</span> <span class="err">{ - </span>"description": "サッカーの試合中にゴールが決まるたび更新を受け取るのに必須",<span class="err"> -</span><span class="p"> }</span> -<span class="err">}</span></pre> - -<h2 id="2._PushManager.register()_を呼んでエンドポイントをリクエストする">2. PushManager.register() を呼んでエンドポイントをリクエストする</h2> - -<p>アプリは {{domxref("PushManager.register")}} を呼び出してエンドポイントをリクエストする必要があります。いつ呼び出すかはあなたが決めなければなりません。ユーザーがログインした時やサッカーの試合を観戦することに決めた時など何らかの時点でエンドポイントを呼び出せます。以下のコードがそのための一例です。</p> - -<pre class="brush: js language-js"><code class="language-js"><span class="token keyword">if</span> <span class="token punctuation">(</span>navigator<span class="token punctuation">.</span>push<span class="token punctuation">)</span> <span class="token punctuation">{</span> - <span class="token comment"> // エンドポイントをリクエストします。PushManager.register() を使います。 -</span> <span class="token keyword">var</span> req <span class="token operator">=</span> navigator<span class="token punctuation">.</span>push<span class="token punctuation">.</span><span class="token function">register<span class="token punctuation">(</span></span><span class="token punctuation">)</span><span class="token punctuation">;</span> - - req<span class="token punctuation">.</span>onsuccess <span class="token operator">=</span> <span class="token keyword">function</span><span class="token punctuation">(</span>e<span class="token punctuation">)</span> <span class="token punctuation">{</span> - <span class="token keyword">var</span> endpoint <span class="token operator">=</span> req<span class="token punctuation">.</span>result<span class="token punctuation">;</span> - console<span class="token punctuation">.</span><span class="token function">log<span class="token punctuation">(</span></span><span class="token string">"新しいエンドポイント:"</span> <span class="token operator">+</span> endpoint <span class="token punctuation">)</span><span class="token punctuation">;</span> - <span class="token comment"> // ここであなたのサーバーにエンドポイントを送信するため、何らかの呼び出しを使用します。 -</span> <span class="token comment"> // 例えばこうです。 -</span> <span class="token comment">/* - var post = XMLHTTPRequest(); - post.open("POST", "https://your.server.here/registerEndpoint"); - post.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); - post.send("endpoint=" + encodeURIComponents( endpoint ) ); - */</span> -<span class="token comment"> // 明らかに .onload と .onerror ハンドラー、及びユーザー ID の情報や - // その他エンドポイントとユーザーを関連付ける必要のある何らかの情報を追加したくなるでしょう。 -</span> <span class="token punctuation">}</span> - - req<span class="token punctuation">.</span>onerror <span class="token operator">=</span> <span class="token keyword">function</span><span class="token punctuation">(</span>e<span class="token punctuation">)</span> <span class="token punctuation">{</span> - console<span class="token punctuation">.</span><span class="token function">error<span class="token punctuation">(</span></span><span class="token string">"新しいエンドポイント取得に関するエラー:"</span> <span class="token operator">+</span> JSON<span class="token punctuation">.</span><span class="token function">stringify<span class="token punctuation">(</span></span>e<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span> - <span class="token punctuation">}</span> -<span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span> - <span class="token comment"> // DOM 上で push が使用できないためそれ以外のことをします。 -</span><span class="token punctuation">}</span></code></pre> - -<h2 id="3._エンドポイントをサーバーに送信する">3. エンドポイントをサーバーに送信する</h2> - -<p>エンドポイントを取得したらそれをアプリケーションのサーバーに送る必要があります。方法は一つではありません。例えばメール送信や POST、PUT、果ては GET を使った送信など好きな方法で送ることができます。エンドポイントは、アプリケーションから送られるクッキーやユーザー名、その他エンドポイントとユーザーの組を特定する時に使う何らかのユーザーデータとともに保存することを推奨します。</p> - -<p>とは言え、サーバーに送信するのであれば以下の優れたプラクティスに従うことを推奨します。</p> - -<ol> - <li>XMLHttpRequest で送信する。</li> - <li>常に HTTPS を使う。さもなくば何者かがエンドポイントを傍受してアプリに通知を送り始めるかも知れない。</li> - <li>クッキーなど、ユーザー(やインストールしたアプリケーション)をもとにエンドポイントを照合できる物を使用する。</li> - <li>エンドポイントを安全に保つこと! エンドポイントがあれば、顧客のバッテリーの浪費やサーバーとの不要な接続など迷惑なことを引き起こせます。いつでもクライアントに新しいエンドポイントを取得して古い物を捨てさせることができますが、あなたのサーバーがその変更を検知できるようにしなければならないことを覚えておいてください。</li> -</ol> - -<h2 id="4._アプリに_push_通知用のメッセージハンドラーを追加する">4. アプリに push 通知用のメッセージハンドラーを追加する</h2> - -<p>これまでの手順でエンドポイントを設定したらようやく、アプリがメッセージハンドラーを使って <code>push</code> と <code>push-register の</code>メッセージの待ち受けを開始できます。</p> - -<h3 id="push_メッセージハンドラーを追加する"><code>push</code> メッセージハンドラーを追加する</h3> - -<p><code>push メッセージハンドラー</code>は <code>index.html</code> ファイル内や <code>main.js</code> のスクリプト内で登録することもできますが、そのスクリプトだけを持った特別な <code>push-message.html</code> ファイル内で登録することもできます。これは <code>push</code> メッセージを受け取った時にアプリが閉じている場合に便利でしょう。サイズの小さい部分的な HTML/JavaScript コードだけををロードして、アプリ全体を開く必要があるのかバックグラウンドで何かを行う必要があるのか決められるからです。<code>push メッセージハンドラーをどこに置くことに決めたにせよ、マニフェストファイルが正しい場所を示すようにしてください(前述の最初の手順参照)。</code>そうしないとアプリが更新を受け取れません。<code>push メッセージハンドラーの例は以下の通りです。</code></p> - -<pre class="brush: js"><span class="k">if</span> <span class="p">(</span><span class="nb">window</span><span class="p">.</span><span class="nx">navigator</span><span class="p">.</span><span class="nx">mozSetMessageHandler</span><span class="p">)</span> <span class="p">{</span> - <span class="nb">window</span><span class="p">.</span><span class="nx">navigator</span><span class="p">.</span><span class="nx">mozSetMessageHandler</span><span class="p">(</span><span class="s1">'push'</span><span class="p">,</span> <span class="kd">function</span><span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> - console.log<span class="p">(</span><span class="s1">'エンドポイントは '</span> <span class="o">+</span> <span class="nx">e</span><span class="p">.</span><span class="nx">pushEndpoint</span><span class="p">);</span> - console.log<span class="p">(</span><span class="s1">'新しいバージョンは '</span> <span class="o">+</span> <span class="nx">e</span><span class="p">.</span><span class="nx">version</span><span class="p">);</span> - <span class="c1">//複数の pushEndpoint がある場合、ここで処理できることを</span> - <span class="c1">//憶えておいてください</span> - <span class="k">if</span> <span class="p">(</span><span class="nx">e</span><span class="p">.</span><span class="nx">pushEndpoint</span> <span class="o">===</span> <span class="nx">emailEndpoint</span><span class="p">)</span> <span class="p">{</span> - <span class="nx">emailHandler</span><span class="p">(</span><span class="nx">e</span><span class="p">.</span><span class="nx">version</span><span class="p">);</span> - <span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">e</span><span class="p">.</span><span class="nx">pushEndpoint</span> <span class="o">===</span> <span class="nx">imEndpoint</span><span class="p">)</span> <span class="p">{</span> - <span class="nx">imHandler</span><span class="p">(</span><span class="nx">e</span><span class="p">.</span><span class="nx">version</span><span class="p">);</span> - <span class="p">}</span> - <span class="p">});</span> -<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> - <span class="c1">// メッセージハンドラーなし</span> -<span class="p">}</span></pre> - -<h3 id="push-register_メッセージハンドラーを追加する"><code>push-register</code> メッセージハンドラーを追加する</h3> - -<div class="note"> -<p><strong>注:</strong>忘れずにこのハンドラーを追加して動作することを確認してください。アプリがこのメッセージを受け取った時にエンドポイントを再登録しないと、これ以上プッシュ通知を受け取れ<strong>なくなります</strong></p> -</div> - -<p>デバイスの (UAID または User Agent Identifierと呼ばれる)内部的な iDが変わった時は、全アプリに <code>push-register</code> メッセージが送信されます。これは、プッシュサーバーが変わった、サーバーがダウンして復旧が必要、その他の事情が原因となり得ます。こうしたうちの一つが発生すると、過去のエンドポイントは不適合となるため、全エンドポイントを再登録し<strong>なければならない</strong>ことを意味します。そのため、<code>アプリは push-register</code> メッセージハンドラーを実装する必要があります。以下のサンプルコードを参照してください。</p> - -<pre class="brush: js"><span class="k">if</span> <span class="p">(</span><span class="nb">window</span><span class="p">.</span><span class="nx">navigator</span><span class="p">.</span><span class="nx">mozSetMessageHandler</span><span class="p">)</span> <span class="p">{</span> - <span class="nb">window</span><span class="p">.</span><span class="nx">navigator</span><span class="p">.</span><span class="nx">mozSetMessageHandler</span><span class="p">(</span><span class="s1">'push-register'</span><span class="p">,</span> <span class="kd">function</span><span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> - console.log<span class="p">(</span><span class="s1">'push-register を受信、再度エンドポイントを登録する必要あり!'</span><span class="p">);</span> - -<span class="c1"> <span class="kd">var</span> <span class="nx">req</span> <span class="o">=</span> <span class="nx">navigator</span><span class="p">.</span><span class="nx">push</span><span class="p">.</span><span class="nx">register</span><span class="p">();</span> - <span class="nx"> req</span><span class="p">.</span><span class="brush: js">onsuccess</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> - <span class="kd"> var</span> <span class="nx">endpoint</span> <span class="o">=</span> <span class="nx">req</span><span class="p">.</span><span class="nx">result</span><span class="p">;</span> - console.log<span class="p">(</span><span class="s2">"新しいエンドポイント:"</span> <span class="o">+</span> <span class="nx">endpoint</span> <span class="p">); - localStorage.endpoint = endpoint;</span> - <span class="p">}</span> - - <span class="nx"> req</span><span class="p">.</span><span class="nx">onerror</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span> - console.error<span class="p">(</span><span class="s2">"新しいエンドポイント取得に関するエラー:"</span> <span class="o">+</span> <span class="nx">JSON</span><span class="p">.</span><span class="nx">stringify</span><span class="p">(</span><span class="nx">e</span><span class="p">));</span> - <span class="p"> }</span></span> - <span class="p">});</span> -<span class="p">}</span> <span class="k">else</span> <span class="p">{</span> - <span class="c1">// メッセージハンドラーなし</span> -<span class="p">}</span></pre> - -<h2 id="5._エンドポイントを使ってサーバーから通知を送信する">5. エンドポイントを使ってサーバーから通知を送信する</h2> - -<p>一旦あなたのサーバーにエンドポイントを保持すれば、ボディを <code><span style="font-family: Consolas, Monaco, 'Andale Mono', monospace;">version=<version></span></code> にした <code>HTTP PUT</code> リクエストをエンドポイントに送るだけで通知を送れます。例えばエンドポイントが</p> - -<pre class="language-html"><code class="language-html">https://updates.push.services.mozilla.com/update/abcdef01234567890abcdefabcdef01234567890abcdef</code></pre> - -<p>という URL で、バージョンが 5</p> - -<pre class="language-html"><code class="language-html">version=5</code></pre> - -<p>だとしましょう。curl を使う場合、通知はこのようにして確認します。</p> - -<pre class="language-html"><code class="language-html">curl -X PUT -d "version=5" https://updates.push.services.mozilla.com/update/abcdef01234567890abcdefabcdef01234567890abcdef</code></pre> - -<p>プッシュサーバーが正しく動いていれば、ステータスが <code>200</code>(<code>OK</code>)でボディが <code>{}</code> となっているレスポンスを受け取ります。また、メッセージは受け入れられたけれど代わりのシステムを使って処理できるということを示すステータス 202 を受け取るかも知れません。そうでなければエラーを説明する JSON つきの妥当な HTTP エラーレスポンスが返ります。</p> - -<div class="note"> -<p><strong>お忘れなく:</strong>Simple Push がメッセージを受け取ったというだけでそのメッセージがアプリにうまく届いたということが保証されるわけではありません。デバイスがオフラインであることから様々なネットワーク障害まで、多くの要素が通知の配信の妨げとなり得ます。わたしたちも最善を尽くしていますが、ときおり宇宙は思い通りにならないものです。</p> -</div> - -<p><code>version の値</code>は増加する整数になるはずだということを覚えておいてください。もし新しいバージョンがサーバーやデバイスに保存しているものよりも低い場合は、アプリケーションは新しい通知を受け取り<em>ません</em>。バージョンは、アプリが本当に確認しておくべきなのに「見逃された」イベントがないかを表すのに便利かも知れません。また、実際のバージョンの値がそれほど重要でない場合には現在の UTC(1970 年 1 月 1 日の真夜中からの経過秒数。GMT)を使うだけでもいいでしょう。</p> - -<h3 id="エンドポイントを登録解除する">エンドポイントを登録解除する</h3> - -<p>エンドポイントを使い終えてこれ以上通知を受けとりたくなくなった場合は、{{domxref("PushManager.unregister")}} を使って古いエンドポイントを登録解除するようお願いします。これによりデバイスがプッシュサーバーに送信する多量のデータを一掃でき、また使用しない通知をアプリに送信しないことでバッテリー使用量を抑えることにもなります。</p> - -<h2 id="仕様">仕様</h2> - -<p>{{page("/ja/docs/Web/API/PushManager","Specifications")}}</p> - -<h2 id="ブラウザー互換性">ブラウザー互換性</h2> - -<p>{{page("/ja/docs/Web/API/PushManager","Browser_compatibility")}}</p> - -<h2 id="関連項目">関連項目</h2> - -<ul> - <li>{{domxref("PushManager")}}</li> - <li><a href="https://developer.mozilla.org/ja/docs/Web/API/Navigator.push">Window.navigator.push</a></li> - <li><a href="https://github.com/frsela/pushJSlibrary" title="https://github.com/frsela/pushJSlibrary">pushJSLibrary。この API を実装していないブラウザー向けのプッシュ shim</a></li> - <li><a href="https://wiki.mozilla.org/WebAPI/SimplePush">SimplePush の元々の設計と議論のページ</a>。</li> -</ul> diff --git a/files/ja/web/api/web_activities/index.html b/files/ja/web/api/web_activities/index.html deleted file mode 100644 index 1339d0dd63..0000000000 --- a/files/ja/web/api/web_activities/index.html +++ /dev/null @@ -1,586 +0,0 @@ ---- -title: Web アクティビティ -slug: Web/API/Web_Activities -tags: - - API - - B2G - - Firefox OS - - Guide - - Web Activities - - Web アクティビティ - - WebAPI - - 非標準 -translation_of: Archive/B2G_OS/API/Web_Activities ---- -<p>{{ non-standard_header() }}</p> -<div class="warning"> - <p style="text-align: center;">この API は Firefox for Android 上で動いているインストール済みコードで使用可能であり、Firefox for Android 32+ の Firefox for Android Web アプリでの使用を想定しています。</p> -</div> -<div class="summary"> - <p><span class="seoSummary">Web アクテビティはアプリケーションが他の(普通はユーザーが選択した)アプリケーションへ動作を委譲する方法を定義します。</span></p> -</div> -<p>Web アクテビティは現在 Firefox OS 上でのみ有効です。仕様の全体は <a href="https://wiki.mozilla.org/WebAPI/WebActivities" title="https://wiki.mozilla.org/WebAPI/WebActivities">WikiMo で見ることができます</a>。</p> -<h2 id="アクティビティ">アクティビティ</h2> -<p>アクティビティとは、画像の選択やメールの送信などユーザーが行いたいと思うことです。アプリ作成者はあるアクティビティを処理するものとして、あるいはあるアクティビティを委譲するものとしてアプリを定義することができます。</p> -<h2 id="アプリをアクティビティハンドラーとして登録する">アプリをアクティビティハンドラーとして登録する</h2> -<p>アプリ作成者は、一つ以上のアクティビティを処理するアプリをビルドすることができます。これは、ほかのアプリから呼び出して、アクティビティで定義したある特定の動作を行わせられるということです。例えばフォトマネージャーをビルドしたいとしましょう。ほかのアプリケーションからそれを使って写真を選択することができます。このアプリは、アクティビティハンドラーとしてほかのアプリのワークフロー上の一部となるのです。</p> -<h3 id="アクティビティの登録">アクティビティの登録</h3> -<p>現在のところ、アプリをアクティビティハンドラーとして登録する方法は一つだけです。それはアプリマニフェスト内で宣言することです。</p> -<div class="note"> - <p>注:どんなアプリでも自分自身をアクティビティハンドラーとして登録したり独自のアクティビティを作成できます。どちらの場合もアプリマニフェストで同じように行います。ただ、新しいアクティビティを作る時には URL をアクティビティの接頭辞にしてアクティビティ名の衝突を避けるのがベストプラクティスとされています(例:example.org/myActivity または org.example.myActivity)。</p> -</div> -<h4 id="アプリマニフェスト(または宣言による登録)">アプリマニフェスト(または宣言による登録)</h4> -<p>アプリがあるアクティビティを処理するよう期待されるということを表明するには、以下の例のように<a href="/ja/Apps/Manifest" title="/en-US/docs/Apps/Manifest">アプリマニフェスト</a>を使う必要があります。</p> -<pre class="brush: js">{ - // その他のアプリマニフェスト関連事項 - - // アクティビティの登録 - "activities": { - - // 処理するアクティビティ名(ここでは"pick") - "pick": { - "href": "./pick.html", - "disposition": "inline", - "filters": { - "type": ["image/*","image/jpeg","image/png"] - }, - "returnValue": true - } - } -} -</pre> -<h4 id="動的な登録">動的な登録</h4> -<p>アプリが {{domxref("window.navigator","navigator")}} オブジェクトを使って動的に登録できるようにする予定があります。ですが、この API はまだ使用できません。この API に関連した動きを追いかけるには {{bug("775181")}} を参照してください。</p> -<h4 id="アクティビティハンドラーの記述">アクティビティハンドラーの記述</h4> -<dl> - <dt> - <code>href</code></dt> - <dd> - これは、ほかのアプリや Web ページがこのアプリでサポートしているアクティビティを起動し、アクティビティを実行するのにこのアプリが選ばれた場合に開かれるページを指定します。ページは disposition プロパティに指定した方法で開かれます。 - <div class="note"> - <strong>注:</strong> このページの URL は<a href="/en-US/docs/JavaScript/Same_origin_policy_for_JavaScript" title="/en-US/docs/JavaScript/Same_origin_policy_for_JavaScript">同一生成元ポリシー</a>の制約を受けます。</div> - </dd> -</dl> -<dl> - <dt> - <code>disposition</code> {{optional_inline()}}</dt> -</dl> -<dl> - <dd> - アクティビティが起動された時に、href で指定したページがどのように表示されるかを指定します。指定する場合、値は以下のどちらかでなければなりません(省略時のデフォルトは window)。 - <ul> - <li><strong><code>window</code></strong> - アクティビティを処理するページは新規「ウィンドウ」で開きます(モバイルデバイスでは、この表示はアクティビティをリクエストした元のアプリを置き換えるでしょう)。このページはサポートするアクティビティごとに {{domxref("Navigator.mozSetMessageHandler()","navigator.mozSetMessageHandler()")}} を呼び、それから受け取ったメッセージに合わせてアクティビティを実行する必要があります。</li> - <li><strong><code>inline</code></strong> - アクティビティを処理するページはオーバーレイで開きます(モバイルデバイスでは、このページはアクティビティをリクエストした元のアプリ上のポップアップで描画されるでしょう)。その後の振る舞いは disposition が window の場合と完全に同じです。</li> - </ul> - </dd> -</dl> -<dl> - <dt> - <code>returnValue</code> {{optional_inline()}}</dt> - <dd> - アクティビティが値を返すか否かを宣言します。アプリケーションが値を返す物ではない場合、 UA はアプリケーションが選択されてすぐに - <i> - success</i> - イベントを送信することができます。値を返す時には、アクティビティハンドラーは、アクティビティが成功した場合には {{domxref("MozActivityRequestHandler.postResult()")}} を、失敗した場合には {{domxref("MozActivityRequestHandler.postError()")}} を呼ぶ必要があります(ここで {{domxref("MozActivityRequestHandler")}} はアクティビティハンドラーが {{domxref("Navigator.mozSetMessageHandler()","mozSetMessageHandler")}} 内で指定する関数に渡す第一引数の型)。 <em>success</em> イベントと <em>error</em> イベントはそれぞれ {{domxref("MozActivityRequestHandler.postResult()","postResult")}}、{{domxref("MozActivityRequestHandler.postError()","postError")}} がアクティビティハンドラーに呼ばれた後に発火します。</dd> -</dl> -<dl> - <dt> - <code>filters</code> {{optional_inline()}}</dt> - <dd> - 各プロパティでフィルターを指定する形式の辞書。このフィルターは、アプリがあるアクティビティを処理するのに適切かどうか決定する際に適用されます。フィルター名は自由形式のテキストで、{{domxref("MozActivityOptions")}} の {{domxref("MozActivityOptions.data","data")}} プロパティ内の名前を反映させるべきです。フィルターの値は基本的な値(文字列または数値)、基本的な値の配列、あるいはフィルター定義オブジェクトのいずれかです。フィルターの条件が全て満たされた場合にのみ、アクティビティが処理可能だと見做されます。</dd> -</dl> -<p>フィルターの適用方法は以下のように各フィルターの値によります。</p> -<ul> - <li>フィルターの値が基本的な値の場合、対応する {{domxref("MozActivityOptions.data")}} プロパティは任意ですが、もし存在すればフィルターが指定する物と同一でなければなりません。</li> - <li>フィルターの値が基本的な値の配列である場合、対応する {{domxref("MozActivityOptions.data")}} プロパティは任意ですが、もし存在すれば、その値はフィルターが指定する配列内の値のいずれかと等しくなければなりません。</li> - <li>フィルターの値がフィルター定義オブジェクトの場合、そのフィルターは対応する {{domxref("MozActivityOptions.data")}} プロパティがオブジェクトの定めるルールに従う場合に満たされたとされますフィルター定義オブジェクトには以下のプロパティが定義できます。 - <ul> - <li><code>required</code>: 対応する {{domxref("MozActivityOptions.data")}} プロパティが存在する必要がある(true)か否(false)かを指定するブール値。</li> - <li><code>value</code>: 基本的な値か基本的な値の配列。対応する {{domxref("MozActivityOptions.data")}} プロパティの値はフィルターで定義する値のいずれかに等しくなければならない。</li> - <li><code>min</code>: 数値が期待される場合、対応する {{domxref("MozActivityOptions.data")}} プロパティの値はこの値以上でなければならない。</li> - <li><code>max</code>: 数値が期待される場合、対応する {{domxref("MozActivityOptions.data")}} プロパティの値はこの値以下でなければならない。</li> - <li><code>pattern</code>: <a href="/ja/docs/Web/JavaScript/Guide/Regular_Expressions" title="/en-US/docs/JavaScript/Guide/Regular_Expressions">JavaScript の正規表現</a>の文法に従った文字列のパターン。対応する {{domxref("MozActivityOptions.data")}} プロパティの値はこのパターンにマッチしなければならない。<strong>Firefox OS v1.2 以降でサポート。</strong></li> - <li><code>patternFlags</code>: パターンが使われる場合、追加で i や g といった正規表現のフラグを指定するのにこのプロパティを使うことができる。<strong>Firefox OS v1.2 以降でサポート。</strong></li> - <li><code>regexp</code>: <a href="/ja/docs/Web/JavaScript/Guide/Regular_Expressions" title="/en-US/docs/JavaScript/Guide/Regular_Expressions">JavaScript の正規表現</a>の文法に従った正規表現リテラルを含む文字列。対応する {{domxref("MozActivityOptions.data")}} プロパティの値はこのパターンにマッチしなければならない。pattern フラグと異なり、値に部分マッチさせることができるため、文字列の始点と終点にマッチさせるにはそれぞれメタ文字の ^ と $ を使う必要がある。<strong>Firefox OS v1.0 と v1.1 のみでサポート。</strong> よって pattern と regexp の両方を使うことが望ましい。</li> - </ul> - </li> -</ul> -<h2 id="アクティビティの処理">アクティビティの処理</h2> -<p>アプリケーションをアクティビティハンドラーとして宣言した場合には、他のアプリからのアクティビティリクエストを受け取った時に何らかのアクションを実行して実効性を持たせる必要があります。</p> -<p>アクティビティを処理するには必要なアクションを全て実行する関数を登録しなければなりません。そのためには {{domxref("Navigator.mozSetMessageHandler()","navigator.mozSetMessageHandler()")}} でメッセージハンドラーを設定し(アクティビティ名ではなく)<code>'activity'</code> を明示的に割り当てる必要があります。アクティビティハンドラー関数の引数として {{domxref("MozActivityRequestHandler")}} オブジェクトが渡されます。</p> -<pre class="brush: js">navigator.mozSetMessageHandler('activity', function(activityRequest) { - // アクティビティ処理のための何かをする -});</pre> -<p>アクティビティハンドラー関数がアクションを実行する際に、必要であればアクティビティについての情報を読み出して返答を送り返すためにアクティビティリクエストをつかうことになります。</p> -<p>アクティビティを呼び出すアプリは幾らかのデータ(後述)を提供する必要があります。このデータはリクエストの {{domxref("MozActivityRequestHandler.source","source")}} プロパティ経由で伝わり、{{domxref("MozActivityOptions")}} オブジェクトになっています。 このオブジェクトはアクティビティ呼び出しの {{domxref("MozActivityOptions.name","name")}} と関連する {{domxref("MozActivityOptions.data","data")}} を提供します。</p> -<pre class="brush: js">navigator.mozSetMessageHandler('activity', function(activityRequest) { - var option = activityRequest.source; - - if (option.name === "pick") { - // アクティビティ処理のための何かをする - } -});</pre> -<p>アクティビティを処理するためのアクションを全て実行すれば、リクエストの {{domxref("MozActivityRequestHandler.postResult()","postResult()")}} メソッドを呼んでアクティビティを委譲してきたアプリに結果を送り返すことができます。</p> -<p>問題が起きた場合にはリクエストの {{domxref("MozActivityRequestHandler.postError()","postError()")}} メソッドを呼んでアクティビティに関するエラーメッセージを送り返すことができます。</p> -<pre class="brush: js">navigator.mozSetMessageHandler('activity', function(activityRequest) { - var option = activityRequest.source; - - if (option.name === "pick") { - // アクティビティ処理のための何かをする - ... - - // 結果を送り返す - if (picture) { - activityRequest.postResult(picture); - } else { - activityRequest.postError("Unable to provide a picture"); - } - } -});</pre> -<div class="note"> - <p><strong>注:</strong>{{domxref("MozActivityRequestHandler.postError()","postError()")}} も {{domxref("MozActivityRequestHandler.postResult()","postResult()")}} も呼ばれなかった場合 -- 例えばユーザーが(デスクトップ版であればタブを閉じたり、モバイルデバイスであればホームスクリーンに戻ったりして)アプリケーションから離脱した場合 -- にはどこかの時点で UA がエラーを送ることが期待されます。</p> -</div> -<h2 id="アクテビティの開始">アクテビティの開始</h2> -<p><em>Web アクティビティ</em>の他方では、我らがアプリにアクティビティを委譲したいアプリがあります。この委譲を実行するには {{domxref("MozActivity")}} オブジェクトをインスタンス化することによってアクティビティを呼び出す必要があります。このオブジェクトには、アクティビティハンドラーからのレスポンスを待つことのできる {{domxref("DOMRequest")}} オブジェクトである、ということ以上のことはありません。アクティビティはオブジェクトが作成されるなり開始し、UI は可能な限り速やかにユーザーに表示されます。</p> -<pre class="brush: js" id=".C2.A0">var activity = new MozActivity({ - // "pick" アクティビティを要求 - name: "pick", - - // アクティビティのフィルターに必要なデータを提供 - data: { - type: "image/jpeg" - } -}); - -activity.onsuccess = function() { - var picture = this.result; - console.log("A picture has been retrieved"); -}; - -activity.onerror = function() { - console.log(this.error); -}; -</pre> -<h3 id="追加情報:コンタクト情報の取得">追加情報:コンタクト情報の取得</h3> -<p>Firefox OS 1.3 以下では、コンタクト情報の取得は以下のように処理します。</p> -<pre class="brush: js">switch (this.activityDataType) { - case 'webcontacts/tel': - type = 'contact'; - dataSet = theContact.tel; - noDataStr = _('no_contact_phones'); - break; - case 'webcontacts/contact': - type = 'number'; - dataSet = theContact.tel; - noDataStr = _('no_contact_phones'); - break; - case 'webcontacts/email': - type = 'email'; - dataSet = theContact.email; - noDataStr = _('no_contact_email'); - break; -}</pre> -<p>その後、ある人の名前と電話番号が欲しい場合には次のようにそれを使用できます。</p> -<pre class="brush: js">var pick = new MozActivity({ - name: "pick", - data: { - type: "webcontacts/contact" - } -}); - -pick.onsuccess = function () { - console.log("got contact"); - var contact = this.result; - if( contact ){ - console.log( "Name " + contact.name + " number "+ contact.number ); - } -};</pre> -<p>Firefox OS 2.0+ では、次のように、webcontacts/contact を使う際にコンタクト情報全体を取得できるようにするか、というフィールドを追加しました。</p> -<pre class="brush: js">var pick = new MozActivity({ - name: "pick", - data: { - type: "webcontacts/contact", - fullContact: "true" - } -});</pre> -<p>これは <code>Contact</code> オブジェクトを返します。下のように直接そのプロパティを使うことができます。</p> -<pre class="brush: js">pick.onsuccess = function (Contact) { - console.log( "Name " + Contact.name + " number "+ Contact.number ); -};</pre> -<h3 id="Firefox_OS_のアクティビティ">Firefox OS のアクティビティ</h3> -<p>Firefox OS のネイティブインターフェイスである <a href="/ja/docs/Mozilla/Firefox_OS/Gaia" title="/en-US/docs/Mozilla/Firefox_OS/Platform/Gaia">Gaia</a> は基本的なアクティビティを定義している組み込みアプリケーションを多数提供しています。そのアクティビティは以下の通りです。</p> -<table class="standard-table"> - <thead> - <tr> - <th scope="col">アクティビティ名</th> - <th scope="col">アプリケーション</th> - <th scope="col">期待するデータ(フィルター)</th> - <th scope="col">注</th> - </tr> - </thead> - <tbody> - <tr> - <td><code>browse</code></td> - <td>Gallery</td> - <td> - <pre class="brush: js"> -type: "photos"</pre> - </td> - <td> </td> - </tr> - <tr> - <td><code>configure</code></td> - <td>Settings</td> - <td> - <pre class="brush: js"> -target: "device"</pre> - </td> - <td> </td> - </tr> - <tr> - <td><code>costcontrol/balance</code></td> - <td>Costcontrol</td> - <td>なし</td> - <td> </td> - </tr> - <tr> - <td><code>costcontrol/data_usage</code></td> - <td>Costcontrol</td> - <td>なし</td> - <td> </td> - </tr> - <tr> - <td><code>costcontrol/telephony</code></td> - <td>Costcontrol</td> - <td>なし</td> - <td> </td> - </tr> - <tr> - <td><code>dial</code></td> - <td>Communication</td> - <td> - <pre class="brush: js"> -type: "webtelephony/number", -number: { - regexp: "^[\\d\\s+#*().-]{0,50}$" -}</pre> - </td> - <td>アプリが電話呼び出しを渡したい時に使用。</td> - </tr> - <tr> - <td colspan="1" rowspan="3"><code>new</code></td> - <td>Communication</td> - <td> - <pre class="brush: js"> -type: "webcontacts/contact"</pre> - </td> - <td>アプリが新しいコンタクトエントリーを作成したい時に使用。</td> - </tr> - <tr> - <td>Email</td> - <td> - <pre class="brush: js"> -type: "mail"</pre> - </td> - <td> - <p>アプリが新規メールを送信したい時に使用。メールアプリは "url" または "URI" プロパティとして渡された <a href="http://tools.ietf.org/html/rfc6068">mailto URI</a> 文字列をパースすることができます。添付ファイルは "blob" の配列と "filenames" の配列を、n 番目のファイル名は n 番目の blob に対応、というように対応させながら追加することで渡せます。</p> - </td> - </tr> - <tr> - <td>SMS</td> - <td> - <pre class="brush: js" id="LC48"> -type: "websms/sms", -number: { - regexp: "^[\\w\\s+#*().-]{0,50}$" -}</pre> - </td> - <td>アプリが SMS を送信したい時に使用。</td> - </tr> - <tr> - <td colspan="1">nfc-ndef-discovered</td> - <td>n/a</td> - <td>なし</td> - <td>アプリが他デバイス上のアプリと data/tag を交換したい時に使用。</td> - </tr> - <tr> - <td colspan="1" rowspan="4"><code>open</code></td> - <td>Communication</td> - <td> - <pre class="brush: js"> -type: "webcontacts/contact"</pre> - </td> - <td> </td> - </tr> - <tr> - <td>Gallery</td> - <td> - <pre class="brush: js"> -type: [ - "image/jpeg", - "image/png", - "image/gif", - "image/bmp" -]</pre> - </td> - <td> </td> - </tr> - <tr> - <td>Music</td> - <td> - <pre class="brush: js"> -type: [ - "audio/mpeg", - "audio/ogg", - "audio/mp4" -]</pre> - </td> - <td> </td> - </tr> - <tr> - <td>Video</td> - <td> - <pre class="brush: js"> -type: [ - "video/webm", - "video/mp4", - "video/3gpp", - "video/youtube" -]</pre> - <p>{{domxref("Blob")}} オブジェクトとなっている blob プロパティも必要です。</p> - </td> - <td>アプリが動画を表示したい時に使用(view アクティビティでも同様のことが可能)。</td> - </tr> - <tr> - <td colspan="1" rowspan="2"><code>pick</code></td> - <td>Camera, Gallery, Wallpaper</td> - <td> - <pre class="brush: js"> -type: ["image/*", "image/jpeg"]</pre> - </td> - <td>アプリが画像を取得したい時に使用。</td> - </tr> - <tr> - <td>Communication</td> - <td> - <pre class="brush: js"> -type: [ - "webcontacts/contact", - "webcontacts/email" -]</pre> - <p>Firefox OS 2.0 以降では、下のように fullContact: "true" というフィールドを指定して、プロパティに直接アクセスできる完全なオブジェクトを返すことができます。</p> - <pre class="brush: js"> -type: [ - "webcontacts/contact", - fullContact: "true" -]</pre> - </td> - <td>アプリがコンタクト情報またはメールを読み込みたい時に使用。</td> - </tr> - <tr> - <td><code>record</code></td> - <td>Camera</td> - <td> - <pre class="brush: js"> -type: ["photos", "videos"]</pre> - </td> - <td>アプリが何らかの動画を撮りたい時に使用。</td> - </tr> - <tr> - <td><code>save-bookmark</code></td> - <td>Homescreen</td> - <td> - <pre class="brush: js" id="LC46"> -type: "url", -url: { - required:true, - regexp:/^https?:/ -}</pre> - </td> - <td> </td> - </tr> - <tr> - <td colspan="1" rowspan="2"><code>share</code></td> - <td>Bluetooth</td> - <td> - <pre class="brush: js"> -number: 1 -</pre> - </td> - <td> </td> - </tr> - <tr> - <td>Email, Wallpaper</td> - <td> - <pre class="brush: js"> -type: "image/*"</pre> - </td> - <td>アプリが画像をシェアしたい時に使用。</td> - </tr> - <tr> - <td colspan="1" rowspan="4"><code>view</code></td> - <td>Browser</td> - <td> - <pre class="brush: js"> -type: "url" -url: { - required: true, - regexp: /^https?:.{1,16384}$/ -}</pre> - </td> - <td>アプリが URL を開きたい時に使用。</td> - </tr> - <tr> - <td>Email</td> - <td> - <pre class="brush: js" id="LC64"> -type: "url", -url: { - required:true, - regexp: "^mailto:" -}</pre> - </td> - <td> </td> - </tr> - <tr> - <td>PDFs</td> - <td> - <pre class="brush: js"> -type: "application/pdf"</pre> - </td> - <td>アプリが PDF ドキュメントの内容を表示したい時に使用。</td> - </tr> - <tr> - <td>Video</td> - <td> - <pre class="brush: js"> -type: [ - "video/webm", - "video/mp4", - "video/3gpp", - "video/youtube" -]</pre> - <p>文字列である url プロパティも必要です。</p> - </td> - <td>アプリが動画を表示したい時に使用(open アクティビティでも同様のことが可能)。</td> - </tr> - <tr> - <td><code>update</code></td> - <td>Communication</td> - <td> - <pre class="brush: js"> -type: "webcontacts/contact"</pre> - </td> - <td>アプリがコンタクト情報を更新したい時に使用。</td> - </tr> - </tbody> -</table> -<h3 id="Firefox_for_Android_のアクティビティ">Firefox for Android のアクティビティ</h3> -<p>Firefox for Android 32+ では、WebappRT を使っている Web アプリが Web アクティビティ経由で Android のネイティブのインテントを送ることができます。セキュリティ上の理由から、明示的に対応付けされているアクティビティ/インテントのみがサポートされています。該当するアクティビティは以下の通りです。</p> -<table class="standard-table"> - <tbody> - <tr> - <th colspan="2">MozActivity</th> - <th colspan="4">Android のインテント</th> - </tr> - <tr> - <th>アクティビティ名</th> - <th>期待されるデータ</th> - <th>アクション名</th> - <th>Extras</th> - <th>MIME</th> - <th>URI</th> - </tr> - <tr> - <td><code>dial</code></td> - <td> - <pre class="brush: js"> -type: "webtelephony/number", -number: "+11234567890"</pre> - </td> - <td><code>DIAL</code></td> - <td> </td> - <td> </td> - <td><code>tel:+11234567890</code></td> - </tr> - <tr> - <td><code>open</code></td> - <td> - <pre class="brush: js"> -type: "image/jpeg", -uri: "http://mozilla.org/image.jpg"</pre> - </td> - <td><code>VIEW</code></td> - <td> </td> - <td><code>image/jpeg</code></td> - <td><code>http://mozilla.org/image.jpg</code></td> - </tr> - <tr> - <td><code>pick</code></td> - <td> - <pre class="brush: js"> -type: "image/jpeg"</pre> - </td> - <td><code>GET_CONTENT</code></td> - <td> </td> - <td><code>image/jpeg</code></td> - <td> </td> - </tr> - <tr> - <td rowspan="2"><code>send</code></td> - <td> - <pre class="brush: js"> -type: "text/plain", -text: "my message"</pre> - </td> - <td><code>SEND</code></td> - <td><code>TEXT: "my message"</code></td> - <td><code>text/plain</code></td> - <td> </td> - </tr> - <tr> - <td> - <pre class="brush: js"> -type: "text/html", -html_text: "<strong>my</strong> message"</pre> - </td> - <td><code>SEND</code></td> - <td><code>HTML_TEXT: "<strong>my</strong> message"</code></td> - <td><code>text/html</code></td> - <td> </td> - </tr> - <tr> - <td rowspan="2"><code>view</code></td> - <td> - <pre class="brush: js"> -type: "url", -url: "http://mozilla.org/"</pre> - </td> - <td><code>VIEW</code></td> - <td> </td> - <td> </td> - <td><code>http://mozilla.org/</code></td> - </tr> - <tr> - <td> - <pre class="brush: js"> -type: "url", -uri: "mailto:user@mozilla.org"</pre> - </td> - <td><code>VIEW</code></td> - <td> </td> - <td> </td> - <td><code>mailto:user@mozilla.org</code></td> - </tr> - </tbody> -</table> -<h2 id="仕様">仕様</h2> -<p><em>Web アクティビティ</em>はどの仕様にも含まれていません。ですが、提案中の <a href="https://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview-respec.html" title="http://www.w3.org/TR/web-intents/">Web Intents</a> 仕様と共通する部分があります。実際、Mozilla は <em>Web アクティビティ</em>を <em>Web Intents </em>への <a href="https://wiki.mozilla.org/WebAPI/WebActivities" title="https://wiki.mozilla.org/WebAPI/WebActivities">対案</a> として提案しています。このことについての詳細は <a href="http://lists.w3.org/Archives/Public/public-web-intents/2012Jun/0061.html" title="http://lists.w3.org/Archives/Public/public-web-intents/2012Jun/0061.html">Web Intents タスクフォースの ML</a> 上の議論をご覧ください。</p> -<h2 id="関連項目">関連項目</h2> -<ul> - <li>{{domxref("MozActivity")}}</li> - <li>{{domxref("MozActivityRequestHandler")}}</li> - <li>{{domxref("MozActivityOptions")}}</li> - <li>{{domxref("Navigator.mozSetMessageHandler()","navigator.mozSetMessageHandler()")}}</li> - <li><a href="https://hacks.mozilla.org/2013/01/introducing-web-activities/" title="https://hacks.mozilla.org/2013/01/introducing-web-activities/">Introducing Web Activities</a>(<a href="https://dev.mozilla.jp/2013/01/introducing-web-activities/">日本語訳</a>)</li> -</ul> diff --git a/files/ja/web/api/webfm_api/index.html b/files/ja/web/api/webfm_api/index.html deleted file mode 100644 index ac3a639fd7..0000000000 --- a/files/ja/web/api/webfm_api/index.html +++ /dev/null @@ -1,135 +0,0 @@ ---- -title: WebFM API -slug: Web/API/WebFM_API -tags: - - B2G - - Firefox OS - - Non Standard - - WebAPI - - WebFM -translation_of: Archive/B2G_OS/API/WebFM_API ---- -<p>{{ non-standard_header() }}</p> -<p>{{ B2GOnlyHeader2('installed') }}</p> -<h2 id="概要">概要</h2> -<p>WebFM API は、端末の FM ラジオへのアクセスを提供します。これは、ラジオの ON/OFF とラジオ局の切り替え、周波数のチューニングができます。この API は、{{domxref("FMRadio")}} オブジェクトの {{domxref("window.navigator.mozFMRadio","navigator.mozFMRadio")}} プロパティを通じて利用できます。</p> -<h2 id="ラジオの_ONOFF_を切り替える">ラジオの ON/OFF を切り替える</h2> -<p>基本的に、ラジオは {{domxref("FMRadio.enable()")}} メソッドで ON に切り替え、{{domxref("FMRadio.disable()")}} メソッドで OFF に切り替えます。</p> -<p>ラジオを ON にする前に、アンテナが使用可能か確認することが賢明です (アンテナ無しでは端末に搭載されたラジオが信号を受信できません)。この情報は、{{domxref("FMRadio.antennaAvailable")}} プロパティ経由で利用可能です。モバイル端末上では、ヘッドフォンケーブルがアンテナとして使用されます。このケーブルは抜き差し可能なため、アンテナの利用可能状態が変化するたびに WebFM API が {{event("antennaavailablechange")}} イベントを発行します。</p> -<p>ラジオを ON にするには、ラジオの周波数を指定する必要があります。この周波数 (MHz 単位) は、{{domxref("FMRadio.enable()")}} に渡される数値です。</p> -<pre class="brush: js">// The frequency of the radio station -// to listen express in MHz -var frequency = 99.1; -var radio = navigator.mozFMRadio; - -if (radio.antennaAvailable) { - radio.enable(frequency); -} else { - alert("ヘッドフォンを接続する必要があります"); -} - -radio.addEventListener('antennaavailablechange', function () { - if (radio.antennaAvailable) { - radio.enable(frequency); - } else { - radio.disable(); - } -}) -</pre> -<div class="note"> - <p><strong>補足:</strong> 音声は端末で利用可能な <code>通常</code> のオーディオチャンネルに出力されます。</p> -</div> -<h2 id="周波数の切り替え">周波数の切り替え</h2> -<p>周波数の切り替えは、手動または自動でできます。いかなる場合も、端末のラジオに受信される現在のラジオ周波数は、常に {{domxref("FMRadio.frequency")}} プロパティで利用可能です。このプロパティは、<a href="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84" title="http://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%84">MHz</a> 単位の周波数を表す数値です。</p> -<h3 id="周波数の手動設定">周波数の手動設定</h3> -<p>{{domxref("FMRadio.setFrequency()")}} メソッドは、受信する新しい周波数を設定するために使用されます。しかし、設定できる値には制限があります。このメソッドは、メソッド呼び出しの成功またはエラーを扱う {{domxref("DOMRequest")}} オブジェクトを返します。周波数は、次の要件を満たさなければなりません:</p> -<ul> - <li>周波数は、{{domxref("FMRadio.frequencyLowerBound")}} および {{domxref("FMRadio.frequencyUpperBound")}} で定義された範囲内でなければなりません。範囲外の周波数が設定されると、エラーが返されます。</li> - <li>周波数は、{{domxref("FMRadio.channelWidth")}} の値を基準にしてステップされます。このステップ値を外れた場合、適切に周波数の誤差が丸められます。例えば、100MHz が正しい周波数で、{{domxref("FMRadio.channelWidth","channelWidth")}} の値に 0.2 が設定されていた場合、100.15 の周波数を設定しようとすると、100.2 に丸められた結果が返されます。</li> -</ul> -<pre class="brush: js">var change = radio.setFrequency(frequency); - -change.onerror = function () { - var min = radio.frequencyLowerBound; - var max = radio.frequencyUpperBound; - console.warn('周波数は次の範囲内でなければなりません: [' + min + ',' + max + ']'); -} - -change.onsuccess = function () { - console.log('周波数に次の値を設定しました: ' + radio.frequency); -} -</pre> -<h3 id="周波数の自動探索">周波数の自動探索</h3> -<p>WebFM API は、ラジオチャンネルを自動的にシークする便利な手段を提供しています。結論から先に言うと、{{domxref("FMRadio.seekUp()")}} (現在よりも高い周波数のラジオチャンネルを見つけるために使用) および {{domxref("FMRadio.seekDown()")}} メソッドを使用します。前者は現在より高い周波数のラジオチャンネルを見つけるため、後者は低い周波数のラジオチャンネルを見つけるために使用します。これらのメソッドは、各メソッド呼び出しの成功またはエラーを扱う {{domxref("DOMRequest")}} オブジェクトを返します。</p> -<p>両方のメソッドは、{{domxref("FMRadio.frequencyLowerBound","frequencyLowerBound")}} または {{domxref("FMRadio.frequencyUpperBound","frequencyUpperBound")}} の値に達すると、折り返して周波数が探索されます。新しいラジオチャンネルが見つけた場合、現在の周波数を変更し、{{event("frequencychange")}} イベントを発行します。</p> -<p>同時に 2 回探索することはできません (つまり、現在より高い周波数と低い周波数を同時に探索することはできません)。これを試そうとするとエラーが返されます。しかし、必要であれば、{{domxref("FMRadio.cancelSeek()")}} メソッドを呼び出して探索を中止することもできます。このメソッドも {{domxref("DOMRequest")}} オブジェクトを返します。</p> -<pre class="brush: js">var radio = navigator.mozFMRadio; -var seeking = false; -var UP = document.querySelector("button.up"); -var DOWN = document.querySelector("button.down"); - -// When the frequency change, the seek -// functions automatically stop to seek. -radio.onfrequencychange = function () { - seeking = false; -} - -function seek(direction) { - var cancel, search; - - // If the radio is already seeking - // we will cancel the current search. - if (seeking) { - var cancel = radio.cancelSeek(); - cancel.onsuccess = function () { - seeking = false; - - // Once the radio no longer seek, - // we can try to seek as expected - seek(direction); - } - - // Let's seek up - } else if (direction === 'up') { - // Just to be sure that the radio is turned on - if (!radio.enabled) { - radio.enable(radio.frequencyLowerBound); - } - search = radio.seekUp(); - - // Let's seek up - } else if (direction === 'down' { - // Just to be sure that the radio is turned on - if (!radio.enabled) { - radio.enable(radio.frequencyUpperBound); - } - search = radio.seekDown(); - } - - if (search) { - search.onsuccess = function () { - // Ok, we are seeking now. - seeking = true; - }; - search.onerror = function () { - // Something goes wrong... ok, let's try again. - seek(direction); - } - } -} - -UP.addEventListener('click', function () { - seek('up'); -}); - -DOWN.addEventListener('click', function () { - seek('down'); -}); -</pre> -<h2 id="仕様書">仕様書</h2> -<p>仕様はありません。</p> -<h2 id="参照">参照</h2> -<ul> - <li>{{domxref("FMRadio")}}</li> - <li><a href="https://github.com/mozilla-b2g/gaia/tree/master/apps/fm" title="https://github.com/mozilla-b2g/gaia/tree/master/apps/fm">Gaia の FM ラジオアプリ</a></li> -</ul> diff --git a/files/ja/web/api/webvr_api/webvr_environment_setup/index.html b/files/ja/web/api/webvr_api/webvr_environment_setup/index.html deleted file mode 100644 index 394dab831d..0000000000 --- a/files/ja/web/api/webvr_api/webvr_environment_setup/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -title: WebVR環境の設定 -slug: Web/API/WebVR_API/WebVR_environment_setup -translation_of: Archive/WebVR/WebVR_environment_setup ---- -<p>{{draft("このWebVR APIドキュメントは現在v1.0の仕様への対応作業の途中です.従って,ここにある情報のいくつかは最新ではありません.この作業について質問がある場合は ~~chrisdavidmills へ連絡をとってください.")}}</p> - -<p class="summary">この記事では,WebVRのテスト環境を設定するのに必要な作業を示します — 必要なハードウェアとソフトウェアを含めて — ,そしていくつかのトラブルシューティングのTIPSも共有します.</p> - -<h2 id="ハードウェア_Hardware">ハードウェア Hardware</h2> - -<p>まずはじめに WebVR に必要なハードウェアを見ていきましょう.</p> - -<h3 id="ヘッドマウントディスプレイ位置トラッカ">ヘッドマウントディスプレイ/位置トラッカ</h3> - -<p>現在,VR HMD ハードウェアにはいくつかの選択肢がありますが,ベスト/最も信頼のあるものは <a href="https://developer.oculus.com/">Oculus Rift</a> です.Oculus Rift はロバストなヘッドマウントディスプレイと,三脚やモニタにつけて使う位置トラッキングカメラが付属しています.Oculus Rift DK2 は $350で販売されていますが(訳注:2015/10末時点でSold out となり購入できません),市場に多くのヘッドセットが出てくれば価格が下がることが予想され,その技術も進歩するでしょう.</p> - -<p><img alt="" src="https://mdn.mozillademos.org/files/11037/hw-setup.png" style="display: block; height: 78px; margin: 0px auto; width: 70%;"></p> - -<p>VRハードウェア装置に十分な投資ができない人のために,より安価な代替策があります.VR HMDは基本的には,両目の正面にゴーゴルを備えた単なる高解像度スクリーンです.ディスプレイ自体は,立体視を実現するために,それぞれの眼用にクロップと歪みを加えたシーンをわずかにオフセットして横に並べた表示を行っています.これがVR錯覚を作るための本質的な要素です.</p> - -<p><img alt="" src="https://mdn.mozillademos.org/files/10695/stereoscopic.png" style="display: block; height: 540px; margin: 0px auto; width: 960px;"></p> - -<p>同様の体験を擬似的に作成するのに,Android用の Firefox <a href="https://nightly.mozilla.org/">Nightly</a> のようなサポートされているブラウザを使えます.このFirefox for Android Nightly を通じて,VRアプリの実行にトライしてみてください.スマートフォンを頭部にくっつけるための装置が必要かもしれません.これが <a href="https://www.google.com/get/cardboard/">Google Cardboard</a> の背景となる考え方です.この方式の主な課題は,位置追跡センサがないことと,スマホのプロセッサはデスクトップPCほど強力ではないことで,その体験はそれほどリアルではありません(頭を回しても仮想空間で同じ効果は得られませんし,グラグラするだけかも).しかし手頃なテストの代替品として十分動作します.</p> - -<h3 id="VRシーンをレンダリングするためのコンピュータ">VRシーンをレンダリングするためのコンピュータ</h3> - -<p>バーチャルリアリティハードウェアは,許容可能なユーザ体験を届けるためには,高精度で低遅延データを扱う必要があります — 60fpsで表示を更新する必要があり,そうしなければジャダーやぎこちない体験になってしまいます.FPSを維持するには大量のデータを処理しなければなりません.従って,VRアプリケーションを動作させるコンピュータは非常に強力なものが必要となります.理想的には,ディスクリートGPUを備えたハイスペックのラップトップかデスクトップを使うべきです.最新の MacBook Pro 15"/17"あるいはMac Pro,あるいはWindowsのゲーミングPCのようなコンピュータが完璧でしょう.もし遅いコンピュータしかないなら,ひどい表示になってしまいます.</p> - -<h2 id="ソフトウェア_Software">ソフトウェア Software</h2> - -<p>WebVR アプリを実行するために,次に示すソフトウェアセットアップが必要となります.</p> - -<h3 id="Oculus_Rift_SDK">Oculus Rift SDK</h3> - -<p>Oculus Riftを使用するには,<a href="https://developer.oculus.com/downloads/">Oculus Rift SDK のダウンロードとインストール</a> が必要です.SDKには任意のVRアプリを実行するときにも必要となる Oculus Rift ランタイムに加え, トラブルシューティングに便利な <em>OculusWorldDemo</em> アプリが含まれています.</p> - -<h3 id="Firefox_Nightly_と_WebVR_Enabler_Add-on_(or_equivalent)">Firefox Nightly と WebVR Enabler Add-on (or equivalent)</h3> - -<p>ブラウザを設定するために,次のステップを実行します:</p> - -<ol> - <li>Firefox <a href="https://nightly.mozilla.org/">Nightly</a> と <a href="https://www.mozilla.org/en-US/firefox/developer/">Developer Edition</a> の両方がWebVRをサポートしています.未インストールであればどちらかをインストール,あるいは最新版に更新してください.</li> - <li>次に, <a class="external external-icon" href="http://www.mozvr.com/downloads/webvr-addon-0.1.0.xpi">WebVR Enabler Add-on</a> (訳注: このリンク先のバージョンは古いです)をインストールします — これは WebVRを有効にして,マルチプロセスブラウジングを無効化します(<a class="basiclink-blue" href="https://wiki.mozilla.org/Electrolysis">E10S</a>),新しいFirefoxのブラウジング機能は現在WebVRと互換性がありません.</li> - <li>最後に,ブラウザを再起動します.</li> -</ol> - -<div class="note"> -<p><span style="font-size: 14px; line-height: 21px;"><strong>注記</strong></span>: 手動でWebVRを有効にするには, <a>about:config</a> を開いて,<code>dom.vr*</code> prefsを有効にします.でも,WebVR Enabler Add-on は一発で全部を簡単にやってくれますよ.</p> -</div> - -<div class="note"> -<p><span style="font-size: 14px; line-height: 21px;"><strong>注記</strong></span>: モバイルユーザの場合は,Firefox for Android は現在 <a href="http://nightly.mozilla.org/">Nightly builds</a> でWebVRをサポートしています.現在の実装は粗いものですが,時間をかけて刷新されていくでしょう.フィードバックも大歓迎!</p> -</div> - -<div class="note"> -<p><span style="font-size: 14px; line-height: 21px;"><strong>注記</strong></span>: Chrome Experimental ビルドもWebVRを利用可能になっています.詳しくは <a class="external external-icon" href="http://blog.tojicode.com/2014/07/bringing-vr-to-chrome.html">Bringing VR to Chrome</a> by Brandon Jones をチェックしてください.</p> -</div> - -<h3 id="表示設定">表示設定</h3> - -<p>最適なパフォーマンスのためには,後述の説明のようにディスプレイを設定することが<strong>非常に重要です</strong>.そうしないと,余計なジャダーや遅延が発生します.こういった状況を改善し WebVR を真にプラグ&プレイにすることに取り組んでいる最中ですが,現時点ではベストな結果を得るには手動での設定が必要になります.</p> - -<h4 id="Windows">Windows</h4> - -<p>初めに,コントロールパネルで <em>Display > Screen Resolution </em>を開き,次の設定をします:</p> - -<ul> - <li><em>Orientation</em> to <em>Landscape (flipped).</em></li> - <li><em>Multiple displays</em> to <em>Extend these displays</em>.</li> -</ul> - -<p><img alt="" src="https://mdn.mozillademos.org/files/10683/win-screen-resolution.png" style="display: block; height: 573px; margin: 0px auto; width: 644px;"></p> - -<p>次に,<em>Advanced Settings > Monitor > Monitor Settings</em> を開いて,<em>Screen refresh rate</em> を <em>60Hz </em>に設定します.</p> - -<p><img alt="" src="https://mdn.mozillademos.org/files/10685/win-monitor.png" style="display: block; height: 573px; margin: 0px auto; width: 644px;"></p> - -<h4 id="Mac">Mac</h4> - -<p>まず System Preferences > Displays > Display を開いて,次の設定をします:</p> - -<ul> - <li><em>Optimize for</em> to <em>Rift</em></li> - <li><em>Rotation</em> to <em>90°</em></li> - <li><em>Refresh</em> to <em>60Hz</em></li> -</ul> - -<p><em><img alt="" src="https://mdn.mozillademos.org/files/10691/mac-displays.png" style="display: block; height: 528px; margin: 0px auto; width: 1342px;"></em></p> - -<p>次に <em>System Preferences <span class="gray5 light px1">> </span>Displays <span class="gray5 light px1">> </span>Arrangement</em> を開いて, <em>Arrangement</em> を <em>Mirrored </em>にセットします.</p> - -<p><img alt="" src="https://mdn.mozillademos.org/files/10693/mac-displays-mirrored.png" style="display: block; height: 528px; margin: 0px auto; width: 668px;"></p> - -<h2 id="トラブルシューティング_Troubleshooting">トラブルシューティング Troubleshooting</h2> - -<p>このセクションではトラブルシューティングTIPをいくつか紹介します.</p> - -<dl> - <dt>HMD や位置トラッキングカメラがまったく動作しません.</dt> - <dd>Oculus Rift SDKに含まれている <em>OculusWorldDemo</em> (異なるVRハードなら同様のデモ)でシステムが動作するかテストしてみてください.ハードウェア装置がまったく動作していない場合は,付属のマニュアルに説明されている通りに正確に設定されていることを確認してください.古典的なミスとして,トラッキングカメラのレンズキャップが付いたままだったり,USBケーブルの挿し忘れがあります.</dd> - <dt>HMD や位置トラッキングカメラがまだ動かないです</dt> - <dd>一般的な状況として,トラッキングカメラが停止していると,シーンは見られるけれど,頭の回転に追従しません.TIP: カメラが動作していると青い光がつきます.もし <em>OculusWorldDemo </em>が動作しているのにWebVRアプリがまだ動作しないときは,ブラウザの再起動を試してください — Nightly は非常に実験的な状態で,時々動かないことがあります.</dd> - <dt>{{anch("Display configuration")}}の説明にしたがって正しく実施したのに,まだグラフィックスがjuddery/jerky です.</dt> - <dd>使っているGPUが遅すぎるか,専用の(ディスクリートな)GPUを備えていないか,Oculus Rift を起動した時にグラフィックスカードが切り替わっていない(これは個別の事例のはずですが,すべてのコンピュータでは保証できません).いずれにせよ,Macの <a href="https://gfx.io/">gfxCardStatus</a> のようなアプリケーションを使って,何が起こっているかをテストすることができます.これを使うと,インテグレーテッドGPUかディスクリートGPUの切り替えられているかを確認でき,さらに特定の一方だけを使うよう強制することもできます."You are using a system that gfxCardStatus does not support. Please ensure that you are using a MacBook Pro with dual GPUs." というメッセージが表示されたら,たぶんGPUを持っていないので,高速なプロセッサを入手するか,jerkinessを我慢する必要があります.Windowsの場合は,現在同じ機能を持つアプリはありませんし,手動で変更しなければなりません.</dd> - <dt>VRデバイスと一緒に使うと既存のセカンドディスプレイが妙な動作をします.</dt> - <dd>2ndモニタ(あるいはラップトップで外部モニタ)を使っている場合,VRデバイスを使うときは外したほうが良いです.ときどき奇妙な効果が発生します.</dd> - <dt>Linuxはどうなってます?</dt> - <dd>WebVR はLinuxで現在動作しますか?(続く)</dd> -</dl> |