1

ユーザーの位置を追跡するAndroidアプリを開発しています。問題は、requestLocationUpdates() が呼び出されましたが、LocationListener への応答がないことです。

ps requestLocationUpdates() が呼び出された後、GPS インジケータが上部のステータス バーに表示されます。

ps android 4.0以前なら問題ありません。Galaxy nexus を 4.1 にアップデートした後、この問題が発生しました。これはOSの問題に関連していますか?

誰でもこれを考えていますか?どうもありがとう!

マニフェスト:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

ロケーションマネージャー:

LocationManager lm = (LocationManager) getActivity().getSystemService(Context.LOCATION_SERVICE);

ロケーションリスナー:

private final LocationListener locationListener = new LocationListener() {

    @Override
    public void onLocationChanged(Location location) {
        System.out.println("onLocationChanged");
    }

    @Override
    public void onProviderDisabled(String provider) {
        System.out.println("onProviderDisabled");
    }

    @Override
    public void onProviderEnabled(String provider) {
        System.out.println("onProviderEnabled");
    }

    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {
        System.out.println("onStatusChanged");
    }
};

開始方法:

Criteria c = new Criteria();
c.setAccuracy(Criteria.ACCURACY_FINE);

final String PROVIDER = lm.getBestProvider(c, true);
lm.requestLocationUpdates(PROVIDER, 600000, 0, locationListener);
4

0 に答える 0