Boot to Gecko をモバイルデバイスにインストールする

モバイルデバイス用 Boot to Gecko をビルドが終了したら、インストールできるようになります。この記事では、プロセスの過程を解説します。

注意 : 初めてスマートフォンのフラッシュメモリに書き込む場合は、Android 4 (Ice Cream Sandwich) が絶対にインストールされていなければなりません。そうしないと、このプロセスは正しく動作しません。既に B2G の初回インストールを行っているのであれば、その上に単純に更新するだけです。

スマートフォンのフラッシュメモリに書き込む

スマートフォンのフラッシュメモリに何かを書き込むときは、単に、スマートフォンに接続して、このように入力してください :

./flash.sh

たったこれだけです。これで現時点でビルドされている B2G がデバイスのフラッシュメモリに書き込まれました。

デバイス用 udev ルールの構成をする

Linux で、以下が表示された場合ですが、

< waiting for device >

これは、adb 用の udev ルールとは別に、Fastboot デバイス用の udev ルールが追加されていない可能性があることを意味しています。ここで lsusb を実行すると、USB ベンダー ID を確認できますので、よくある例として Google の USB ベンダー ID : 18d1 の場合は、/etc/udev/rules.d/51-android.rules に、以下の行を追加することで動くようになるでしょう :

SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
注意 : Linux では libusb エラー "-3" は非常に有用で、USB デバイスにアクセスする時は、root になる必要があるという意味です。sudo を使用して、もう一度スクリプトを実行してください。

Samsung Galaxy S2 に関する特記事項

あなたのスマートフォンが Galaxy S2 で heimdall 1.3.2(最新バージョン、heimdall version を使って確認できます)を使用している場合、"Heimdall flashing failed" と、いくつかの追加情報に続いて、"FACTORYFS upload failed!" という警告エラーが表示されるかもしれません。これは実際には成功していますので、警告は無視して構いません。

このおかしな振る舞いをなくすには、Heimdall を 1.3.1 リリース("git checkout fbbed42c1e5719cc7a4dceeba098981f19f37c06")にダウングレードするソースのコピーを入手して、README に従ってコンパイルし、インストールすれば、エラーが出力されなくなります。しかし、これは必ずしも必要なわけではありません。

Heimdall の全てのバージョンで、100MB 以上の system.img をフラッシュメモリに書き込むことができません。これを実行してみてください :

ls -l ./out/target/product/galaxys2/system.img

書き込みたいイメージが非常に大きいのが確認できます。あまりにも大きい場合は、アドバイス用の IRC で質問してみてください。二つの段階で対処する方法があります。

Samsung Galaxy S2 用の追加ステップ

Galaxy S2 のフラッシュメモリに書き込む場合、以下の追加ステップがあります。Gaia は flash.sh スクリプトで自動的にフラッシュメモリの書き込みができないため、以下のように実行する必要があります :

./flash.sh gaia

Fastboot スマートフォンのパーティションを指定してフラッシュメモリの書き込みをする

Fastboot スマートフォン( Samsung Galaxy S2 以外のスマートフォンでも)の特定のパーティションのフラッシュメモリに書き込みすることが可能です。例えば :

./flash.sh system
./flash.sh boot
./flash.sh user

モジュールを指定して更新する

フラッシュメモリに書き込む際に、名前を指定することで、B2G のコンポーネントを指定して更新することが可能です。例えば :

./flash.sh gaia
./flash.sh gecko

BUILD_APP_NAME 環境変数を使用することで、一つのアプリケーションだけを更新することができます :

BUILD_APP_NAME=calendar ./flash.sh gaia

次のステップへ

この時点で、あなたのスマートフォンは Boot to Gecko が動作しているはずです!いよいよコードを書いたりテストをしたり、デバッグしたりする時がやってきました!

注意 : 有用な使い方のヒント : ビルドした B2G がロック画面で起動し、スマートフォンの解除をするパスコードが要求された場合は、デフォルトコードは 0000 です。

トラブルシューティング

B2G をインストールした、もしくは新しいバージョンに更新した後に、デバイスが正しく動作しなかった場合の対処法について、いくつかのヒントがあります。

UI が起動しない場合

スマートフォンの更新をして、ユーザインターフェースが起動しなかった場合は、リセットして、無効の設定やその類のものを削除できます。これで再び動作することができるようになるでしょう。やり方はこちらです :

cd gaia
make reset-gaia

./flash.sh 実行時の "image is too large" というエラーメッセージについて

これは、恐らく、あなたのスマートフォンは、フラッシュメモリへの書き込み前にルートになる必要があるということを意味しています。B2G はルートパーティションに書き込まれなければいけないため、スマートフォンへのインストールに、ルート権限が要求されます。

 

Document Tags and Contributors

タグ:
Contributors to this page: taguchi-ch
最終更新者: taguchi-ch,
サイドバーを隠す