Quantcast
Channel: 犬を一匹飼っている
Viewing all 248 articles
Browse latest View live

Amazon Fire (5th gen) 遂に実用レベルになった

$
0
0

今までFireをいろいろ調整してきましたが、やっと実用レベルになったような気がします。どのような調整したかをまとめておきます。

CM12.1/ SuperSU 2.52

  • Open gappsは安定している20151219版を使う
  • CPU governorはperformanceに設定
  • L speed modを使う
    * RAM manager – gaming
    * SD tweak, Zapalign, Better scrolling, Liquid smooth UI – on
  • Trimmer (fstrim)で定期的(今のところ2日に一度)に自動でNANDをtrim

体感的な効果を順番にすると、Trimmer/CPU governor>Open gapps 20151219>L speed mod、という感じでしょうか。CPU governorをperformanceに変更するとバッテリーの消耗が心配ですが、何もしていないときは不要なコアはオフになりますし、他のガバナーのようにクロックをちまちま変更しないので、引っ掛かりが少なくなります。バッテリーの消耗も劇的に速くなるというより、ちょっと速いかな?位なので、数分でも長く使いたい!という訳でなければ、performanceに変更しても差し支えないと思います。


Filed under: Amazon Fire (5th gen)

Xiaomi mi4c レビュー?

$
0
0

※ ドコモとauのデュアル・スタンバイを目的にmi4cの情報を集めている方もいると思いますが、デュアル・スタンバイには興味がありませんのでこのブログで取り上げることはありません。

IMGP0754

見ての通り、Nexus 5とほぼ同じ大きさで、若干薄いです。筐体はポリカーボネートで、プラスティックのNexus 5よりしっかりしています。少し青み掛かったダークグレーはマットな感じですが、しばらく使っているとテカりが出てくるような気がします。筐体はしっかりしていますが、音量と電源の物理ボタンはNexus 4のようなちゃちい作りです。テーブルなどに置くと、ボタンが動くプラスティックぽい音がします。物理ボタンはすべて右側にあり、Nexus 4・5で電源ボタンがあった位置辺りに音量ボタンがあるので押し間違えてしまいます。慣れるのにはしばらくかかりそうです。

動作はNexus 5よりもきびきびしている感じがします(まぁ、ベンチマークの数値も上で、RAMも1GB多いので当たり前ですが)。32GBモデルを買いましたが、/systemに余裕の1.81GBが割り当てられていますし、実際にユーザーが使える領域は25.52GB程度です。

元々入っていたROMは純正の7.0.16.0で、リセラーの独自ROMやカスタムリカバリーが入ってなくてよかったです。Xiaomiの安定板fastboot ROMを使ってブートローダーとシステム以外を7.1.6.0のものにアップデートしました。ブートローダーなどの使い勝手(fastbootコマンドなど)も、基本的にNexusシリーズと同じです。

Xiaomiのスマホのナビゲーション・タッチキーはGalaxyのように「戻る」と「メニュー」がNexusとは逆です。/system/usr/keylayout/synaptics_dsx.klを書き換えて、Nexusと同じにマッピングし直せますが、機能とキーのマークが違うので余計に紛らわしく、タッチキーは無効にしてナビゲーション・キーは画面に表示させることにしました。画面が若干小さくなりますが、変な並びのナビゲーション・キーに慣れたくありませんので、仕方ありません。手は小さい方ではありませんが、片手(右手)で操作するとナビゲーション・タッチキーは意外に下の方にあり、親指で左側のキーをタッチしようとすると親指を結構伸ばすので不安定で無理がある持ち方になりますので、ナビゲーション・キーは画面に表示させた方がいいかもしてません。

Mi4cのROMには言語が中国語と英語しかありませんので、Team SuperluminalのCyanogenMod 13に書き換えます。相性も考えてリカバリーもTS TWRP 2.8.7.3にしました。(どうもTWRP 3.0.0-xはどの機種でもまだ安定していないような気がします…) 上で7.1.6.0の一部をインストールしたのは、TS CM13が7.1.6.0のプロプライエタリなライブラリーを使用しているからです。モデム・BTのROMとライブラリーのバージョンを揃えておくことで、Androidの通信が不安定になるリスクを避けられます。

20160305版のCM13を入れていますが、スリープからの復帰時にバックライトが最小のままという時がごくたまにありますが、それ以外は特にバグに遭遇していません。Team Superluminalが独自に入れた「ROM extra settings」以外はほぼ完全に日本語化されます。初回起動時に寄付を促す通知が表示されます。あまり人気のないMi4c向けのカスタムROM開発を継続してもらえるよう寄付はしたいと思います。

open_gapps-arm64-6.0-super-20160228.zip(最新版ではなく、安定している20160228版を選びました)を入れ、bootanimation.zipをNexusのものに書き換え、Nexus 5と全く同じ設定にしましたので、起動時のmiのロゴ以外「ほぼNexus」です。なので、特にこれといってレビューと言えるようなことは書けません。ボタンがちゃちいので、DT2W(double tap to wake=スリープ時に画面を二度タップすると復帰する機能)をオンにしました。Nexus 5などでDT2Wをオンにするとずっとタッチセンサーを監視するのでバッテリーを消耗しますが、Mi4cはSnapdragon 808を搭載していますので、ずっとタッチセンサーを監視していてもそれほどバッテリーは消費しません。

Snapdragonを搭載する端末向けのCM13には最近評判のいいSnapdragon Cameraが入っていますが、TS CM13にも入っています。設定項目がかなりありよさげですが、グリッド機能がないんですよね… ちなみに、Snapdragon Cameraが入っているROMにGoogleカメラをインストールするとカメラがクラッシュします。エッジタップ機能は意図的にオフにしました。カメラ・アプリでエッジタップしても手ブレするだけであまり使い道がないような気がします…

Facebookなどいろいろアプリが入っている状態(GPS常時オン/モバイルでのバックグランド通信は設定せず)で、WiFi接続でのスリープ時のバッテリーの消費は0.5%/h程度で、LTE接続時は2.4%/h程度です。Nexus 5の場合、前者が1%/h前後、後者は同じくらいです。スクリーンオン時のバッテリーの消費はNexus 5とあまり差がないような気がします。


Filed under: mi4c

FireのROMを行ったり来たり…その2

$
0
0

Fireを購入してからずっと使い勝手のいいCM12.1を使っていましたが、同じ作者のAOSPのROMの中身を見てみたところ、init.dとexFATが対応されていたので、試してみることにしました。CM12.1の一番の難点は、スリープ時にWiFiが切断されてしまう(完全にスリープしてしまう)ことと、使っていると突然コアの占有率が上がって、数秒固まってしまうことでした。

