ユーザーの現在の場所を必要とするアプリが 1 つあります。アプリケーションでは、2 つのロケーション プロバイダーを登録して位置情報をリッスンし、さらに、最後に確認された位置情報も確認しました。しかし、アプリは常に場所を受け取るわけではありません。今日見つけた驚くべきことは、
GPS がオフになっていました
しかし、ワイヤレスネットワークからの場所はオンでした。
Google マップを開くと、現在地が非常に正確に表示されていることがわかります。しかし、アプリを開いたとき、位置情報を取得できませんでした。
私はこれを見て驚きました。私が行った以外に、Google マップが位置情報を取得するために行っていることがあると思います。
位置情報の登録方法はこちら
locationManager = (LocationManager) this
.getSystemService(Context.LOCATION_SERVICE);
Location location = null;
try {
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER, 10, 100, this);
Location location1 = locationManager
.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
if (location1 != null)
location = location1;
Log.v(TAG, "Network listener Enabled");
} catch (RuntimeException ee) {
// TODO: handle exception
Log.e(TAG, "Network Providers Disabled");
}
try {
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER, 10, 100, this);
Location location1 = locationManager
.getLastKnownLocation(LocationManager.GPS_PROVIDER);
Log.v(TAG, "GPS listener enabled");
if (location1 != null)
location = location1;
} catch (RuntimeException e) {
Log.e(TAG, "GPS not available");
}
他にやらなければならないことがあるかどうかはわかりません。私を助けてください。