気まぐれSE日記

地方でエンジニアしてます

VX580でwifi位置情報がNGの件(続報)

http://bthehb.wordpress.com/2012/02/19/allwinner-essential-v0-8pre/

↑に含まれる、framework-res.apk を 入れ替えて再起動してddmsデバッガで見たところ

次のように今まで出てこなかったログが出てきたので


D/NetworkLocationService(314): onCreate
D/NetworkLocationService(314): onBind com.google.android.location.NetworkLocationProvider
D/NetworkLocationService(314): onBind com.google.android.location.GeocodeProvider
E/NetworkLocationProvider(314): releaseCheckLocationLock: wake lock has already been released

NetworkLocationProviderがまともに動くようになったポイ。(他製品のframework-resなのでまだ不具合が出る可能性もありますが...)


追記:
その後、wifiの位置情報を取得するアプリを試したところ無事に動作し位置取得も正常動作しました!

が、不具合としてGoogleのアカウント情報がリセットされてしまいました。他にも設定画面などで問題が発生するかもしれません。

framework-resのどの辺をいじれば位置情報を有効にできるんだろうか?どこかわかればVX580Wのframework-resから自前で治せそうなんだけどなぁ...?


追記2:
wifi位置情報が取得できない件をまとめると、

  1. NetworkLocation.apk の最新版を入れる
  2. framework-res.apk を上記のURLでDLできるファイルから抜き取って/system/frameworkにアップして再起動する

とOK。場合によってはユーザデータの初期化も必要。


追記3:
移動中には位置情報が更新されない模様です。再起動すると位置情報は更新されますが、期待した動作ではないですね。GoogleMapでは更新されて居るのでGoogleMapの位置情報とアプリの位置情報取得処理は別々に独立しているようです。