Legacy Xperia、新たなステージへ

 2014年5月18日現在、2011年製XperiaのカスタムROMに大きな動きがありました。それは新しいメモリ管理システム、IONの採用です。 IT素人による解説です。

 

 今月、Legacy Xperiaとそこから派生したCarbon ROM・VanirAOSPの3つ全部がカーネルにIONを採用したNightly ROMを公開しました。他にもあると思いますが私が把握しているカスタムROMはこの3つです。

 

IONとは?

 まずIONの説明の前に。スマートフォンはSoC(cpuみたいなやつ)とハードウエア(画面、スピーカー、カメラなど)の間にバッファメモリというものを置き、それを経由して情報をやり取りしています。例えばカメラアプリを起動して操作するとき、その情報は直接SoCとやり取りされません。まずバッファメモリに蓄えられ、それをSoCが読み取り、次に処理した情報をまたバッファメモリに書き込み、それをカメラアプリが読み込むといった流れになっています。※IT素人による解説です。ここでやり取りされる情報はカメラアプリならカメラアプリのみが利用する情報であり、他のアプリは利用しません。こういったSoCとのやり取りで生まれる情報は一時的であり、常に消され、その消されたスペースは別のアプリが利用します。

 

 ICSより古いバージョンのAndroid OSではこのバッファメモリの管理はSoCベンダーが行う必要が有りました。つまりSoCベンダーがSONYとSamsungに自社のSoCを売るなら二社分のメモリ管理用のドライバを提供する必要があったのです。これでは大変だということでGoogleは「ICSからOSレベルでメモリ管理システムを採用する」ことを決定します。このシステム名がIONです。

 

 

問題発生

 Snapdragonを販売するQualcommのメモリ管理システム名はPMEMといい、2011年製Xperiaの中でも動いています。これは公式ICSを焼いた場合でも変わりません。

 

 これらXperiaにJB以降のカスタムROMを焼いた場合、問題が発生します。例えば、CM10を焼いた2011年製XperiaでGoogle MAPを開くと画面がガクガクと揺れます。これはQualcommが提供するグラフィックドライバがIONのみになった事が原因です。実際、バージョン6.14.5以前のGoogle MAPは全く問題無く動きます。これはGBが利用できる最後のバージョンです。

 

 この問題を解決するにはカーネルを作り替えてIONを採用する必要が有ります。しかし、IONを採用した場合、今度はカメラが動かなくなる問題が発生します。なぜならカメラを動かすドライバはSONYによって作られており、このドライバはPMEMでしか機能しないからです。つまり、PMEM向けのドライバとION向けのドライバが一緒に動く環境が一番の理想であり、これはとても困難な事でした。

 

 

解決策

 私は詳しく理解できていませんが、IONの上にPMEMを置くことでカメラを犠牲にすることなくIONに乗り換える方法がGalaxy S Plusのハッキングチーム、とくにその中のChristopher83氏により開発されました。そしてその手法は2011年製Xperiaでも有効だったそうです。これによりLegacy Xperiaチームの中でもIONとPMEMのハイブリッドカーネルの開発が続けられていました。それがようやく形になったため最近のカスタムROMにはIONが採用される傾向があります。

 

 

参考にしたサイト

What is ION?

https://github.com/LegacyXperia/Wiki/wiki/What-is-ION%3F

 

The Android ION Memory Manager

http://android-revolution-hd.blogspot.jp/2013/08/the-android-ion-memory-manager.html

 

 

低スペックAndroid機でも快適ブラウジング

 私はSony Ericssonの小型アンドロイド機、Xperia miniが大好きです。今でもメイン機として利用しています。しかしminiは2011年に発売されたため力不足。不便な事もたまに起きますが、愛しさと工夫する心意気があれば受け入れる事が可能です。

 

 これはXperia miniだけではありませんが、低スペックな端末でブラウジングをするとページ表示の遅さにうんざりします。そこで解決策をご紹介します。本当に変わるのでオススメです。root化する必要はありません。

 

Opera Classicをインストールしよう

 Classicが付かない方やChromeは低スペック機には重過ぎます。インストールしたらアプリを起動してURL欄に「opera:config」と入力してエンターキーをタップしてください。

 

 「設定ファイルエディタ」というページが開きましたね。このページはブックマーク出来るのでしておくと便利ですよ。それではExtensionsをタップしてください。展開された項目からScriptingを探してチェックを外します。保存を押してください。

