ロケーション API に問題があります。一部のデバイスでは、携帯電話を再起動すると問題が解決しますが、どのプロバイダーでも場所が表示されないことがあります。一方、場所を取得していない場合、Google マップは問題なく即座にマップに配置します。
コードは次のとおりです。
Intent intent = new Intent(Constants.LOCATION_BROADCAST);
pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, intent, 0);
Criteria criteria = new Criteria();
criteria.setPowerRequirement(Criteria.POWER_HIGH);
if(android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.FROYO){
criteria.setAccuracy(Criteria.ACCURACY_LOW);
locationManager.requestSingleUpdate(locationManager.getBestProvider(criteria, true), pendingIntent);
}
else {
criteria.setAccuracy(Criteria.ACCURACY_COARSE);
locationManager.requestLocationUpdates(locationManager.getBestProvider(criteria, true), 0, 0, pendingIntent);
}
何かご意見は?