由于sdk版本4.2,似乎不再可能在设备上修改飞机模式,因为谷歌已将此设置移至只读的Settings.Global。
有没有人能够在没有生根的情况下绕过这个?
我的应用程序主要功能是在屏幕关闭时启用飞行模式,自4.2起停止工作。
只想仔细检查我的评估是否正确以及我的应用程序是从Android 4.2及更高版本开始死亡的。
参考文献: http://developer.android.com/reference/android/provider/Settings.Global.html#AIRPLANE_MODE_ON
答案 0 :(得分:6)
只想仔细检查我的评估是否正确,以及我的应用程序是从Android 4.2及以上版本开始的。
是。或者,换句话说,如果有后门方式来修改此设置,它将代表一个安全漏洞,最终将被关闭,就像启用/禁用已存在3年以上的GPS限制一样。 / p>
答案 1 :(得分:4)
我知道你明确要求一个没有root权限的解决方案,但是如果你有一个root设备,至少有(种)官方解决方案将你的应用程序移动到文件夹/system/app
。然后可以写入Settings.Global
:
Settings.Global.putInt(context.getContentResolver(), Global.AIRPLANE_MODE_ON, mode ? 1 : 0);
了解如何toggle airplane mode for 4.2
以及如何将您的应用转移到/system/app
here。我将其用于我的切换小部件迷你状态(source code link)。