Screenshot_2016-05-15-10-38-25

とはいえ、このAOSPのROMはある意味クセモノです。1)Open GappsのNanoが既にインストールされており、何故かこれが簡単に入れ替えができない、2)連絡先が入っていない、3)一部のGoogleご謹製アプリをGoogle Play Storeからインストールしようとするとエラーコード505でインストール出来ない(多分Open Gappsが古すぎる?)、4)Webview・キーボード・TTSなどはAOSPのものが入っている。

Open Gappsを入れ替えると、初回起動時のウィザードでGMS(Google Play開発者サービス)がエラーを吐きまくるので、原因を調べるのに3日かかりました。対策はROMのwebviewをOpen GappsのWebviewGoogleで置き換えないことでした(Open GappsをインストールするときにオプションでWebviewGoogleを除外する)。

ROMのAPIの対応だと思いますが、Open GappsのCameraGoogleをインストールすると、起動はするもののビデオに切り替えるとクラッシュします。これもインストール時にオプションで除外した方がいいでしょう。別途http://www.apkmirror.com/からGoogle Camera 2.5.052 (2005148-30) (arm)をダウンロードしてインストールすればカメラは使えるようになります。

使用感はCM12.1よりもいい感じがします。スリープ復帰時やアプリ切替時にコアの占有率が上がって固まるということは少なくなりました。CM12.1よりも気持ちサクサクしているような気もします(プラシーボ?)。


Filed under: Amazon Fire (5th gen)

Fireが遂に実用レベルに(最終版)

$
0
0

昨年(2015年)11月に購入したFire第五世代。ハードウェアの割にはなかなかモッサリ感がなくならず、イライラしながら使う感じでしたが、段々ROMもアプリもアップデートされ、本来の性能が出るようになりました。Kernelが変更できないので多分これ以上使い勝手は向上しないと思われ、現状をまとめておきます。

ROMはこちらのAOSPのものを選びました。CM12よりもAOSPの方が一般的に軽いと思います。

ROMのインストール後、システムを起動しKernel Adiutorをインストールして、設定するべき点は一つです。

CPUの設定:起動時に適用

  • CPU最大周波数:1300MHz
  • CPU最小周波数:1040MHz
  • CPUガバナンス:performance

以前のバージョンのKernel Adiutorでは、MediaTek MT8127の設定を上手く変更・維持できていなかったように思えます。これでNexus 7(初代)くらいの体感になったような気がします。

「最小周波数1040MHz、ガバナンスperformance??これじゃぁバッテリー爆喰いなんじゃないの?」と思われるかもしれませんが、ガバナンスがperformanceでも4つあるコアのうち使われていないものはオフになりますので、常にフルに1040MHzで動作しているわけではありません。タブレットなので、バッテリーの持ちはどちらかと言えば、モニターの明るさなどの要因のようが大きいので、大幅に使用時間が短くなるということはないと思います。

追加でTrimmer (fstrim)を使って定期的にストレジをトリムしてもいいかもしれません。

時々どのOpen Gappsを使っているのかを尋ねられますが、Superを使っています。もちろんそのままでは大きすぎるので、gapps-config-ford.txtを使って、インストールするアプリ、削除するアプリを選択しています。内容を下に記しておきます。

AndroidForWork
AndroidPay
Books
DialerGoogle
DMAgent
Docs
Drive
Earth
Fitness
GooglePlus
Hangouts
Indic
Korean
Maps
Messenger
Movies
NewsStand
NewsWidget
Pinyin
ProjectFi
Sheets
Slides
Street
TagGoogle
WebviewGoogle
Zhuyin

BasicDreams
Browser
CalendarStock
CameraStock
ClockStock
CMAccount
CMAudioFX
CMEleven
CMFileManager
CMMusic
CMSetupWizard
CMUpdater
CMWallpapers
DashClock
Email
ExchangeStock
FMRadio
Galaxy
Gallery
HoloSpiral
KeyboardStock
Launcher
MMS
NoiseField
Phasebeam
PhotoPhase
PhotoTable
PicoTTS
SimToolKit
Studio
SykoPath
TagStock
Terminal
VisualizationWallpapers
WhisperPush


Filed under: Amazon Fire (5th gen)

たまには内部ストレージのメンテナンスが必要

$
0
0

先日Nexus 5のROMをアップデートする際、Titanium BackupとTWRPでバックアップを取ろうとしたら、内部ストレジに空き容量が足りないと叩かれた。そこでMusicフォルダをPCに退避させようとしたところ、異常にコピーが遅い。何かがおかしい。

結論を先に言えば、色々ROM焼きを繰り返していると内部ストレジにゴミファイルが溜まっていき、内部ストレジの空き容量が少なくなり、PCと接続するときに安全に取り出さないと、時々ファイルシステムが壊れ、コピーが遅くなったりファイルが壊れたりする。

内部ストレジに空き容量を作り、バックアップを取り、内部ストレジ内のデータが入っているフォルダ(隠しフォルダやアプリが勝手に作ったフォルダを除く)をPCにすべて退避させて、TWRPで/dataを初期化してみることにした。(内部ストレジは/data内にあるので)

まずはTWRPを起動し、「Wipe」に移動。「Format Data」を選択すると、「/dataを初期化すると、内部ストレジ内のアプリのデータ、バックアップデータ、写真、動画、メディアおよび暗号がすべて削除されます。実行すると取り消しできません。続ける場合はyesとタイプし、キャンセルする場合は戻るボタンを押してください。」と英語で表示されるので、yesとタイプし、実行ボタンを押す。

念のため、/dataのファイルシステムを修復しておく。ホームボタンでメイン画面に戻り、再度「Wipe」に移動。今度は「Advanced Wipe」を選択。/以下のパーティションが表示されるので、「data」にチェックを入れ選択し、「Repair or Change File System」ボタンを押す。「Resize」「Repair」「Change File System」などのボタンが表示されるので、「Repair」を押す。「Swipe to Repair」をスライドさせて、/dataパーティションを修復。

最後に、ホームボタンでメイン画面に戻り、再度「Wipe」に移動し、「Advanced Wipe」を選択。「data」にチェックを入れ選択し、「Swipe to Wipe」をスワイプし、/dataをフォーマットする。ここで、一度TWRPをリブート。

PCに退避していたフォルダをすべて内部ストレジに戻し(必要があれば内部ストレジ内のフォルダ・ファイルの権限を修正)、TWRPのバックアップを復元。復元終了後システムを起動し、作業は終了。

PCに接続し、内部ストレジからPCへファイルをコピーしてみたところ、スピードがかなり改善。内部ストレジの空き容量も数GB増加。最近何故かもっさりしてきたNexus 7 (2013)も同様にメンテナンスしたところ、サクサク感が戻った。

