Xperiaが2.3になる(かもしれない)祭りな最中ですが、敢えてカスタムネタですw
今回は日々出てくるカスタムROMの中から効果ありそうなbuild.propだけを抜き出したものをPCを用いて簡単に元のbuild.propに追記するフリーソフトを考察します。
build.propとはXperiaにとって非常に重要なファイルです。カスタムromでdocomo絵文字を表示させたり、マーケットでちゃんとdocomo端末だということを宣言してSPモードメールを表示させたり、動作をつかさどる設定値が書かれています。なので通常(非root)では触ることができないsystemディレクトリにあります。
root化したXperiaでは
このbuild.propを変更することで動作が軽快になったりするため、カスタムrom作者を中心に様々な設定値が書き込まれていくわけで、その設定だけを自分のXperiaに追記していってる人も多いことでしょう。
そこで今回考察するBuildPropMergeというソフトウェアを用いてこれら作業を簡便化するのをやってみたいと思います。
◆準備するもの(前提事項)◆
- WindowsPC
- AndroidSDK環境 (画面キャプチャする用の環境)
- .NET Framework 3.5
- ソフトウェアBuildPropMerge (*3/27 リンク先を最新版v1.2.1.5に修正しました)
- zip解凍ソフト
- root化したXperia
RootExplore (?)
ん?AndroidSDKだけでいいということはroot取らなくてもできるのか??と思って一旦初期化してやってみましたが、コマンドベースでsuしてるため、処理上はうまくいっているように見えても実は書き変わってないことが分かりました。なので、最低限rootは取っていないと使えないです。
だったらxRecovery環境をFlashToolで導入し、五郎さんのカスタムrom使ったほうがよいかもです。
◆使い方◆
[事前準備]
- zipファイルをPC上で解凍。ファイルは3つ。
- mergeprop.txtに入れ込むコマンド(文字列)のみ記述。(元々書かれているのはカスタムromでdocomo化宣言するために必要なもの。(とreadmeに書いてあります)
- build.propで効果のありそうな項目、、というのはどれがそうなのかは難しい。。なので、とりあえずほぼ2.1標準状態なものをここにアップしてみます。
##### Merging of the /util/data/semc_kernel_time_stamp.prop file #####
ro.build.date=Mon Nov 29 16:43:00 2010
ro.build.date.utc=1291016580
ro.build.user=SEMCUser
ro.build.host=SEMCHost##### Final patch of properties #####
ro.build.product=SO-01B
ro.build.description=SO-01B-user 2.1-update1 2.0.1.B.0.19 158 test-keysro.product.name=SO-01B_1233-7397
ro.product.device=SO-01B
ro.product.board=es209ra
ro.build.version.incremental=ExBC
ro.build.tags=release-keys
ro.build.fingerprint=docomo/SO-01B_1233-7397/SO-01B/es209ra:2.1-update1/2.0.1.B.0.19/ExBC:user/release-keys######################## Customized property values #########################
ro.semc.version.cust=1233-7397
ro.semc.version.cust_revision=R11B
ro.semc.enable.fast_dormancy=true
ro.semc.emergency.masterreset=true
ro.semc.spn.currentname=NTT DoCoMo
ro.semc.spn.newname=NTT DOCOMO
ro.semc.push_email=1
ro.semc.supplementary_service=1
ro.com.google.clientidbase=android-sonyericsson
ro.com.google.clientidbase.yt=android-sonyericsson
ro.com.google.clientidbase.am=android-docomo-jp
ro.com.google.clientidbase.vs=android-sonyericsson
ro.com.google.clientidbase.gmm=android-sonyericsson
ro.config.libemoji=libemoji_docomo.so
ro.camera.sound.forced=1
ro.product.brand=docomo
ro.semc.ecclist.num=6
ro.semc.ecclist.type.0=firebrigade ambulance
ro.semc.ecclist.number.0=119
ro.semc.ecclist.plmn.0=440 FFF
ro.semc.ecclist.non_ecc.0=false
ro.semc.ecclist.type.1=firebrigade ambulance
ro.semc.ecclist.number.1=119
ro.semc.ecclist.plmn.1=441 FFF
ro.semc.ecclist.non_ecc.1=false
ro.semc.ecclist.type.2=marineguard
ro.semc.ecclist.number.2=118
ro.semc.ecclist.plmn.2=440 FFF
ro.semc.ecclist.non_ecc.2=false
ro.semc.ecclist.type.3=marineguard
ro.semc.ecclist.number.3=118
ro.semc.ecclist.plmn.3=441 FFF
ro.semc.ecclist.non_ecc.3=false
ro.semc.ecclist.type.4=police
ro.semc.ecclist.number.4=110
ro.semc.ecclist.plmn.4=440 FFF
ro.semc.ecclist.non_ecc.4=false
ro.semc.ecclist.type.5=police
ro.semc.ecclist.number.5=110
ro.semc.ecclist.plmn.5=441 FFF
ro.semc.ecclist.non_ecc.5=false
ro.voicemail.dialing-number=1417
#########################################################################ro.config.ringtone=sony_ericsson.ogg
ro.config.notification_sound=notification.ogg
ro.semc.content.number=PE6################# Updating of the SW Version #################
ro.semc.version.fs_revision=2.0.1.B.0.19
ro.build.id=2.0.1.B.0.19
ro.build.display.id=2.0.1.B.0.19##### Values from product package metadata #####
ro.product.model=SO-01B
ro.semc.ms_type_id=AAD-3880074-BV
ro.semc.version.fs=DCM-1-2-5-6
ro.semc.product.name=X10
ro.semc.product.device=X10# begin build properties
# autogenerated by buildinfo.sh
#ro.build.id=2.0.1.B.0.19
#ro.build.display.id=2.0.1.B.0.19
#ro.build.version.incremental=158
ro.build.version.sdk=7
ro.build.version.codename=REL
ro.build.version.release=2.1-update1
#ro.build.date=Tue Dec 14 10:58:26 JST 2010
#ro.build.date.utc=1292291906
ro.build.type=user
#ro.build.user=hudsonslave
#ro.build.host=jptolx2667
#ro.build.tags=test-keys
#ro.product.model=rachael
#ro.product.brand=Sony-Ericsson
#ro.product.name=rachael
#ro.product.device=rachael
#ro.product.board=es209ra
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.manufacturer=Sony Ericsson
ro.product.locale.language=en
ro.product.locale.region=GB
ro.wifi.channels=
ro.board.platform=qsd8k
# ro.build.product is obsolete; use ro.product.device
#ro.build.product=rachael
# Do not try to parse ro.build.description or .fingerprint
#ro.build.description=rachael-user 2.1-update1 2.0.1.B.0.19 158 test-keys
#ro.build.fingerprint=Sony-Ericsson/rachael/rachael/es209ra:2.1-update1/2.0.1.B.0.19/158:user/test-keys
# end build properties
rild.libpath=/system/lib/libril-qc-1.so
rild.libargs=-d /dev/smd0
ro.semc.def_screen_orientation=sensor
ro.semc.timescape_keys=X10_key
ro.semc.timescape_model=1_5_handed
ro.semc.sound_effects_enabled=false
persist.rild.nitz_plmn=
persist.rild.nitz_long_ons_0=
persist.rild.nitz_long_ons_1=
persist.rild.nitz_long_ons_2=
persist.rild.nitz_long_ons_3=
persist.rild.nitz_short_ons_0=
persist.rild.nitz_short_ons_1=
persist.rild.nitz_short_ons_2=
persist.rild.nitz_short_ons_3=
persist.ro.ril.sms_sync_sending=0
ro.sf.lcd_density=240
#DEVICE_PROVISIONED=1
#ro.qualcomm.proprietary_obex=1
wifi.interface=wlan0
debug.sf.hw=1
dalvik.vm.heapsize=24m
kernel.log=default
ro.camera.hd_shrink_vf_enabled=1
ro.telephony.call_ring.multiple=false
keyguard.no_require_sim=true#
# ADDITIONAL_BUILD_PROPERTIES
#
#ro.config.notification_sound=OnTheHunt.ogg
ro.config.alarm_alert=Alarm_Classic.ogg
ro.setupwizard.mode=DISABLED
ro.com.google.gmsversion=2.1_r12
#ro.com.google.clientidbase=android-sonyericsson
#ro.com.google.clientidbase=android-sonyericsson
persist.cust.tel.eons=1
net.bt.name=Android
ro.config.sync=yes
dalvik.vm.stack-trace-file=/data/anr/traces.txt
ro.drm.active.num=4
ro.drm.active.0=semc,1
ro.drm.active.1=cmla,0
ro.drm.active.2=viaccess,0
ro.drm.active.3=marlin,1これに対し、五郎さんのCustomJitには以下のコマンドが追記されていました。
# CUSTOM PROPERTIES
windowsmgr.max_events_per_sec=125
wifi.supplicant_scan_interval=180
mot.proximity.delay=150
dalvik.vm.startheapsize=28m
dalvik.vm.heapsize=28m
ro.ril.hsxpa=2
ro.ril.gprsclass=12
ro.ril.hsdpa.category=8
ro.ril.hsupa.category=6
ro.ril.disable.power.collapse=1
ro.telephony.default_network=2スリープ時のwi-fi接続時間の設定、heapsize(メモリの領域の使う量を定義)など端末に最適化された設定がされているようです。さすが!!
なので、#CUSTOM PROPERTIES以下部分これだけ抜き出し、メモ帳に貼り付け、UTF8形式のmergeprop.txtとして保存。
- Xperiaの設定
「田」>設定>アプリケーション>開発>USBデバックにチェックを入れる
[実作業]
- XperiaをPCとUSBケーブルで接続(本体と接続ではなく充電するモード)
- 自分だけかもしれませんが、
RootExploreでsystemを書き換えできるよう事前に「Mount R/W」にしておかないと書き換えできておらず。。 - PCでBuildPropMerge.exeを実行
この画面が出た後に(画面開いたまま)もう一度BuildPropMerge.exeを実行。Xperiaの画面にSuperuserリクエストが出るので許可。
PCに戻るとコマンドプロンプトの画面が以下のように「書き換え完了」となる。Enterで画面を閉じる。(最初のも「x」で閉じていい)
もともとあったコマンドは「変更」となり、新規追加されたものは「追加」となります。
なので、arcなbuild.propのfingerprintとSDKのところだけを書き換えるときとかにも非常に有用なソフトです。
※3/26現在、これやるとSPモードメールがpushされなくなります。もしやってしまった方はsdk=8に戻してください。ro.build.fingerprint=docomo/SO-01C_1246-7916/SO-01C:2.3.2/3.0.D.2.79/sMfP:user/release-keysro.build.version.sdk=9 - 作業完了したらXperiaを再起動。
今回は有用な設定値は見つけられませんでしたが、こんな感じでbuild.propの追記・編集ができるので良かったら使ってみてください。
とりあえずカスタム2.2な人がfingerprintを書き換えるとAndroidマーケットでPOBox4のキセカエキーボードや連絡先引用2.3やウェブ引用2.3などのPOBox関連プラグインが落とせるようになったりするので。