如何以编程方式访问设备设置?

auy*_*auy 14 android

有没有办法以编程方式访问设备设置?

例如:设置>开发人员选项> USB调试> True/False

提前致谢.

编辑:USB调试只是一个例子.我可以访问设备中"设置"中存在的所有设置.

nan*_*esh 12

Settings.Secure.putInt(getActivity().getContentResolver(),Settings.Secure.ADB_EN​​ABLED,1);

但是你需要root访问才能执行此操作.只有系统应用才有权更改安全设置

编辑:尝试此操作以显示所有ANR

Settings.Secure.putInt(ContentResolver的,Settings.Secure.ANR_SHOW_BACKGROUND,0);

并且不要保持活动

ActivityManagerNative.getDefault().setAlwaysFinish(真)

但是ActivityManagerNative隐藏在标准的api集中.你需要做反射或使用这个方法来获取android.jar.我想再次需要root访问权限


ρяσ*_*я K 5

尝试如下:

 int adb = Settings.Secure.getInt(context.getContentResolver(),
  Settings.Secure.ADB_ENABLED, 0);
 // toggle the USB debugging setting
 adb = adb == 0 ? 1 : 0;
 Settings.Secure.putInt(context.getContentResolver(), 
Settings.Secure.ADB_ENABLED, adb);
Run Code Online (Sandbox Code Playgroud)

在 AndroidManifest.xml 中:

<uses-permission android:name="android.permission.WRITE_SETTINGS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"></uses-permission>
Run Code Online (Sandbox Code Playgroud)

最后看看这个例子

http://code.google.com/p/secure-settings-widget/source/browse/src/com/lieryan/adbwidget/ADBAppWidgetProvider.java?r=eb23b2d6989ccade05f095806db5888f1ba62737