ROMを焼くたびに毎回バックアップをして、PCにデータを退避させて、ストレジを修復して、データを戻して、バックアップを復元して…と面倒なことはできないものの、たまには内部ストレジをメンテナンスする必要があると実感した。


Filed under: Android

USM-CA1シリーズはとてもソニーらしい製品

$
0
0

旅行の移動中に動画を見たり、内部ストレジの空き容量が少ないときでもバックアップを取ったりするために、USBメモリを物色していた。Mi4cのUSB端子はType-Cで、今後もType-Cの端末は増えていくと思われるので、USB Type-CとType-A兼用のUSBメモリを探してみたが、どれもパッとしないデザイン… そこで見つけたのがソニーの「USM-CA1シリーズ」。スペックはUSB3.1、読み込み速度130MB/s。

usm64ca1

アマゾンの説明やレビューを読んでも、ソニーのホームページで商品説明を読んでも、いまいちどうPCと接続するのかが分かりにくかった。商品が届いて見てみると、(もしかして?とは思っていたけど)本体をそのままグサッとPCのUSBポートに差し込めてしまうという代物。ケーブルなどは不要。つまり本体はType-A端子サイズ!ただ、小さいのでなくさないか心配。このミニマリスティックなデザインはとてもソニーらしい。ちなみにアマゾンで売っている製品は海外向けの並行輸入品で、日本向けの正規品の半額。保証を取るか、値段を取るかは個人の判断で。

32GBと64GBの価格差が千円ちょいで、CM13はexFATに対応しているので迷わず64GBを選択。PCでexFATでフォーマットすると、容量は60.4GBと認識。そこでうちで今のところ唯一のType-C端末を持つMi4cに挿してみたところ、メモリは認識されるものの、アプリからは見えない… orz

screenshot_20161024-131344

そこで調べてみると、Android6.0ではmicroSDカードなどの外部メモリを内部ストレジのように使えるAdoptable Storage機能が追加されたものの、microSDスロットがない機種では標準でAdoptable Storageがオフになっているとのこと。ターミナルからsuに入り、「sm set-force-adoptable true」と設定するとこの機能が使えるようになる(つまり要root)。実行には数秒かかる。PCと接続してコマンドラインから「adb shell su」「adb shell sm set-force-adoptable true」と実行しても同じ。設定は一度すれば、それ以後リブートしても外部メモリにアクセスできる。

以上で普通にESエクスプローラや他のアプリからもUSM-CA1にアクセスできるようになった。試しにバックアップやファイルのコピーを試してみると、体感速度は内部ストレジ並みのような気がする。難点を言えば、USB-OTGのような分かりやすい識別名ではなく、16進数8桁の英数字の羅列(多分シリアルナンバー)の識別名がついてしまうくらいで、実用上問題はない。

Type-Aの普通のUSBメモリとして使えるので、他のマイクロUSB端子の端末では手持ちのOTGケーブルを使って接続できるので、端末間のデータの移動も楽にできる。Type-Cの端末に挿しても、デザイン上かなりスッキリしているので、勝手満足のいく製品だった。


Filed under: 未分類

MarshmallowでNougatの絵文字を使ってみる

$
0
0

Nougat(7.0)でAndroidの絵文字が変更になりましたが、Nougat(7.1)で更に絵文字が追加されました。詳しくはこちら(英語)を御覧ください。

Nexus 5とNexus 7 (2013)は、さすがNexusシリーズだけあって、既に安定したNougatのカスタムROMが出てきたので、アップデートしてみました。はっきり言ってMarshmallowよりいいです。Nexus 7 (2013)の引っかかる感じが改善されました。

Mi4cもいくつかNougatのROMを試してみましたが、ユーザーが少ない分、まだ日常で使えるレベルの安定感はありませんでした。そこでCM13から安定していると評判のIvan氏(Xiaomiの中の人)が作ったAOSPのMarshmallowに変えてみました。モバイルネットワークの優先ネットワークタイプを選ぶところのバグと、デバッグモードの挙動がイレギュラーなところを除けば、安定していて、バッテリーの持ちもいいです。

MarshmallowのままではNougatの絵文字が表示されないので、ググってみました。やはり同じことを考える人いるようで、既にパッチが作られていました。ただこのパッチがいつ作られたのか(7.0なのか7.1なのか)分からないので、中身のフォントを最新のPIXELのROMのものと入れ替えました。

このパッチをAndroid 4.2以上の端末にインストールすると、システムがNougatではなくてもNougatの絵文字が表示されるようになります。

このままでは新しい絵文字を「表示」はできますが、「入力」はできません。ここで先程のPIXELのROMからGoogleJapaneseInput.apk(Google日本語入力)とLatinIMEGooglePrebuilt.apk(Googleキーボード)と取り出し、Marshmallowのものと置き換えます。

これで新しい絵文字を入力できるようになりました。長押しでiOSのように人の肌の色も選べるようになります。

screenshot_20161119-140005

ただ、何故かこの方法でもいくつかの追加された新しい絵文字が入力できません(例:女性警官75572c048e07a7b4071e5a18d684fcff)。これはNougatのカスタムROMを入れたNexus 5でもNexus 7 (2013)でも同じです。PIXELだけに何らかのアップデートが来たんでしょうね…

最後に、現状Nougat 7.1はPIXELのみに配信されているので、PIXELのGoogleJapaneseInput.apkとLatinIMEGooglePrebuilt.apkはARM64のシステム向けです。

Open GappsのAndroid 7.1向けのGappsをNexus 5とNexus 7に入れると、同様にGoogle日本語入力でもGoogleキーボードでも新しい絵文字が入力できるので、Marshmallow以前のARM(32版, armeabi-v7a)のシステムの場合は、こちらからGoogleJapaneseInput.apkとLatinIMEGooglePrebuilt.apkを抜き取って使えると思います。ただ、クリーンインストールしないと新しい絵文字が使えるようにならないかもしれません。


Filed under: Android, mi4c

Amazon Fire (5th gen)が爆速になった…

$
0
0

emmcに問題があり、システムをアップデートすると激遅になるNexus 7 (2012)をどうにか使えるようにならないかと試行錯誤をしているうちに、ext4のジャーナルを無効化すると動作が速くなるという情報をゲット。

「もしかして、Amazon Fireも速くなるかも…」と思い、ダメモトで試してみた。(もちろん要rootです。)


tune2fs -O ^has_journal /dev/block/mmcblk0p11
tune2fs -O ^has_journal /dev/block/mmcblk0p12
tune2fs -O ^has_journal /dev/block/mmcblk0p13

