0

我们都知道 Android 上的 GPS 问题。

我们如何为 NETWORK_PROVIDER 创建相同的 turnOnGps 函数,我想打开 Both。

private void turnGPSOn(){   

String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);   
if(!provider.contains("gps")){      
    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);  
}  }    
4

2 回答 2

1

只需添加 CommonsWare 提到的内容,该方法仅适用于 2.2 及以下的 Android 版本。

但是,您可以使用下面的简单代码:

startActivity(new Intent("android.settings.LOCATION_SOURCE_SETTINGS"));

这会将用户直接带到他们可以启用/禁用基于位置的选项的屏幕。

请参阅此处(文档),了解更多设置

希望这可以帮助

于 2013-05-30T22:55:47.547 回答
0

幸运的是,您上面引用的脚本小子技术不适用于现代版本的 Android。出于明显的隐私原因,您不能自己启用或禁用任何位置提供程序。请允许用户通过操作系统提供的机制(设置、电源控制应用程序小部件等)启用或禁用位置提供程序。

于 2013-05-30T22:47:05.737 回答