Androidのカスタマイズbuild.propとは

droid-custom



スマホを改造する際にはまずはココ!

アンドロイドスマートフォンを改造して使いたい人はたくさんおられると思います。
(そんな事無い! というツッコミはお受け致しません。)
元々Xperiaのカスタムロムを公開していた備忘録ですので、カスロムを作るうえで基本になるこのbuild.propを無視するわけにはいきません。

build.propはアンドロイドが動作する上での様々な情報が記録されています。
ここに書かれている設定値を変更するだけで機能を拡張したり、動作を快適にすることも夢ではないのです。
ただし! 実行するためにはアンドロイドのOSを所謂root化という作業を行う事が必須です。
Root化を行う事で故障した際のサポートの対象外になることもあり、また設定値を誤ると最悪2度とスマートフォンが起動することはありません。
私も過去何度かXperiaが文鎮になりかけました。
そしてGalaxyに至っては本当に再起不能にした悲しい思い出があります。
しつこいように言いますがroot化は便利さとリスクが存在する行為です。
実効はあくまで自己責任でお願いしますね。

Build.propを勉強する事になったきっかけ

私がbuild.propを調べたきっかけは我が愛機XperiaをAndroid4.1のOSで快適に動作出来るようにするためです。
実は私がスマホを使うようになったのは割と最近です。
世間から大分遅れてスマホを使うようになったのですが、縁があり中古機の初代Xperia SO-01Bに出会う事になりました。(安いものを探し回っただけという説もあります)
本当にいいスマホに出会ったものです。
今でもメイン機ではないものの活用しています。
購入時点でAndroid2.1です。
なんか遅いなと思ってネットを見ていたらAndroid2.3のカスタムロムの情報が山のようにあるではありませんか!
世間から置いていかれていた私は知りませんでしたが、Xperiaにカスタムロムを導入するのが世界的にかなり流行していたようです。
私はthgo2 v18cというロムを導入し、快適に機嫌よく使っていたのですが、ある日幾つかの壁に遭遇することになりました。

Bluetoothのキーボードが使えない!

後で知る事になったのですが、HID対応のキーボードが接続できませんでした。
HIDプロファイルが導入されているスマホであればキーボードを接続して文字を入力することが出来るのですが、Xperia SO-01BはHIDプロファイルが入っておらず当然キーボードを使う事が出来ませんでした。
当時は今より文章を入力することが多かったため、外出先で文字入力をする環境を構築したかったのです。
結局これはhiddというdeamonを導入する事で解決させたのですが、かなり長くなるのでこれはまた次の機会に書きます。

新しいアアプリで動かないものがある!

はい、これが決定的な理由です。
新しく開発されたアプリはAndroid4.0以降対応のものなどが多いのです。
私が使いたかったアプリはまさに4.0以降対応で代えが効きません。
そこで海外で開発されたAndroid4.1のロムを導入したのですが、今度は重すぎて全く実用に使えるレベルではありませんでした。
RAMと呼ばれるAndroidのメモリー領域が足りていないのです。
そこで極限まで軽量化し快適に使える方法はないかと調べた結果の一つがbuild.propの調整でした。

当時は魔法の5行などと呼ばれていました。

昔はbuild.propに5行のコードを書き込むだけで電池もちなどがよくなるということで魔法の5行などと呼ばれていたそうです。
現在はbuild.propも多くの内容が確認されており、5行どころではなく、何10行も存在していますが、特に便利なものをご紹介します。
海外の開発者の方などの情報を中心にピックアップしたものです。

#バッテリー消費を抑える
#pm.sleep_mode=1
pm.sleep_mode=2
ro.ril.disable.power.collapse=0
ro.semc.enable.fast_dormancy=true
———————————-
#. スクロールの反応を良くする(数字で調整)
ro.max.fling_velocity=12000
ro.min.fling_velocity=8000
windowsmgr.max_events_per_sec=150
———————————-
#.タッチ感度向上
debug.performance.tuning=1
video.accelerate.hw=1
———————————-
#使っていないメモリを解放する
persist.sys.purgeable_assets=1
———————————-
ro.media.enc.hprof.vid.bps=8000000
windowsmgr.support_rotation_270=true;

#. 標準時刻を日本へ設定
persist.sys.timezone=Asia/Tokyo

#. 言語設定の標準を日本語へ
ro.product.locale.language=ja
ro.product.locale.region=JP

#. ネットワーク調整(日本用)
ro.telephony.default_network=2

#zram tweak()zramを有効化
persist.service.zram=1
ro.zram.default=26

#スクロールキャッシュ削除
persist.sys.scrollingcache=3
persist.sys.smoothscrollbar=true
dev.pm.gpu_samplingrate=1
debug.mdpcomp.logs=0

#ログキャットを無効化
logcat.live=disable

#エラー報告機能の無効化
profiler.force_disable_err_rpt=1
profiler.force_disable_ulog=1
ro.kernel.android.checkjni=0
ro.kernel.checkjni=0

#データ使用状況送信の無効化
ro.config.nocheckin=1

# Fast Reboot
persist.sys.shutdown.mode=hibernate
ro.config.hw_quickpoweron=true
persist.adb.notify=0

#ソフトウェアレンダリングを有効
ro.nohardwaregfx=true

#ホームランチャーアプリを落ちにくく(タスクキルされにくく)します。
ro.HOME_APP_ADJ=1
ro.HOME_APP_MIN_ADJ=0
ro.HOME_APP_MAX_ADJ=1

#カメラシャッター音(0=無音 1=音あり)
ro.camera.sound.forced=0

#アプリを早く読み込み、メモリの空き容量を多く
dalvik.vm.dexopt-flags=m=v,o=y

#ナビゲーションバー、オンスクリーンボタンの表示非表示(0=表示 1=非表示)
qemu.hw.mainkeys=0

#テザリングメニュー機能の有効化(trueで無効)
ro.tether.denied=false



シェアする

フォローする