有没有办法以编程方式在非root用户的android上开启飞行模式?


10

我曾经使用Tasker任务在需要时自动打开和关闭飞行模式。现在看来,这需要root用户。但是,扎根我的手机会禁止我使用Android Pay或任何其他SafetyNet锁定的应用程序。(SafetyNet的最新更新甚至可以检测到新的无系统根目录,甚至可以由解锁的引导加载程序触发,即使在无根电话上也是如此。)

我有什么方法可以使用Tasker或其他一些自动化工具可靠地打开和关闭飞行模式,而又不会失去对Android Pay的访问权限?

(奖金问题:为什么Google会认为开启飞行模式如此危险的功能,以至于它完全禁止在无根设备上使用?)


1
您是否尝试过自动插件?有些人已经成功了吗?我认为它可以下拉通知托盘并播放预先录制的手势。
Firelord

@Firelord AFAIR在某些JellyBean版本(4.2 IIRC)中将切换飞行模式移出用户空间,因此我怀疑任何自动化应用程序都可以在没有root的情况下执行此操作。但是我可能是错的。
伊齐

1
@Izzy是,但“自动”提供了一个选项来记录用户的活动并将其作为自动化进行播放。也就是说,您可以记录下拉通知托盘,进入快速磁贴和切换飞行模式磁贴。该自动化可以录制和播放。
Firelord

1
@Firelord我错过了那部分,是的,它确实是“宏录制和重放”,确实可以工作。这使愚蠢的“安全保护”显得更加愚蠢(我从来不明白为什么这个决定没有留给用户)。
伊齐

在这个问题下应该有@beeshyams发布MacroDroid答案:)
iBug

Answers:


2

正如我之前所承诺的,使用Tasker和AutoInput插件发布替代选项,这里是过程:

  • 首先创建和配置适合您的需求(即何时触发飞行模式,例如在特定时间等)

任务

  • 创建一个新任务“ New Task +”

  • 您可以将此任务命名为Airplane_mode或其他任何名称。

  • 点击“ +”添加新的动作

A1:设置➡飞行模式设置

我们需要添加大约1或2秒钟的任务等待动作(以允许屏幕及时加载)。

A2:任务➡等待[秒数:2]

A3:插件➡自动输入➡操作[转到Android设置中的“ 飞行模式设置 ”屏幕。

  • 在通知栏上向下滑动,然后触摸自动输入通知中的“ 添加 ”按钮。

  • 触摸“飞行模式”设置

  • 在通知中触摸“接受”,然后返回Tasker。在此处选择“飞行模式” 文本,然后接受(点击以选中)这些设置。

A4:(返回原始屏幕)添加“ AutoInput Global Actions” Tasker操作。插件➡自动输入➡全局操作[选择“返回”选项]。接受设置(点按勾号)

在此处输入图片说明

  • 点按即可退出此任务

  • 保存此任务并退出

Nb:这需要屏幕作为先前的解决方法解锁

编辑

  • 如果在Tasker中禁用了自动输入,则AutoInput具有一个内置选项来解锁屏幕。只需将此操作添加到任务顶部即可:

A1: Go to new action >> Plugin >> AutoInput >> Unlock screen (注意:某些屏幕锁定选项仍不受支持,例如指纹,但值得一试)

致谢


1

您可以使用Tasker +自动输入组合或另一个名为Airplane Mode PRO(1.78美元)的第三方应用程序来实现。交替获取计划飞机模式

飞行模式专业版可让您为Android的飞行模式设置各种自动触发器。该应用程序是唯一一款也可以在高于Jellybean 4.2的Android版本上运行的应用程序,例如Jellybean 4.3,Lollipop 5.0和Marshmallow 6.0,并且仍然不需要植根设备。

特征:

•支持自动化和第三方启动器

•用于切换,启用和禁用的单独快捷方式

•通过通知切换

•在运行特定应用程序时启用飞行模式

•在特定时间启用/禁用

•断开/连接充电器时切换

•达到特定电池百分比时启用(可以设置任何百分比)

•达到特定电池温度时启用

•通过主屏幕快捷方式切换(仅单击一次)

在此处输入图片说明 在此处输入图片说明

注意:解决方法要求屏幕处于打开状态

在此处输入图片说明

免责声明!Iam绝不隶属于该应用程序,但是遇到了它,因此我认为这是解决该问题的一个不错的解决方法。


1
我希望现在有点忙,可以用Tasker + AutoInput发布一种较少争议的方法:(
xavier_fakerat

当我尝试打开Airplane Mode PRO的链接时,看到“很抱歉,在此服务器上找不到所请求的URL。”。这是否意味着该应用已从Google Play中删除?
ks1322

@ ks1322检查新链接,或尝试其他应用
xavier_fakerat

0

如果您喜欢简单的Shell脚本

编辑[忽略这个错误的答案,这是为了获得root权限]

只需再次阅读问题的非根部分。

在“开发人员选项”中打开“显示碰触”,并写下确切的位置

  • 向下滑动之前的状态栏

  • 打开后的状态栏(滑动至点)

  • 飞行模式切换

  • 数据切换(可选)

一旦有了所有坐标,就可以构建脚本(.sh)

我用过的继承人

echo 'Swipe Down Notification'
input swipe 400 40 450 580 1000
echo 'Swipe Down Quick Actions'
input swipe 400 40 450 580 1000
echo 'Toggle Airplane Mode'
input tap 280 573
echo 'Wait for toggle'
sleep 10.0
echo 'Repeat for new IP Address'
input swipe 400 40 450 580 1000
input swipe 400 40 450 580 1000
input tap 280 573
echo 'FINISHED IP REFRESH'
sleep 2.0

滑动开始为X400,Y40结束为X450,Y580持续时间为1s。

使用obove .sh命令(输入),您可以执行许多用户操作,包括输入文本,使用am start等打开应用程序。

其他的是

END A CALL
 input keyevent 6

 PRESS HOME
 input keyevent 3

 OPEN CAMERA
 input keyevent 27

 PRESS MENU
 input keyevent 82

 ENTER NUMBER (1)
 input keyevent 8

 ENTER SOME TEXT Hi i am some... SEPERATOR  %s
 input text 'Hi%si%sam%ssome%stext%sto%sbe%swritten%sby%suser'

 SWIPE FORMAT IS, START POINT - END POINT - msDURATION
  input swipe 500 800 500 800 5000

为什么以编程方式控制安全功能如此危险? 想象一下,在飞往夏威夷的飞机上,突然您的应用程序决定在飞行途中关闭飞行模式,这会干扰飞机的无线电信号,最终您到达了墨西哥?

哈哈,它还会刷新您与无线电塔之间的连接,从中接收信号,它会更改IP地址并为您提供新的网络ID,这也可能会被滥用,因此最好禁止用户进行程序访问。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.