ちなみに、mmcblk0p11は/system、mmcblk0p12は/cache、mmcblk0p13は/data(内部ストレージ)。たった、この三行でAmazon Fire (5th gen)が爆速に変身!

f2fsは「ちょっと速い?」くらいで、そこまで効果は感じませんでした。ext4&ジャーナル無効の方が効果が実感できます。


Filed under: Amazon Fire (5th gen)

華為技術デビュー!

$
0
0

プレセント用に何か手頃で良い7インチ程度のタブレットはないかと探していると、Huawei MediaPad T2 7.0 Proが目に留まった。Xiaomiは少々期待はずれだったので、世界2位のスマホメーカー(2016年)に躍り出たとは言え、中国メーカーには不安がある。スペックとレビューをチェックしてみると、まぁ所謂ミドルレンジのタブレットという感じ。ただ同社のP9が良さげなので、P10の購入を視野に入れ、T2 7.0を買ってみることにした。一台はプレセント用、もう一台は自分用(笑)

MediaPad T2 7.0 Proより数カ月後にMediaPad T2 8 Proが発売され、画面が7→8インチ、バッテリーも増量、通信バンドも増え、Android 5.1→6.0と進化した。ここで敢えてT2 7.0を選んだ理由は、両者のプロセッサ/メモリサイズ/ストレージ/解像度は同じ(つまり性能はほぼ同程度)、T2 8から指紋認証がなくなった、T2 8の方が90g重いからだ。
XiaomiのMIUI同様、Huaweiのスマホ/タブレットはEmotion UIでラップされているので、あまりOSのバージョンを気にしてもしょうがない。

まずはbootloaderをアンロックするために必要なコードをHuaweiのサイトで取得。何故か推奨されているChromeでは上手く行かず、IEで無事アンロック用のコードを取得完了。T2 7.0にはtwrp-ple-701l-a504v2.imgというTWRPのイメージが使える。ここでまだTWRPはフラッシュしない。次に、Huaweiのファームウェアは入手しにくいので、「fastboot boot twrp-ple-701l-a504v2.img」でTWRPを起動して、システムに手を付ける前にTWRPでオリジナルのリカバリーも含め全パーティションをバックアップしておく。これをしておかないと、何かあっても元に戻せない。バックアップ後、TWRPをフラッシュし、オリジナルのリカバリーと置き換え、SuperSUもインストールする。

/system内のGappsを最新のものにし、要らないプレインストールされたアプリを削除し、hostsを入れ替え、SuperSUをインストールしてカスタマイズを終了し、システムを起動。

削除したアプリは

/system/app/HwFileManager ファイルマネージャー
/system/app/HwMediaCenter 音楽プレーヤー
/system/app/Magnifier 拡大鏡
/system/app/OpenWnn
/system/delapp/HwMirror 鏡アプリ
/system/delapp/iWnnIME
/system/delapp/iWnnIME_Kbd_Old
/system/priv-app/HwNotePad メモ帳
/system/priv-app/HwPhoneService (何だったけ… でも削除しても大丈夫な、要らないやつ)
/system/priv-app/HwVPlayer ビデオプレーヤー

他にも不要なGappsや、WPSオフィスなど/cust/hw/jp/delappや/cust/hw/jp/appにあるアプリも削除。比較的不要なアプリは少ないので簡単だった。 /cust/hw/jp/media/bootanimation.zipにあるHuaweiのロゴが表示されるアニメーションもNexus 7 (2013)のものに変更。

Emotion UIは非常によくできていると思う。ただし癖も多い。通知領域のような見た目以外で言えば、

良い点

  • バッテリーのパーセント表示ができる
  • 通信事業者の表示・非表示が選べる
  • スリープ時にアプリがkillされないようにできる(保護されたアプリ)
  • デフォルトアプリの設定/変更が簡単
  • アプリごとの通信を細かく管理できる
  • SDカードをデータのデフォルトの保存先として設定できる(※Android 6.0のように内部ストレージとして認識させているわけではないけど、アプリやアプリの設定データは内部ストレージ、それ以外のデータはSDカードと分けることができる。)
  • コピペの選択が素のアンドロイドよりちょっと使いやすい

悪い点

  • 保護されたアプリを設定しておかないと、常駐アプリもスリープ時に勝手にkillされてしまう。

Emotion UIの注意する点としては、電話・連絡先・メッセージ(SMS)が独立したアプリではなく依存性があるので、例えば連絡先やメッセンジャーをGoogle謹製のものなどに置き換えてしまうと3つとも動かなくなる。Googleの連絡先やメッセンジャーを使いたい場合はオリジナルを残してインストールする必要がある。

UI以外のT2 7.0自体で気になった点は、

  • 画面の輝度が基本的に暗い
  • 環境光で輝度が自動で変わる設定をしていても、反応が遅く、輝度の変化も滑らかではない
  • スピーカーがモノラルで音がそれほど良くない
  • 指紋センサーは微妙な位置にあるので、ロック解除以外の機能を設定しておくと誤操作してしまうことがある
  • /custというパーティションにプレインストール・アプリやbootanimationなどが保存されており、素のAndroidと挙動が違う
  • スピードはNexus 7 (2013)と同じかちょっと速いくらい?

総合的な評価としては、手頃なミドルレンジのタブレットを探している人にはお勧め。この値段でLTEモデルが手に入るのは驚き。オクタコアなのでアプリ自体はキビキビ動くものの、RAMが2GBと少ないためHuaweiはバックグランドで走るアプリをバンバン切るチューンをしているようで、アプリの起動や切り替えで数秒待たされる感があり、アプリを行ったり来たりする人はイラつくかも知れない。

アマゾンで購入したが、初めからファームウェアは最新のものになっていて、他の方のレビューにあるようなタッチパネルの問題はなかったので、最新のロットでこの問題は解決されているみたい。
Nexus 7 (2013)の買い替えの候補にはなるけれど、メリットは指紋センサー/SDカード(128MBのSDXCは認識した)/重量/カメラ、デメリットはモノラル・スピーカー/5GHzのWiFi未対応/OSが古い…といったところかな。


Filed under: MediaPad T2 7.0 Pro

Amazon Fire (5th gen)は意外に使える子だった

$
0
0

Huawei MediaPad T2 7.0 Proを買って一番気になったのがメモリ(RAM)のチューンだった。Huaweiはバックグラウンドのアプリをなるべく切るようにシステムを作っていると思う。そうするとどうしても頻繁に使うアプリの起動や切り替えが遅くなる。そこでEX Kernel Managerを使って、Androidの「low memory killer」の設定を変えてみたら、予想通り動作は改善した。ついでにAmazon Fire (5th gen)の設定も変えてみたら、Fireの方が効果は絶大だった。


