0

我正在使用代码来打开/关闭自动 GPS,此代码在 Karbonn 手机上运行良好,但在三星 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 方法,三星设备不会进行任何更改。turnGPSOn 方法效果很好。但是turnGPSOn方法有个问题,用这个方法得到修复后GPS接收机不进入睡眠模式,手机屏幕一直闪烁。当我不使用此方法时,在修复 GPS 接收器后进入睡眠模式直到下一个频率值。任何想法?请帮忙。

4

0 回答 0