2

我正在尝试在 Android 上打开飞机模式,但收到以下消息:

java.lang.SecurityException: Permission Denial: 不允许发送广播 android.intent.action.AIRPLANE_MODE

从我的角度来看(和一些研究):

(1) 我正在使用所有必要的权限来执行此操作:

<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />

(2) 代码没有错:

        Settings.Global.putInt(
                context.getContentResolver(),
                Settings.Global.AIRPLANE_MODE_ON, 1);
        Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
        intent.putExtra("state", true);
        context.sendBroadcast(intent);

我知道该应用程序需要安装为系统应用程序,因此我将其安装在 /system/app/my-app/ 下(我也尝试过 /system/priv-app/my-app/ )并添加了所有对文件夹和 apk 的权限。

我尝试的最后一件事是在 AndroidManifest.xml 中包含android:sharedUserId="android.uid.system",但是这样做应用程序会消失。

在所有这些尝试之后,我在这里错过了什么?

ps:设备已root。

提前致谢

4

1 回答 1

-1

根据Android 开发文档,从 API 级别 17 开始,飞行模式似乎已成为常量值。

为什么要开启飞行模式?您是否正在尝试完成某些功能?

我会在评论中发布这个,但我没有足够的代表...... tfw

于 2016-08-30T20:40:08.080 回答