Firefox OS Simulator

このページでは、Firefox OS 1.2 以降をターゲットにする開発者向けの Firefox OS Simulator について説明します。Firefox OS 1.1 向けのアプリを開発している場合は、代わりに Firefox OS 1.1 Simulator をご覧ください。

Firefox OS Simulator は、Firefox OS デバイスのシミュレーションを行う Firefox OS の上位レイヤー版ですが、デスクトップ環境で動作します。これは多くの場合、アプリのテストやデバッグに実機が必要ないということです。これは Firefox OS デバイスと同じサイズのウィンドウで動作し、Firefox OS のユーザインターフェイスや同梱アプリを含み、そして Firefox OS デバイスの API の多くをシミュレーションします。

Simulator は、Firefox のアドオンとしてパッケージ化および頒布しています。Simulator をダウンロードして Firefox にインストールすると、Simulator の実行、アプリの追加、アプリマネージャWebIDE を使用して開発ツールを接続することができます。

インストール

Simulator をインストールするには、WebIDE の外部コンポーネント管理ペイン (Firefox 34 以降で使用できます) を使用します。複数のバージョンを利用できますので、フレキシビリティを最大化するためにすべてインストールすることをおすすめします。

WebIDE のランタイム一覧で、開始する Simulator を選択します。詳しくは WebIDE のドキュメントで操作手順をご覧ください。Simulator を開始すると WebIDE を使用して実機と同様に、アプリの追加やデバッグが可能になります。

アプリマネージャ (WebIDE より前に使用できた古いツール) を使用している場合は、以下のボタンから Simulator をインストールできます:

Simulator をインストール

Simulator のユーザインターフェイス

Simulator は個別のウィンドウで表示され、320x480 ピクセルのスクリーン領域をシミュレーションするようなサイズになります。タッチイベントをシミュレーションするには、マウスボタンでクリックして、ボタンを押したままドラッグします。よってホームスクリーンで右から左へクリック アンド ドラッグを行うことで、組み込み済みのアプリと合わせてあなたが追加したアプリが表示されます:

Simulator 下部のツールバーに、ボタンが 2 つあります:

  • 左側のボタンはホームスクリーンへの移動、または長押しするとタスクリストを表示します。
  • 右側のボタンは Simulator の向きを、ポートレートとランドスケープで切り替えます。これは orientationchange イベントを発生させます。

SD カードのエミュレーション

Simulator では、デバイスの SD カードを Simulator のプロファイルの "fake-sdcard" ディレクトリにマップします。プロファイル自体は Simulator をインストールした Firefox プロファイルの "extensions" ディレクトリに置かれます。例えば:

/path/to/Firefox/Profiles/Firefox-profile-name/extensions/fxos_2_2_simulator@mozilla.org/profile/fake-sdcard

getDeviceStorage API を使用して読み書きしたファイルは、このディレクトリに存在します。

2.2 より前のバージョンの Simulator では、"fake-sdcard" ディレクトリを手動で作成しなければなりませんでした。バージョン 2.2 より、"fake-sdcard" ディレクトリを自動的に作成します。

またバージョン 2.2 より、Simulator をコマンドラインから起動する場合に --storage-path オプションを使用して、別のディレクトリを示すことが可能になりました。

注記: これは主に、API のテストを意図した機能です。音楽を "fake-sdcard" ディレクトリから読み取ることはできませんが、システムの ~/Music から読み取ることができます。また、画像を ~/Pictures から、動画を ~/Videos から読み取ることができます。ダウンロードしたファイルは ~/Downloads に保存します。user-dirs.dirs による再定義もサポートします。

Simulator の制限事項

Firefox OS Simulator は完全なシミュレーションではないことに注意してください。

ハードウェアの制限事項

スクリーンサイズを除き、Simulator はメモリ容量や CPU の速度といった、Firefox OS デバイスのハードウェアの制限事項をシミュレーションしません。

Audio/Video コーデック

以下のコーデックは、ハードウェアアクセラレーションによるデコードに依存するため未サポートです:

  • MP3
  • AAC
  • H.264 (MP4)
  • WebM

すなわち、これらのコーデックに依存する Youtube などの Web サイトやビデオ再生アプリのテストに Simulator を使用することはできません。

非対応の API

デバイスで動作する API には、Simulator で動作しないものがあるでしょう。これは一般的に、サポートするハードウェアがデスクトップ PC で使用できないためです。私たちは Geolocation のように一部の API のシミュレーションを実装しており、将来のリリースでさらに増やす予定です。ただし、現時点では以下の API をサポートしていません。これらを使用するとエラーが発生したり、誤った結果になる可能性があります:

助けを得る

疑問点がある場合は、dev-developer-tools メーリングリストirc.mozilla.org の #devtools で質問してみてください。

詳細なログ取得を有効にする

アプリが出力したメッセージは Web コンソールで確認できます。コンソールはWebIDEを使用して、アプリに接続できます。コンソールが接続して動作する前の、アプリ起動時に発生する初期のログを取得したい場合は、Simulator で詳細なログ取得を有効にしてください。

about:config を開いて新たな設定項目を新規作成します。項目名は Simulator のバージョンにより異なります:

  • Firefox OS 1.3 では extensions.fxos_1_3_simulator@mozilla.org.sdk.console.logLevel
  • Firefox OS 1.2 では extensions.fxos_1_2_simulator@mozilla.org.sdk.console.logLevel

この設定項目に文字列値 "all" を設定して、アドオンマネージャでアドオンの無効化および再有効化を行ってください。これで、Simulator の動作に関する詳細なログをブラウザコンソールに表示します。

Simulatorをビルドする

Simulator に含まれる Gecko や Gaia のコードに適用するパッチのテストを行いたい場合は、カスタマイズした Gecko ビルドや Gaia プロファイルを使用するために Simulator を変更したいと考えるでしょう。あるいは、チェックアウトした Gecko から新たな Simulator をビルドすることもできます。

代替手段

Gaia を実行する色々な方法 — 実行の容易さの昇順および出荷製品への近さの逆順に並べたリストもあります (このリストによれば、Firefox OS Simulator は実行がもっとも容易、およびもっとも出荷製品から遠い方法です)。

ドキュメントのタグと貢献者

タグ: 
 このページの貢献者: yyss, Uemmra3, omasanori
 最終更新者: yyss,