0

Auto GPS をオン/オフするコードを使用しています。このコードは、Karbonn ハンドセットでは正常に動作しますが、Samsung Galaxy Y では動作しません。

public void turnGPSOn() {
    Intent intent=new Intent("android.location.GPS_ENABLED_CHANGE");
    intent.putExtra("enabled", true);
    sendBroadcast(intent);

    String provider = Settings.Secure.getString(getContentResolver(),
            Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
    if (!provider.contains("gps")) {
        // if gps is disabled
        final Intent poke = new Intent();
        poke.setClassName("com.android.settings",
                "com.android.settings.widget.SettingsAppWidgetProvider");
        poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
        poke.setData(Uri.parse("3"));
        sendBroadcast(poke);

    }
}


public void turnGPSOff() {

    String provider = Settings.Secure.getString(getContentResolver(),
            Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
    if (provider.contains("gps")) {
        // if gps is enabled
        final Intent gps = new Intent();
        gps.setClassName("com.android.settings",
                "com.android.settings.widget.SettingsAppWidgetProvider");
        gps.addCategory(Intent.CATEGORY_ALTERNATIVE);
        gps.setData(Uri.parse("3"));
        sendBroadcast(gps);

    }
}

turnGPSOff メソッドを使用しても、Samsung デバイスは変更を加えません。turnGPSOn メソッドはうまく機能します。しかし、turnGPSOn メソッドには問題があります。修正を取得した後にこのメソッドを使用すると、GPS 受信機がスリープ モードにならず、モバイル画面で常に点滅します。この方法を使用しない場合、修正された GPS 受信機を取得した後、次の周波数値までスリープ モードになります。何か案が?助けてください。

4

0 に答える 0