coviaのFleaPhone CP-D02にシステムアップデート 0502G032_20130428が出ていました。
「システム更新」アプリで確認すると、以下の様な表示になりました。
ダウンロードが終わると、以下の様な画面で適用確認されます。
CWM Recovery状態でも、適用できそうな雰囲気ではあったのですが、駄目でした。
駄目な理由はCWM Recoveryでのデバイス認識符が適切でないことで、update.zip内の機種チェックが引っかかっていたためです。
そのうちCWM Recovery側を修正しますが、とりあえず、アップデートを適用する方法はあります。
/sdcard/googleota/update.zip を取り出して、update-scriptを編集するのです。
assert(getprop("ro.product.device") == "htt77_ics2" ||
getprop("ro.build.product") == "htt77_ics2");
show_progress(0.500000, 0);
format("ext4", "EMMC", "/system", "0");
mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
package_extract_dir("recovery", "/system");
<略>
というところの、最初の2行を下記の様にコメントにしてから、ファイルをupdate.zipに戻します。
#assert(getprop("ro.product.device") == "htt77_ics2" ||
# getprop("ro.build.product") == "htt77_ics2");
show_progress(0.500000, 0);
format("ext4", "EMMC", "/system", "0");
mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
package_extract_dir("recovery", "/system");
<略>
戻したファイルをCWM Recoveryから指定すれば、アップデートができます。
再起動をすると、更新が始まって・・・
そして、システム更新アプリでチェックすると・・・
ほらね。
なお、アップデート後は、CWM Recoveryが消えます。
また、/system/xbin/suも消えます。
でも、他のアプリやデータはそのまま残っていました。
アップデート後のbuild.propは以下の通りです。
# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=IMM76D
ro.build.display.id=ALPS.ICS2.MP.V1.19
ro.build.version.incremental=eng.wangzijian.1367136287
ro.custom.build.version=1367136287
ro.build.version.sdk=15
ro.build.version.codename=REL
ro.build.version.release=4.0
ro.build.date=Sun Apr 28 16:06:09 CST 2013
ro.build.date.utc=1367136369
ro.build.type=user
ro.build.user=wangzijian
ro.build.host=wangzijian-desktop
ro.build.tags=test-keys
ro.product.model=covia_CP-D02
ro.product.brand=VOTO
ro.product.name=htt77_ics2
ro.product.device=htt77_ics2
ro.product.chivinproduct=covia_CP-D02
ro.product.chivinversion=0502G032_MH011S-T8100PM15E
ro.product.customversion=0502G032_20130428
ro.product.board=htt77_ics2
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.manufacturer=alps
ro.product.locale.language=ja
ro.product.locale.region=JP
ro.wifi.channels=
ro.board.platform=
# ro.build.product is obsolete; use ro.product.device
ro.build.product=htt77_ics2
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=htt77_ics2-user 4.0 IMM76D eng.wangzijian.1367136287 test-keys
ro.build.fingerprint=HTT:4.0/IMM76D/1367136287:user/test-keys
ro.build.flavor=
ro.build.characteristics=default
# end build properties
# begin mediatek build properties
ro.mediatek.version.release=ALPS.ICS2.MP.V1.19
ro.mediatek.platform=MT6577
ro.mediatek.chip_ver=S01
ro.mediatek.version.branch=ALPS.ICS2.MP
# end mediatek build properties
#
# system.prop for generic sdk
#
rild.libpath=/system/lib/mtk-ril.so
rild.libargs=-d /dev/ttyC0
# MTK, Infinity, 20090720 {
wifi.interface=wlan0
# MTK, Infinity, 20090720 }
# MTK, mtk03034, 20101210 {
ro.mediatek.wlan.wsc=1
# MTK, mtk03034 20101210}
# MTK, mtk03034, 20110318 {
ro.mediatek.wlan.p2p=1
# MTK, mtk03034 20110318}
# MTK, mtk03034, 20101213 {
mediatek.wlan.ctia=0
# MTK, mtk03034 20101213}
# MTK, TeChien {
ro.media.enc.hprof.file.format=3gp
ro.media.enc.hprof.codec.vid=m4v
ro.media.enc.hprof.vid.width=720
ro.media.enc.hprof.vid.height=480
ro.media.enc.hprof.vid.fps=30
ro.media.enc.hprof.vid.bps=3400000
ro.media.enc.hprof.codec.aud=amrnb
ro.media.enc.hprof.aud.bps=12200
ro.media.enc.hprof.aud.ch=1
ro.media.enc.hprof.aud.hz=8000
ro.media.enc.mprof.file.format=3gp
ro.media.enc.mprof.codec.vid=m4v
ro.media.enc.mprof.vid.width=352
ro.media.enc.mprof.vid.height=288
ro.media.enc.mprof.vid.fps=30
ro.media.enc.mprof.vid.bps=990000
ro.media.enc.mprof.codec.aud=amrnb
ro.media.enc.mprof.aud.bps=12200
ro.media.enc.mprof.aud.ch=1
ro.media.enc.mprof.aud.hz=8000
ro.media.enc.lprof.file.format=3gp
ro.media.enc.lprof.codec.vid=h263
ro.media.enc.lprof.vid.width=176
ro.media.enc.lprof.vid.height=144
ro.media.enc.lprof.vid.fps=30
ro.media.enc.lprof.vid.bps=384000
ro.media.enc.lprof.codec.aud=amrnb
ro.media.enc.lprof.aud.bps=12200
ro.media.enc.lprof.aud.ch=1
ro.media.enc.lprof.aud.hz=8000
# MTK, TeChien }
#
wifi.tethering.interface=ap0
#
ro.opengles.version=131072
wifi.direct.interface=p2p0
dalvik.vm.heapgrowthlimit=64m
dalvik.vm.heapsize=128m
# Encrypt phone function
ro.crypto.tmpfs_options=mode=0771,uid=1000,gid=1000
ro.crypto.fs_type=ext4
ro.crypto.fs_real_blkdev=/emmc@usrdata
ro.crypto.fs_mnt_point=/data
ro.crypto.fs_options=noauto_da_alloc
ro.crypto.fs_flags=0x00000406
# USB MTP WHQL
ro.sys.usb.mtp.whql.enable=0
# Power off opt in IPO
sys.ipo.pwrdncap=2
ro.camera.sound.forced=1
ro.sys.usb.storage.type=mtp,mass_storage
#HTT liujihui {
ro.setupwizard.mode=DISABLED
ro.com.google.locationfeatures=1
ro.com.google.networklocation=1
persist.sys.timezone=Asia/Shanghai
#HTT liujihui }
#
# ADDITIONAL_BUILD_PROPERTIES
#
fmradio.driver.chip=1
ril.external.md=1
ro.sf.hwrotation=180
ril.current.share_modem=1
launcherplus.allappsgrid=2d
launcher2.allappsgrid=3d_20
curlockscreen=2
ro.mediatek.gemini_support=false
persist.radio.fd.counter=20
persist.radio.fd.off.counter=20
drm.service.enabled=true
fmradio.driver.enable=0
mediatek.wlan.chip=MT6620
mediatek.wlan.module.postfix=
dalvik.vm.mtk-stack-trace-file=/data/anr/mtk_traces.txt
ro.config.notification_sound=Tinkerbell.ogg
ro.config.alarm_alert=ring4.mp3
ro.config.ringtone=CaribbeanIce.ogg
ro.config.sound_fx_volume=-10
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt