Hatena::ブログ(Diary)

linuzau’s diary このページをアンテナに追加 RSSフィード

2009-01-17

HTC Dream(aka T-Mobile G1, Android Dev Phone 1)のcontactsが同期しなくなったので直してみる

ファーム書き換え後のデータが空の状態でgoogleサーバと同期したらサーバ側のデータが消えてしまった。

MyBackupで取ってあったバックアップを戻しても一向にsyncしない。Dreamにはデータがあるのにサーバに転送されない。

いろいろやってもだめだったので、最終的に以下の手順で復旧させた。PC側から操作したが、よく考えるとDream単独でもできる(Terminal Emulatorを入れておこう)。


contactsのsync情報を削除する

以下のSQL文を発行してsync関係のフィールドを全て空にする。

adb shell
$ su
# sqlite3 /data/data/com.android.providers.contacts/databases/contacts.db
sqlite> update people set _sync_account=null, _sync_id=null, _sync_version=null, _sync_local_id=null, _sync_mark=null;
sqlite> .exit
# reboot

これでsyncするようになった。google側にデータを送ろう。

google側に全てのデータが転送されたのを確認したら、念のためexportしてバックアップ(contacts.csv)を作っておく。


googleをベースに再同期

Dream側のcontactsのデータを全て消す。

adb shell
$ su
# rm /data/data/com.android.providers.contacts/databases/*
# reboot

これでsyncすると万全。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証