もともとFireのハードウェアはそこまで酷い代物ではないし、ストレージの速度も悪くないのに、動作は遅い。ROMを素のAndroidに近いggow作のAOSPのROMにしてももっさりしている。

Androidのlow memory killerの設定は /sys/module/lowmemorykiller/parameters/minfree で確認できる。Fireの場合は、「18432,23040,27648,32256,36864,46080」となっている。Foreground app, Visible app, Secondary server, Hidden app, Content provider, Empty appの順で、ブロックサイズが書かれている。1ブロックは大抵4096byteなので、それぞれ 72MB, 90MB, 108MB, 126MB, 144MB, 180MBというAndroid標準の設定。RAMが2GB程度あればこれでいいかもしれないが、Fireの1GBのRAMでは頻繁にバックグラウンドでアプリがkillされ再起動を繰り返し、全体的に動作が遅くなってしまうという仕掛け。そこでバックグラウンドでアプリをkillするしきい値を変えてあげることで、バックグラウンドでの無駄なkill→再起動のサイクルを減らすことができ、ハードウェアがもつ本来のスピードを得られる。今回はEX Kernel Managerを使い、以下のような設定に変更してみた。

あら不思議。今までもっさりしていたFireが使えるタブレットに変身。常々Androidのメモリ管理はシステムに任せておいた方がいいと思っていたので、ここまで改善するとは思っていなかった。

因みにCPUの設定は以下の通りです。

CPU governorをPerformanceにして、下限の周波数を1040MHzに設定してあるものの、バッテリーが激減するようなことはないので、この変更はお勧め。


Filed under: Amazon Fire (5th gen)

Huawei MediaPad T2 7.0 Proは微妙…

$
0
0

Huawei MediaPad T2 7.0 Proを数日弄った感想です。ハードウェアはミドルレンジでそこそこ使えるスペックですが、それはスペック上の話。他の方のレビューを読むとべた褒めの記事が多いので驚きますが、「コスパ前提」なんだと思います。電子書籍を読むとか動画を見るとか使用目的がはっきりしている人にはいいかもしれませんが、タブレットで色々したい人には向いていないというか、オールラウンドな端末ではないと思います。

Emotion UIは見た目をiOS風にして、Androidに付加機能(例えばバッテリー残量をパーセント表示させたり)を追加して使い勝手を向上させてはいるのですが、如何せん巨大です。素のAndroid 5.1でシステムのメモリ消費量は大体300MB程度ですが、T2 7は600MB程度使っています。またGoogleアカウントなどを設定せず、アプリもインストールせず、WiFiとAPNだけ設定した状態で既にプリインストールアプリが300MB消費しています。

結局ユーザーが使える最大のメモリは何もアプリをインストールしていない状態で800MB強。一見十分に見えますが、メモリの空きがあってもHuaweiのメモリー管理の設定は積極的にバックグラウンドのアプリをkillします。何も設定しなければ画面ロック時に何でも(常駐アプリでも)killします。Facebook(メッセンジャーと合わせると100MB以上のRAMを消費)やChromeなどRAMをたくさん使うアプリを使うと、バックグラウンドのアプリがkill→再起動を繰り返し、結果としてスペックの割にもっさりしてしまいます。4年も前に発売された同じ2GBのRAMを搭載するNexus 7 (2013)の方がサクサク動いて見えるのはこのような理由です。

普通ならAOSPやCMのカスタムROMを入れてしまえばいいのですが、Huawei向けのカスタムROMはかなり少なめで、T2 7のものはまだありません。次から次へと新しい製品をリリースするので、カスタムROMが出て来るのは期待薄だと思っています。そこである程度ストレスなく使えるように設定を変えていきます。

まずは使わないプレインストール・アプリを削除します。以下のアプリを削除しました。

  • Books
  • CloudPrint
  • Drive
  • GoogleTTS
  • Hangouts
  • HwFileManager
  • HwMediaCenter
  • HwMirror
  • HwNotePad
  • HwPhoneService
  • HwVPlayer
  • iWnnIME
  • iWnnIME_Kbd_Old
  • LatinIME
  • Magnifier
  • Newsstand
  • OpenWnn
  • PlusOne
  • PrintSpooler
  • talkback
  • Videos

これらのアプリは、/system/app、/system/dellapp、/system/priv-appなど複数のディレクトリに理由もなく分散してインストールされています。何故か英語キーボードも日本語キーボードも二つずつ入っているのでGoogleの英語キーボードを一つ残して消しました。Live wallpaper関連のアプリも使わなければ削除してかまわないと思います(使っている人いるの??)。不要なアプリを削除するのはRAMの空き容量を増やすための鉄則です。

次にEX Kernel Manager(要root)を使って、CPU・GPU・Low memory killerの設定を変えていきます。

CPU:Governorはlittle/Big clusterともにPerfomanceに、Bigの最小周波数を998Mhzに固定(それでももっさりが気になるなら、littleの最小周波数を高めに固定してもいいかも?)

Screenshot_2017-03-22-06-27-31.png

GPU:GovernorをPerfomanceに変更

Screenshot_2017-03-22-06-27-51.png

Low memory killer:各しきい値は以下のように変更(しきい値はもう少しアグレッシブでもいいかもしれない…)

Screenshot_2017-03-22-06-28-15.png

これだけでT2 7のもっさり感がかなり改善しました。逆に言えば、こういうことをrootを取って調整しないと結構もっさりしているタブレットです。「あれ?2016年に発売の割にちょっと遅いかも… スクロールは引っかかるし、アプリの起動や切り替えももたつく。やはり安いタブレットはこんなレベルか…」と思うユーザーがほとんどでしょうが、実は実力はあるんだけど、Huaweiのシステムが重すぎて付いて行けないというのが事実です。3GBのRAMが搭載されてたら、もう少しキビキビしていたと思います。

GovernorをPerformanceにしたらバッテリーが速くなくなるんじゃないの?と心配する人もいるでしょうが、劇的に短くなるわけではありません。

それよりもバックグラウンドでアプリがkill→再起動を繰り返すとこれによりバッテリーが消耗します。Androidのメモリ管理を理解していない素人アドバイスを鵜呑みにして、タスクキラーを使って強制的にアプリを止めている人がいますが、百害あって一理なし、逆効果です。上記のLow memory killerのしきい値を変える方法は、「RAMの空きがこれくらいになったら、システムは使っていないアプリをkillしてね」というルールを変更するだけで、アプリの切り替えはシステムに任せます。高過ぎるしきい値を下げて、タスクがkillされる頻度を下げているだけなので、余程極端な値にしなければ悪さをすることはありませんし、バッテリーの持ちと使用感は改善するはずです。

rootを取るのは敷居が高い… rootを取らずに何か改善できないか… という方は、設定→省電力→電源プランを「パフォーマンス」にすることをお勧めします。恐らくGovernorをPerformanceにするだけだとは思いますが、しないよりはマシだと思います。数パーセント消費電力が増えるだけです(うちの環境では5%前後)。


Filed under: MediaPad T2 7.0 Pro

LineageOS?

$
0
0

最近カスタムROMを弄ってなかったので、ちょっと浦島太郎でした。

https://en.m.wikipedia.org/wiki/LineageOS?wprov=sfla1

Wikipediaによれば、「CyanogenModの創始者Steve KondikがCyanogenModの商業利用をしようと起業したものの、資金が集められず、2016にKondikは自ら退社もしくはリストラの一環で解雇され、CEOの交代、オフィスの閉鎖、プロジェクトの終了が行われた。

コード自体はオープンソースであり人気もあったため、速やかにLineageOSの名のもとでフォークされ、コミュニティが開発を再開した。」とのこと。

資金が集められなかったというのは信じられないなぁ… 何かトラブルがあったんだろうなぁ… まぁ、LineageOSは単にCyanogenModの後継ROMですね。


Filed under: 未分類

Xiaomiは本当にウザい!もう絶対買わない!!

$
0
0

Mi4c向けの公式な(開発者向け)Nougat ROMがリリースされ、カスタムROMもそれに対応するようになったので、システムをアップデートすることにしました。

Nougat ROMのリリースにともない、Xiaomiはbootloaderも新しくし、最新版のカスタムROMはNougat向けbootloaderでなければ、動かないものもあります。ということで、bootloaderなどファームウェアを最新版にしたところ、bootloaderが再度ロックされてしまいました。

「まぁ以前ちゃんとXiaomiのサイトでbootloaderアンロックの許可が取れてるからかんたん簡単!」などと思っていたら、大間違い。「アンロックの許可は期限が切れているので、また申請してください〜 数日かかります〜 10日過ぎてもSMSが来なければ、サポートフォーラムに書き込みしてください〜」とか言われてしまいました。

Huaweiもウェブ上でbootloaderのアンロックを申請しなければいけませんが、すぐにアンロック用のコードが送られてきますし、コードがハードウエアと紐付けされています。ファームウェアのアップデートでbootloaderが再度ロックされてしまうことなどありえません。

一日かけてアンロックされたbootloaderで最新のROMを焼き、普通に使えるようになりましたが、こんな面倒くさいスマホは懲り懲りです。(まだbootloaderはロックされたままです。抜け道があってよかった!)

絶対にXiaomiは人に勧めません。未だに日本語のリソースをシステムに入れさえしていないので、日本で売る気もないし、サポートの遅さもかなりの殿様商売だなぁ…と思いました。


Filed under: mi4c

Facebook Messenger Lite

$
0
0

FacebookがAndroid向けにMessenger Liteを日本でも公開した。機能はフルバージョンから通話と変な丸いフローティング・アイコンを取った感じ。何かものを書いているときにアイコンが現れると、日本語の変換が中断されてしまっていたので、逆にこれは便利。


予想通り、フルバージョンをLiteに置き換えたところRAMの容量が増え、タブレットの動作が全体的に改善した。


通信環境がどうのこうのより、RAMの空きが少ない端末にはお勧め。


Filed under: Android

GboardとGoogle日本語とMediaPad T2 7.0と

$
0
0

Huawei MediaPad T2 7.0にGboardとGoogle日本語入力を入れていましたが、キーボードを切り替えようとすると数秒掛かっていました。日本語と英語を使うので、キーボードの切り替えに数秒待たされるのはかなりストレスでした。

MediaPad T2 7.0はRAMが少ないし、Google日本語入力だけでも英語はタイプできるので、Gboardをアンインストールしてみたものの、Google日本語入力で英語をタイプするのは結構面倒でした(スペースを自動で入れてくれない、スワイプで入力できない)。

そこで軽めの英語のキーボードを探してみたものの、ピンとくるものがなく、ダメ元でGboardより若干サイズが小さなARM64向けのAOSPキーボードを入れてみたところ、Google日本語入力との切り替えで待たされる時間が大幅に減少。とは言え、はじめの切り替えで4〜5秒掛かっていたのが2秒弱になったというレベルで、待たされることには変わりはないのですが、まだ我慢できる範囲のラグです。

RAMの空きのせいなのか、内部ストレージが遅いのか… Huaweiは癖があり過ぎです。


Filed under: MediaPad T2 7.0 Pro

MediaPad T2 7.0を快適に使うためのコツ

$
0
0

HuaweiのRAMの管理は独特で、RAMが3GB以上搭載されていればそれ程気にする必要はないのですが、MediaPad T2 7.0のようにRAMが2GB以下の場合、快適に使うためには幾つかコツがあります。

一番気にしなければいけないのは、RAM食いのアプリを使わないことです。例えば、FacebookやFacebookメッセンジャーはRAMをたくさん使います。RAMの空き容量が少なくなるとMediaPad T2 7.0は一気にもたつきます。FacebookメッセンジャーではなくFacebookメッセンジャーLite(公式軽量版)を使うことでRAMを節約できます。英語キーボードもGboard(削除するか無効にする)ではなくAOSPキーボードに切り替えると軽くなります。(詳しくは前回の記事に)

次に気を付けなければいけないのは、システムアプリです。rootを取ってプレインストールされた不要なアプリを削除するのは定石ですが、MediaPad T2 7.0の場合もう少し工夫が必要です。例えばChromeの場合、システム領域にあると設定の「保護されたアプリ」に出てきません。そこで/system/appから削除し、Playストアから再度インストールすると「保護されたアプリ」に現れます。デフォルトでは保護される設定になっているので、保護を外します。これで画面がオフになるとChromeはRAMから開放されるので、Chromeを使っていない時のRAMの空きが増えます。タブレットではあまり使わないマップも同じようにしてもいいかもしれません。

軽いAOSPやLineageのようなOSが出てこないので、色々工夫しなければいけませんが、段々そこそこ快適に使えるようになってきました。Nexus 7 (2013)の方がもたつきは少ないですが、処理速度やグラフィックスはMediaPad T2 7.0の方が速いと思います。Nexus 7を久しぶりに持つと「うわっ、重い…」と思ってしまいます。MediaPad T2 7.0は扱いにくい端末ですが、この軽さは神だと思います(笑)


Filed under: MediaPad T2 7.0 Pro

MediaPad T2 7.0を半年使った感想

$
0
0

