• [autojs]界面上检测无障碍服务和悬浮窗


    1. "ui";
    2. ui.layout(
    3. <vertical>
    4. <appbar>
    5. <toolbar title="悬浮窗权限无障碍服务"/>
    6. </appbar>
    7. <horizontal>
    8. <Switch id="无障碍服务" text="无障碍服务" checked="{{auto.service != null}}" padding="8 8 8 8" textSize="15sp"/>
    9. <Switch id="悬浮窗权限" text="悬浮窗权限" checked="{{floaty.checkPermission() != false}}" padding="8 8 8 8" textSize="15sp"/>
    10. </horizontal>
    11. <button id="start" text="启动脚本"/>
    12. </vertical>
    13. );
    14. ui.无障碍服务.on("check", function(checked) {
    15. // 用户勾选无障碍服务的选项时,跳转到页面让用户去开启
    16. if (checked && auto.service == null) {
    17. app.startActivity({
    18. action: "android.settings.ACCESSIBILITY_SETTINGS"
    19. });
    20. }
    21. if (!checked && auto.service != null) {
    22. auto.service.disableSelf();
    23. }
    24. });
    25. ui.悬浮窗权限.on("check", function(checked) {
    26. //申请悬浮窗
    27. importClass(android.content.Intent);
    28. importClass(android.net.Uri);
    29. importClass(android.provider.Settings);
    30. var intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
    31. Uri.parse("package:" + context.getPackageName()));
    32. intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    33. app.startActivity(intent);
    34. });
    35. // 当用户回到本界面时,resume事件会被触发
    36. ui.emitter.on("resume", function() {
    37. // 此时根据无障碍服务的开启情况,同步开关的状态
    38. ui.无障碍服务.checked = auto.service != null;
    39. ui.悬浮窗权限.checked = floaty.checkPermission() != false
    40. });
    41. ui.start.on("click", function() {
    42. if (floaty.checkPermission() == false) {
    43. toast("请先开启悬浮窗权限!")
    44. return;
    45. }
    46. //程序开始运行之前判断无障碍服务
    47. if (auto.service == null) {
    48. toast("请先开启无障碍服务!");
    49. return;
    50. }
    51. /**
    52. * 下面运行主要程序
    53. */
    54. starts();
    55. });
    56. function starts(){
    57. toast("主程序开始运行");
    58. }

  • 相关阅读:
    css实现价格降价线
    PyCLIPS的安装
    二叉树进阶
    Linux常见指令
    ESP-ADF LVGL GUI开发简易化
    第1章 数据库及其表的自动生成与前言
    PostgreSQL 文章下架 与 热更新和填充可以提升数据库性能
    想成为优秀的HR,从哪些方面努力?
    基于Qt命令行处理XML文件读写
    2022 最新的 Java 八股文合集来了,彻底解决各大大厂面试难题
  • 原文地址:https://blog.csdn.net/FL1623863129/article/details/134519289