【问题标题】:Turn Airplane mode via commandLine without root通过没有root的命令行打开飞行模式
【发布时间】:2017-08-01 10:31:16
【问题描述】:

我想在我的未植根设备上启用和禁用飞行模式。

要启用飞行模式,我使用以下命令:

adb shell 设置将全局飞机模式设置为 1 adb shell am broadcast -a android.intent.action.AIRPLANE_MODE

要禁用飞行模式,我使用以下命令:

adb shell 设置将全局飞机模式设置为 0 adb shell am broadcast -a android.intent.action.AIRPLANE_MODE

此命令适用于 android =7.0 我收到以下错误:

ZX1G523ZW6:启用飞行模式...
广播:Intent { act=android.intent.action.AIRPLANE_MODE (has extras) }

java.lang.SecurityException: Permission Denial: not allowed to send broadcast android.intent.action.AIRPLANE_MODE from pid=8824, uid=2000
    at android.os.Parcel.readException(Parcel.java:1684)
    at android.os.Parcel.readException(Parcel.java:1637)
    at android.app.ActivityManagerProxy.broadcastIntent(ActivityManagerNative.java:3537)
    at com.android.commands.am.Am.sendBroadcast(Am.java:772)
    at com.android.commands.am.Am.onRun(Am.java:404)
    at com.android.internal.os.BaseCommand.run(BaseCommand.java:51)
    at com.android.commands.am.Am.main(Am.java:121)
    at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
    at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:262)

对于没有根设备的 Android 版本 >=7.0 是否有解决方案? 先感谢您。

【问题讨论】:

    标签: android linux shell


    【解决方案1】:

    如您所见hereandroid.intent.action.AIRPLANE_MODE 是受保护的广播。

    在 Android 7.0 之前,有一个关于受保护广播的安全问题,这使得普通用户能够调用那些内部应用程序代码或使用 adb 接口。

    从 Android 7.0 开始,此安全漏洞已得到修复,现在如果您想继续使用相同的行为,您需要有根设备或 Android

    【讨论】:

    • 谢谢 ....是否有任何解决方法或其他方法可以在不使用 root 设备的情况下通过 android >=7.0 的命令行打开/关闭飞行模式?
    • 我认为不存在,this 评论似乎证实了这件事。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-08
    • 1970-01-01
    • 2012-01-21
    • 2013-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多