我知道.不要这样做.我不在乎.这是一个根应用程序.
该应用程序已/system/app/获得0777许可安装
我以前用过:
ContentResolver cr = context.getContentResolver();
Settings.Secure.setLocationProviderEnabled(cr, LocationManager.GPS_PROVIDER, !isGpsOn);
Run Code Online (Sandbox Code Playgroud)
这是我在4.4上尝试它的方式,因为它被弃用了:
int value;
if (isGpsOn)value = Settings.Secure.LOCATION_MODE_OFF;
else value = Settings.Secure.LOCATION_MODE_HIGH_ACCURACY;
Settings.Secure.putInt(cr, Settings.Secure.LOCATION_MODE, value);
Run Code Online (Sandbox Code Playgroud)
并且它默默地失败了(根据一些用户报告).如何从系统文件夹中的应用程序正确切换GPS与Android 4.4?
不要这样做。:)
检查GPS TOGGLE的代码
适用于已取得 root 权限的 Android 设备的 GPS 切换小部件。即使对于那些 ROM 和内核来说它也能很好地工作,而其他软件却失败了。
使用您的代码,只需检查:希望您在清单中
声明了以下权限:
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
Run Code Online (Sandbox Code Playgroud)
我在 root 后的 LG Optimus、android 4.0/4.1 上使用过这个。据报道,这可能不再有效,但我不确定它是否适用于所有设备和操作系统:
通过标志检查和以下代码将其打开/关闭:
try {
Settings.Secure.putString (context.getContentResolver(),
Settings.Secure.LOCATION_PROVIDERS_ALLOWED, String.format ("%s,%s",
Settings.Secure.getString (context.getContentResolver(),
Settings.Secure.LOCATION_PROVIDERS_ALLOWED), LocationManager.GPS_PROVIDER));
} catch(Exception e) {}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4798 次 |
| 最近记录: |