誰かが助けてくれたら最高です。そこにあるすべての例のように、Android アプリでポジショニングをセットアップし、GPS プロバイダーとネットワーク プロバイダーの両方にロケーション リスナーを登録しようとしています。
ただし、私のネットワーク プロバイダーは、ネットワーク関連の応答をまったく返しません。つまり、WiFi が有効になっている場合にのみ、応答が返されます。そうでない場合は、常にタイムアウトします。
私のコード:
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 1, locationListener);
....
public void onLocationChanged(Location location) {
Log.d(TAG, "onLocationChanged;provider;" + location.getProvider() + ",lon;" + location.getLongitude() + ";lat;" + location.getLatitude() + ";accuracy;" + location.getAccuracy());
resultHandler.handleLocationResult(location, false);
lm.removeUpdates(this);
そのため、Wifi がオンになっている場合は応答が非常に速くなりますが、GSM のみがオンになっている場合は何も起こらず、Android の logcat にも何も表示されません。
requestlocationupdates のパラメーターも変更しようとしましたが、違いはありません。
何か他にできることがあれば、ポインタをいただければ幸いです。
編集:もちろん、ネットワークポジショニングを他の方法で試しました。キャリアポジショニング(SMSを使用)を介して動作し、Googleマップで同じセットアップを試みました。マップは位置を取得できると思います。もちろん、私はレセプションを持っています:)