b2ap3_thumbnail_Screenshot_2014-05-15-01-16-42.png

 

 これでJavaScriptが無効になりました。この時点で高速になったはずですが、モバイル用のWEBページはJavaScriptが無効だと非常に不便でリンクを辿れなくなる事も多いので次はパソコン用のページを表示させるように設定します。

 

 こちらのサイトで様々なUser Agentが一覧表示出来るので、好きなものを選んでコピーしてください。例えばIEならこれです。

Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; ARM; Trident/6.0)

 

 コピーしたらOpera Classicの設定ファイルエディタのUser Prefsという項目を展開し、Custom User-Agentを探してそこに先ほどコピーした文字列をペーストして保存を押してください。これでモバイル用ではなくパソコン用のWEBページが表示されるようになりました。(モバイル用ページが表示される事もよくありますが)これで完了です。

 

 

おまけ:広告フィルター、JavaScriptを選択的に有効

 広告を消すことで更にページ表示が早くなります。以前はこちらのサイトにある「じぇねれいと」をクリックする事でフィルターがダウンロード出来ましたが、2014年5月14日現在は出来ません。手動でやる場合はこちらのサイトを参考にしてください。一応私もzip形式で上げておきますので展開してお使いください。urlfilter.ini.zip

 

 urlfilter.iniをスマホ内に保存したら次にOpera Clasicの設定ファイルエディタを開いてNetworkという項目を展開します。そしてURL Filter Fileを探して「選択」をタップしてください。バックキーを押して階層のトップまで戻り、保存したurlfilter.iniを選択します。もし私が上げたzipをスマホでダウンロードし、展開したのならDownloadフォルダにあると思います。選択して保存したらOpera Clasicを完全に終了して再度立ち上げたら広告フィルターが有効になります。完全終了の方法は設定>詳細ツール>終了ボタンをOnにすることでメニューに終了ボタンが表示されますのでボタンを押してください。

 

 

 JavaScriptを選択的に有効とはつまり「任意のサイトだけJavaScriptが働くようにする」という意味です。例えば、よく利用するサイトがJavaScript無効では何も表示されない場合などこの設定が役に立ちます。参考としてNHKオンラインJavaScriptを有効にします。

 

 このブログはコードを書くと意図した通りに表示されないので画像を貼ります。

b2ap3_thumbnail_Screenshot_2014-05-15-03-27-48.png

 

 

 上の画像のようにhttp://は抜いたURLをテキストファイルに打ち込んで、override.iniと名前を付けてスマホ内に保存してください。そしてOpera Clasicの設定ファイルエディタを開いてUser Prefsという項目を展開します。そしてOverrides Fileを探して「選択」をタップ、階層の一番トップに戻って先ほど保存したoverride.iniを選択してOpera Clasicを完全終了します。再度立ち上げることで任意のサイトだけJavaScriptが有効になります。

 

 

失敗したからリセットしたい場合

 手を加えた項目を覚えている場合は「デフォルト」をタップして保存してください。覚えていない場合は設定からアプリのデータを消去してください。

クロノ・トリガーのiPhone5Sにおけるバグ※解決済み

 2014年5月14日現在、App Storeにてクロノ・トリガーのページを開くとこんな不具合が公表されています。

b2ap3_thumbnail_2216.JPG

 

 具体的にどのようなグラフィックの問題が発生しているのでしょうか?まず次の画像をご覧ください。iPhone4でiOS6.1にてゲームをプレイしています。

b2ap3_thumbnail_IMG_2213.PNG

 

 続けてiPhone5SでiOS7.0.4にてプレイした場合。

b2ap3_thumbnail_IMG_2207.PNG

 

 背景は問題ありませんがキャラクターの色がおかしくなっているのが分かります。全体的に変ですが、特にマール(真ん中のキャラクター)とクロノ(一番上のキャラクター)の目が真っ黒になっていて邪悪な印象を抱かせます。

 

 

追記

 既に解決済みです。分かりにくいですがiPhone5Sの4インチに合わせてフルスクリーンだったのが3.5インチに変更になったのは残念かな。スクショ撮る場面が悪かったですね。

b2ap3_thumbnail_IMG_2265.PNG