Autojs开发的坑

1,009 阅读1分钟

错误Uncaught ReferenceError ReferenceError: http is not defined

调用 http.get 的时候报错 这个错误可能是因为没有连接手机或手机模拟器进行的, 需要连接后再执行. 没有研究具体的原因.

创建文件失败

华为手机安全性做得比较高, 如果是华为手机, 还是放弃吧.

错误Can't find method com.stardust.autojs.runtime.api.Files.write

调用 files.write 的时候报错. 错误显示是找不到方法, 但是最后我是改用先open后close的方式解决的. 而且解决后再用files.write调用就正常了. 有可能是bug导致文件没关闭, 但这个提示确实挺误导人的.

require报错

Error: Can't resolve relative module ID "./runScript.js" when require() is used outside of a module at Require (/android_asset/modules/jvm-npm.js:87:0) 原因: 找不到文件 可能原因: 脚本未同步到设备,所以执行报错。

ReferenceError: "exports" is not defined.

还有一个同类的报错 ReferenceError: "module" is not defined 带exports的js文件不能直接执行, 必须用其他脚本require然后调用.

找不到方法

TypeError: Cannot find function execute in object [object Object] 解决办法: 应该使用 exports.execute = function () { ... } 这样的语法导出方法

missing ; before statement

直译: 脚本末尾少分号