目录
踩过的坑
- 如果有界面,那么监听通知需要放在线程里。
 
- webview 注入js的js文件需要改后缀,如果还是js,会被加密导致无法使用
 
- webview 内页面引用静态文件可以使用相对路径
 
- 如果多次调用 even.on,event.emit 会触发多次。可以用 even.removeAllListeners进行清除。
 
- console.show 调用时范围只是当前线程。
 
- 不要在UI线程内死循环,要重新开启一个线程,不然会卡死
 
- 无障碍服务权限申请可以使用auto,直接跳转到设置页。
 
- 通知使用服务第一次调用后会提示一次之后,如果没有给予权限。大概率不再弹窗,并且不会报错。如果一直没有给权限,而且无法弹窗需要引导用户手动开启,并重启脚本。
 
- 引入ui的话,拦截back 要使用一下代码
 
    ui.emitter.on("back_pressed", e => {
            if (!isCanFinish) {
                isCanFinish = true;
                isCanFinishTimeout = setTimeout(() => {
                    toastLog("再按一次退出");
                    isCanFinish = false;
                }, 400);
                e.consumed = true;
            } else {
                isCanFinishTimeout &&  clearTimeout(isCanFinishTimeout);
                e.consumed = false;
            };
    });
autojs 版本
autojs 4.1.1