MediaPad T2 7.0に全くアップデートがやってくる気配はないですが、最近Androidのアップデートはどうでもよくなってきました。アプリが安定して動けばそれでいいように思えます。

先日128GBのMicroSDが壊れてしまったので、これを機会にMediaPad T2 7.0の設定を見直してみました。まずはファイルシステムが怪しいので、TWRPで/systemや/dataのファイルシステムをフォーマットし直し、念のためrepairも行いました。MediaPad T2 7.0を工場出荷時に戻せるstock ROMはないので、以前取ったバックアップを使い、/systemを復元。

再起動してみると「システムを更新中です」みたいな時計のようなパーセント表示が一瞬しか現れない。あれ?以前はここで1分くらい待たされたんだけど… WiFiとGoogleアカウントを設定すると、SuperSUがバイナリのアップデートを通知してきました。いつものごとく何も考えずアップデートして、再起動。今度は時計のようなパーセント表示がちんたらちんたら進む以前の状態に。起動を遅くしている犯人はSuperSUのバイナリのアップデートだったということで、再度バックアップから/systemを復元しなおし。アップデートの通知は設定で非表示に。ちなみに使用しているのはSuperSU-v2.79-201612051815.zipです。

次にHuawei MediaPad T2 7.0 Pro Part13スレで有用な情報を見つけました。build.propのro.huawei.v8_aggressive_gc=trueをfalseに変えるというもの。誰も反応していないところを見ると、意味が分かっていなんでしょうね… 他の記事でも書きましたが、Huaweiのメモリー管理はよくありません。例えば、Facebookでリンクをタップしてリンク先を読んで戻るボタンで戻ってくると、Facebookがページの読み込みを初めから行い元の位置には戻れないことが多いと思います。このtrueをfalseに変えることで、不要なデータの再読み込みを抑えられます。この変更はrootを取っているならしておくべきでしょう。

これらに合わせて以前の記事にも書いたようにEX Kernel ManagerなどでCPU Governor、CPU周波数のMax/Mix、Low memory killerを設定すれば、MediaPad T2 7.0は結構きびきび動くようになります。指紋センサーの反応も機敏です。この値段で「ハードウェア」はよくできていると思います。Huaweiのソフトウェアがそれを台無しにしているなぁ…と思います。

最後に半年使った感想は、bootloaderをアンロックしてrootを取って、自分でメモリーやCPUの設定を変えられる人には「コスパ的に買い」、買ってそのまま快適に使いたいと思う人はもう少しお金を出してスペックのいいタブレットを買った方がいいと思います。これを買ったら「やっぱり安かろう、悪かろうかぁ… アプリの切り替えももたつくし、スクロールも引っかかる…」という印象で終わるのではないでしょうか?


Filed under: MediaPad T2 7.0 Pro

何故かちゃんと動いてくれないEX Kernel Manager…

$
0
0

MediaPad T2 7.0はRAMが2GBあってもHuaweiのRAM設定がよくなく、Amazon Fire (5th gen) は元々RAMが1GBしかないので、どちらももっさり感が否めない。今まであまり頭を使いたくなかったのでEX Kernel ManagerでCPUやRAMの設定をしていたものの、何故かいつの間にかにCPUの最低動作周波数やGovernor、Low Memory Killerの設定がデフォルトに戻っていて、気づかずにいると「最近またもっさりしてきたなぁ…」と思うことが多い。

ということで、EX Kernel Managerには頼らず、Taskerを使って、ブート時に各設定をシェルで実行することにした。念のため、一時間ごとに同じスクリプトを実行するようにして、いつの間にかに設定がデフォルトに戻らないようにしてみた。今のところいい感じでサクサクに動いている。

スクリプトの内容はこんな感じ:

● Rootになる
● ZRAMを無効にする
● /data/local/swapfileのスワップファイルをオンにする(前もってスワップファイルを作っておく)
● swappinessを10に設定する

● 以下の権限を644に変更
/sys/module/lowmemorykiller/parameters/minfree
/sys/devices/system/cpu/cpu(番号)/cpufreq/scaling_governor
/sys/devices/system/cpu/cpu(番号)/cpufreq/scaling_min_freq

● minfreeの設定を6400,8960,14080,17920,25600,30720に変更
● GovernorをPerformanceに変更
● 各コアの最低動作周波数を設定


# Huawei PLE-701L用のスクリプト(Use Rootにチェック)
su
swapoff /dev/zram0
swapon /data/local/swapfile
sysctl -w vm.swappiness=10

chmod 644 /sys/module/lowmemorykiller/parameters/minfree
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq

echo “6400,8960,14080,17920,25600,30720” > /sys/module/lowmemorykiller/parameters/minfree

echo “performance” > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor

echo “1459200” > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo “1459200” > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo “1459200” > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
echo “1459200” > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
echo “1113600” > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq
echo “1113600” > /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq
echo “1113600” > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq
echo “1113600” > /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq


#Kindle Fire用のスクリプト(Use Rootにチェック)
su
swapoff /dev/zram0
swapon /data/local/swapfile
sysctl -w vm.swappiness=10

chmod 644 /sys/module/lowmemorykiller/parameters/minfree
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq

echo “6400,8960,14080,17920,25600,30720” > /sys/module/lowmemorykiller/parameters/minfree

echo “performance” > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor

echo “1300000” > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo “1300000” > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo “1300000” > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
echo “1300000” > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq


#スワップファイルの作り方(256MB)
su
dd if=/dev/zero of=/data/local/swapfile bs=$((1024 * 1024)) count=256
chmod 644 /data/local/swapfile
mkswap /data/local/swapfile
swapon /data/local/swapfile

どうやったらMediaPad T2 7.0 Proを使い物にできるのか【最終版その1】

$
0
0

基本的にMediaPad T2 7.0 Proのハードウェアはそれほど悪くない。ただ、RAMが2GBもあるのに嫌気が差すほどもっらりしている。理由は、

  1. Emotion UIが大きすぎる→RAMの空きが少なくなる
  2. デフォルトのLow Memory Killの設定が最適ではない→アプリがすぐに自動的にメモリから開放されるので、アプリの起動・切り替えが遅くなる
  3. CPUコアの最低周波数の設定が低い→動作周波数が高負荷時でもすぐに低い周波数に戻ろうとして全体的に動作が遅くなる

1.はカスタムROMがないのでどうしようもない。2.、3.は普通EX Kernel Managerを使えば改善できるはずなんだけど、動作が安定しているように見えない。Taskerを使ってスクリプトでLow Memory KillやCPUコアの最低周波数の設定を変えても、設定が反映されているように見えない。

ということで、抜本的に見直してみることにした。

前提:bootloaderがアンロックしてある、TWRPのリカバリが入っている

