今日Sony Tablet Pを受け取ってきました。
GPSが衛星を測位できないため現在位置が分からないというあの現象です。
工場では全く正常に測位できると言います。
しかし私は正確な測位を見たことがない。
そこで結局どうなったかというと、
『見込み修理にて、ユニットとアンテナの交換をして戻します』とのこと。
これで直ればよいのですが、ちょっと嫌な予感がしたので
『正常動作の確認を立ち会ってからの引き渡し』となりました。
さて秋葉原の窓口は18:30で閉まります。
仕方ないから仕事を早退し秋葉原へ向かいました。
仕事上の相棒が今日は体調不良で休みだったからできる荒技です。
秋葉原に出向き、担当者と共にGPSテストをしました。
すでにリセットされた状態のTablet Pを持って外に出て待つこと8~10分、何とか現在位置っぽいところを指すことに成功。
担当者が大きな安堵のため息をついたのを聞き逃しませんでした。
さて、これでめでたし、と帰るところですが、まだ私の中の危険信号は消えませんでした。
「すみません、帰る前にここでSIMの設定を済ませていいですか?」
「もちろんです」
ちゃんとことわり、持参したSIMを入れて、APNを設定しました。
ネットにもつながることは確認済み。
ではこの状態でGPSを起動してみます。
すると……どうやっても現在位置が取得できません。
実は先程はソニーのサービスのWifiを使って測位していたので、それ以外の場所ではどうなるかが不安だったのです。
なので、Wifiを切り、3Gのみで測位をしてみようと思ったわけです。
その結果、やはりいつまで経っても測位出来ず「一時的に現在位置が取得できません」のエラーを出して止まってしまいます。
この状況を見てもらい、やはりGPSがおかしいのではないかとのことを伝えます。
すると店に置いてある比較用のTablet Pを持ってきてくれたので、そこから「なぜ私の方では測位出来ないのか?」の検証大会に突入。
測位出来る状況と、出来ない状況を考えてみました。
窓口の人は技術屋さんではないので結局理由がわからずじまい。
私は仕事で培ったデバッグ技術を使って、原因の絞り込みを行いました。
そしてついに、
Sony Tablet PにおけるGPSバグを発見しました。
それは……
GPSは3Gのみでは動かない。
必ずWifiをONにしなければならない。
というもの。
他のAndroidではこんなことありません。
本来WifiのON/OFFと、現在位置測位のための「無線ネットワークを使用」は別のものです。
「無線ネットワークの使用」にチェックを入れておいた場合、WifiがOFFでもGPSを使う時に一時的に無線波を受信しある程度現在位置を絞りこんだら、すぐに通信はやめて次はGPSアンテナにて測位を行うのが普通の挙動です。
しかし、Sony Tablet PではWifiのON/OFFと「GPSを使用する」のチェックが内部的に連動しているらしいのです。
ハッキリ言って、これは重大なバグです。
なぜなら
3G通信を行いつつもWifiのアクセスポイントを探すために電力を消費しまくっているんですから!
これがGPS関係の設定。
普通なら真ん中の「GPS通信を使用」だけがチェックされていれば、MAPで現在位置が出ます。
しかしTablet Pはその上の「無線ネットワークの使用」にもチェックを入れなければ、ハッキリ言って現在位置の近くにも近づけません。
でも他のAndroidも測位を早めるためにここにはチェックを入れるのが普通なので、それは良とします。
本来、3Gで通信しているのだから、
「Wi-fi」をONにする必要はないのです。
しかしTablet Pではここをチェックしないと、GPSアンテナが正常に動作しません。
多分内部的に「GPSの使用」と連動しています。
工場では3GのSIMを入れずに地図を読みこませるため、WifiをONにしてチェックしているようです。
なので、向こうでは正常に動作しているように見えるのです。
私は何度も「Wifiは切って、3Gのみでチェックしているのか?」と聞いたのですがねぇ……
この現実を発見した時はサービス受付窓口の担当者も驚いていました。
「すぐに社の技術のものに連絡します」と約束してくれました。
幸いなことに、これはシステムアップデートで直る問題だと思います。
ソニーさん、一刻も早い修正プログラムをお願いします。
そうでなくても、
Tablet Pのバッテリーは
全然もたないんですから!
★
追加検証しました★