Xperiaが2.3になる(かもしれない)祭りな最中ですが、敢えてカスタムネタですw
今回は日々出てくるカスタムROMの中から効果ありそうなbuild.propだけを抜き出したものをPCを用いて簡単に元のbuild.propに追記するフリーソフトを考察します。
root化したXperiaではRootExploreなどを使ってsystemの中を編集することができますが、いちいちファイルを取り出す→編集→元に戻して→パーミッションを変更する、なんて手順を踏まなきゃいけませんし、一つ失敗すると起動しなくなる、というとても大事で重要なファイルです。
この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関連プラグインが落とせるようになったりするので。
[…] build.propに以下のコマンドを追記する。追記はBuildPropMerge(考察済み)が便利。<目的>・SO-01Bであることを宣言・docomo絵文字を使う・POBoxを使うため […]
@はまんどろいど さん>
ん?文鎮作っちゃいましたか?自分は大丈夫でした。何が違ったんでしょ。。
起動はたしかに時間ちょっとだけかかりますけど、そう長くはかからないと思いますよ。
@星の都 さん>
作者様に何の断りもなく書いてしまいましてスミマセンでした。
差分適用できるのは非常にメリットあると思いまして。
新バージョンも使わせていただきます。今後とも宜しくお願い致します。m(__)m
@キム さん>
差分だけ入れ込めるのは非常に便利だと思いまして考察してみました。良かったら使ってみてくださいね!
いつも考察ありがとうございます。何も考えずに。上記の例をコピペしてマージしてみました。見事に文鎮化しておりますw。ひょっとしたら立ち上がるかもと放置プレイ中です。ちなみに使ったのはBuildPropMerge_v1.0.0.22です。
今確認したらuildPropMerge_v1.1.0.0があるみたいです。
紹介ありがとうございます。不意に検索してここにたどり着きました。
BuildPropMergeの作者でございます。
まさかここまで広まるとは思っておらず、びっくりしています。
初回バージョンには多数のバグがあるので、最新版をお使いくださいヾ(゚ω゚)ノ゛
重ね重ね、お礼を申し上げます。
またまた便利そうなツールですね。情報ありがとうございます。
FlashTool(0.2.8)のbuild.prop Editorでも、直接build.propの編集が出来るみたいですね。
だんだんと便利になって嬉しい限りです。
@キウイマン さん>
いやいや、晒すも何も今はCM6.1.3のにdocomo絵文字対応のみですよ。arcのfingerprint(とSDK)を変更するとSP Pushが効かなくなるのでarc対応はしてないですよ。
そうなんですかー、了解しました。とりあえずarc偽装はやめときます。
スミマセン、出先のためコメント欄に書きます。
sdkを9にするとSPモードメールが受信できなくなります。arc偽装は今はやめておいたほうがいいかもです。_(._.)_
ショーグン殿
いつもいろいろ勉強させてもらってます。以前考察したベンチマークがよいとされたbuild.propを今も使っております。
ショーグン殿はarcなbuild.propを今は使われているのでしょうか?
サクサクぬるぬるで電池持ちのいい(そんなのしらねーなんて言わずに)ショーグン殿のおすすめを教えてください!