※以下に書いてあることは、TWRP上で/systemをマウントし、adb shellでシェルに入りrootで作業しているので、基本的にSUは要らない。

まずはRAMの空きを増やすために、プリインストールされた不要なアプリを削除する。ここに、何が削除できるか以前まとめてある。

次に最新版のOpen GAPPSのNano版をTWRPからインストールし、Googleご謹製アプリをほとんど削除する。RAMを大量に消費し、非常に重たい割りにあまり使わないGoogle Search(/system/priv-app/Velvet)もインストールされてしまうので、必ず削除する。使いたい人は後からPlayストアで入れればいい。

ここで注意しなければならないのが、MediaPad T2 7.0 Proにおいて、システムアプリかユーザーアプリかの違い。MediaPadはユーザーアプリを設定の「保護されたアプリ」でチェックしておかないと、バックグラウンドになるとバンバンRAMから開放されてしまうが、システムアプリは始めから保護されている。Google SearchのようなRAM喰いアプリは保護しない方が賢明。/systemパーティションはかなり空き容量が増えるので、必要なGoogleご謹製アプリは後でPlayストアからインストールし、(TWRP上で/systemをマウントし、adb shellでシェルに入り)/data/appから/system/appに移すことでユーザーアプリからシステムアプリにすることができる。ユーザーアプリ化したGoogleご謹製アプリは以下の通り。

com.android.chrome
com.google.android.apps.docs
com.google.android.apps.maps
com.google.android.apps.photos
com.google.android.apps.translate
com.google.android.calculator
com.google.android.calendar
com.google.android.gm
com.google.android.inputmethod.latin
com.google.android.instantapps.supervisor
com.google.android.keep
com.google.android.tts
com.google.android.webview
com.google.android.youtube

Googleご謹製アプリと重複しないようにHuaweiご謹製のアルバム、計算機、カレンダー、Latinキーボードなども削除しておく。Gboard(com.google.android.inputmethod.latin)の他言語機能の改善で、Google日本語入力はほぼ不要になったので、RAMを喰うキーボードは複数インストールせず、Gboard一本に集約することをおすすめする。

以上で、システムをスリム化してRAMの空きをできる限り増やすことができる。次回はメモリ周りの改善を行う。

どうやったらMediaPad T2 7.0 Proを使い物にできるのか【最終版その2】

$
0
0

前回はシステムをスリム化して、RAMの空きを増やした。今回はCPU・メモリ周りの設定を改善する。本来はEX Kernel Managerなどの設定アプリでできるはずだが、汎用に作られているので動作が安定しない。CPUやメモリ周りや設定はRAMディスクに書き込まれており、起動時にそれが呼び出される。EX Kernel ManagerなどのCPU調整アプリはこれらの設定ファイルをroot権限で書き換えているだけ。

起動時に設定ファイルをシェルスクリプトで書き換えられれば、EX Kernel ManagerやTaskerなどを使う必要は全くない。ただ、メーカー製のstock ROMはinit.dなどが使えるようにはなっていないが、MediaPad T2 7.0 Proには起動ごに走る/system/etc/init.qcom.post_boot.shというスクリプトが存在する。このファイルの末尾にユーザースクリプトを走らせるコードを足せば、ほぼinit.dと同じことができる。今回末尾に追加したコードは、

/system/bin/sh /system/etc/userinit.sh


/system/etc/userinit.shに好きなコードを書いておけば、起動時に実行される。/data/local/userinit.shにしなかった理由は、本体を初期化するとスクリプトも消えてしまうから。注意しなければならないのは、

-rw-r--r-- root root 68950 2018-06-12 19:55 init.qcom.post_boot.sh
-rwxr-xr-x root root 3709 2018-06-12 21:52 userinit.sh

二つのファイルの権限が違うとこ。次にuserinit.shの中身を見ていく。

#!/system/bin/sh

su
#スワップファイルの設定
swapoff /dev/zram0
dd if=/dev/zero of=/cache/swapfile bs=$((1024 * 1024)) count=200
chmod 644 /cache/swapfile
mkswap /cache/swapfile
swapon /cache/swapfile
sysctl -w vm.swappiness=10

#60秒間待つ
sleep 60

#minfree、scaling_governorとscaling_min_freqの所有権・権限を設定
chown root:root /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq

chmod 644 /sys/module/lowmemorykiller/parameters/minfree
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq

#Low Memory Killの設定を変更
echo “6400,8960,14080,17920,25600,30720” > /sys/module/lowmemorykiller/parameters/minfree

#CPUガバナーをperformanceに変更
echo “performance” > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor
echo “performance” > /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor

#LITTLEコアの最低周波数を設定
echo “960000” > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo “960000” > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo “960000” > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
echo “960000” > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
#bigコアの最低周波数を設定
echo “1113600” > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq
echo “1113600” > /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq
echo “1113600” > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq
echo “1113600” > /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq

MediaPad T2 7.0 Proの/cacheは252.0MB程度あり、ほとんど使われないのでここに200MBのスワップファイルを作り、有効化する。スワップファイルを使うのでzRAMを無効化し、swappinessは10に設定してある。

Low Memory Killの設定を変更することで、アプリがRAMから頻繁に開放されるのを防ぎ、アプリの起動・切り替えを高速化する。MediaPad T2 7.0 ProのCPUの動作周波数は以下の通り。

CPU 0-3 (LITTLE)
200000
345600
400000
533333
800000
960000
1113600
1344000
1459200
1497600

CPU 4-7 (big)
200000
249600
400000
400000
499200
800000
998400
1113600
1209600

デフォルトで最低動作周波数はどちらとも200000に設定してある。この値を大きな値に書き換えると、全体的に動作が高速化する。ただ、無意味に大きな値にすると若干バッテリーの消耗が増えるので、むやみに大きな値にせず、自分がストレスを感じないレベルまで上げればいい。今回は、LITTLEコアを960000、bigコアを1113600に設定してみた。

「sleep 60」とウェイトを入れておかないと、設定の書き換えに失敗することがある。ウェイトを入れるよりも正しく書き換えられるまでループにするのも一つの手だと思うが、今回は面倒だし、スクリプトを簡潔にしたかったので、そこまではしなかった。60~120秒の間にしておけば、問題はないと思う。

EX Kernel ManagerやTaskerでは設定の変更が安定して行われていなかったため、ここまで動作が改善されなかったが、これだけのことでMediaPad T2 7.0 Proは生まれ変わったようにサクサクになった。同様のことはAmazon Fire (5th gen)でも可能で、こちらも同様にサクサクになった。

恐らく、今後両機の高速化に関する記事を書くことはないと思う。

Viewing all 248 articles
Browse latest View live