OSをビルドし、感覚をつかみました。OSをビルドしてみます。S3はそうではありません。そこで問題となるのが、ハードウェア絡みのドライバをどう用意するかです。ハードウェア依存のコードを全て持ってくるようにしました。までCyanogenMod9のものを持ってくる羽目になりましたが、結果的に動いたのでよしとします。見て下さい)動画はこちらというわけで、ビルド法は以下の通りです。端末にしてみた」によるビルド法を踏襲したものになっています。ビルド環境の構築にも上記のsolaさんのページを参考にしてみてください。JCROMの両方のビルド法を以下で解説します。ソースの準備ソースを下記のようにダウンロードします(環境によりますが30分~1時間くらいかかります)。JCROMのビルドの際は以下のコマンドを実行します。さんらが開発されている一撃ツールとビルド済みCyanogenMod9のファイルを用いることにします。./extract-files.sh以上の操作により、以下が作成されます。この章で行う操作はsolaさんによるものを流用させて頂いております。OSをビルドするときのみ行ってください。JCROMをビルドする場合は次の「いくつかの修正」へ進んでください。下記のように日本語辞書を用意します。(この命令は環境変数LANGの値によっては失敗します。画面ON時にHOMEボタン裏のLEDが光りっぱなしになるのが気になるので以下で修正します。次に、環境変数設定を行います。ビルドここは自分でkernelをビルドしたい人のみ行って下さい。日本版のkernelを配置済みなので飛ばしても問題ないです。kernelはsakuramilkさんの公開されているSC-06D用kernelを使わせていただきます。$B2G_WORK/B2G/device/samsung/sc06d/kernelビルドと書き込み以下のようにビルドを行います。recoveryで書き込んでください。heimdallでの書き込みには私は成功していません。full_sc06d-ota-eng.neuralassembly_b2jcrom_20131007.zipできることとできないこと下記のような感じです。Wifiが使えるので、それなりに遊べます。アップデートの通知が来ますが、アップデートしないでください。-そういえば、端末をつないでからadbで接続できるようになるまで、1~2分待たされます。S2でotapackageを作るために必要な変更は前頁にて紹介しましたが、ここではさらに以下を追加しました。アドレスをdeviceディレクトリの各端末のmkファイルで指定できるようにしています。OSを動かすにあたり、まず必要なことはkernelを正常に動作させることです。shellで端末の中身を見ることができるので、問題を発見しやすくなります。S2の起動法に従えば、以下の手順で起動プロセスが進みます。パーティションが読み書きできる状態でなければ実行権限が与えられず、(6)の起動に失敗します。これに気づくまで数日かかりました。実行パーミッションをうまく与えても、数回に一回しか起動しない、という状態になりました。上の、やや回りくどい起動プロセスを下記のように簡略化しました。(init.b2g.rcやcheck-sysimage.shは残してありますが、実行されていない)これにより、確実に起動するようになりました。S3の解像度(720x1280)はS2の解像度(480×800)より高いのですが、そのためにブラウザなどの文字表示が小さくなり、またタッチに反応するエリアが狭くなってしまっていることが何度もありました(反応するまで何度もタッチする)。画面が大きいせいもあるのか、もっさり感を感じる場面も多くありました。OSの差を感じさせられました。公式のKEONやPEAKでは異なるのかもしれません。Java」のどちらが速いかという論争を思い出してしまいます。当時は「(ベンチマークの内容によっては)JavaはC++よりも高速」なんてよく言われてましたね。結局Javaは「クライアントサイドでは遅い」というイメージを今でも払拭できていないと私は思いますが、HTML5はどうなるか、気になるところです。おしまい日本語化や高解像度の設定、odapackageの作成などにはsolaさんいよる変更を、プロプライエタリファイル周りではHomuHomuさんの一撃ツールを、kernelはsakuramilkさんのものを使わせて頂きました。