全局变量与函数
延迟
sleep(timer) 暂停运行timer的时间 timer以毫秒为单位 一秒等于一千毫秒
toastLog("我的名字叫卡卡西");toastLog("我的名字叫卡卡西");//ortoastLog("我的名字叫卡卡西");sleep(6000);toastLog("我的名字叫卡卡西");
返回最近一次监测到的正在运行的应用的包名
currentPackage() //返回----string
log(currentPackage());
返回最近一次监测到的正在运行的应用的包名,一般可以认为就是当前正在运行的应用的包名。此函数依赖于无障碍服务,如果服务未启动,则抛出异常并提示用户启动。
返回最近一次监测到的正在运行的Activity的名称
currentActivity() //返回----string
log(currentActivity());
返回最近一次监测到的正在运行的Activity的名称,一般可以认为就是当前正在运行的Activity的名称。此函数依赖于无障碍服务,如果服务未启动,则抛出异常并提示用户启动。
设置剪贴板内容
setClip(text) //text----string 文本
setClip("剪贴板文本");
设置剪贴板内容。此剪贴板即系统剪贴板,在一般应用的输入框中"粘贴"既可使用。
返回系统剪贴板的内容
getClip() //返回----string
toast("剪贴板内容为:" + getClip());
返回系统剪贴板的内容。
打印粘版的内容
setClip("我的名字叫卡卡西");log("剪贴板内容为:" + getClip());
在屏幕上提示信息
toast(message) //message----string(要显示的信息)
以气泡显示信息message几秒。(具体时间取决于安卓系统,一般都是2秒)注意,信息的显示是"异步"执行的,并且,不会等待信息消失程序才继续执行。如果在循环中执行该命令,可能出现脚本停止运行后仍然有不断的气泡信息出现的情况。 例如:
for(var i = 0; i < 100; i++){ toast(i); //toast在手机底部显示}
运行这段程序以后,会很快执行完成,且不断d出消息,在任务管理中关闭所有脚本也无法停止。 要保证气泡消息才继续执行可以用:
for(var i = 0; i < 100; i++){ toast(i); sleep(2000);}
或者修改toast函数:
var _toast_ = toast;toast = function(message){ _toast_(message); sleep(2000);}for(var i = 0; i < 100; i++){ toast(i);}
toastLog(message)
message----string (要显示的信息)
相当于toast(message);log(message)。显示信息message并在控制台中输出。参见console.log。
等待指定的Activity出现
waitForActivity(activity[, period = 200])
activity Activity名称
period 轮询等待间隔(毫秒)
等待指定的Activity出现,period为检查Activity的间隔。
toastLog("one");waitForActivity("org.autoJs.autoJs.ui.main.MainActivity")toastLog("two");// log(currentActivity());
等待指定的应用出现
waitForPackage(package[, period = 200])
package 包名
period 轮询等待间隔(毫秒)
等待指定的应用出现。例如waitForPackage("com.tencent.mm")为等待当前界面为微信。
toastLog("1");waitForPackage("com.androID.browser", 1024);toastLog("2");
立即停止脚本运行
exit()
立即停止脚本运行。立即停止是通过抛出ScriptInterrupttedException来实现的,因此如果用try...catch把exit()函数的异常捕捉,则脚本不会立即停止,仍会运行几行后再停止。
toastLog("1");exit();toastLog("2");
返回一个在[min...max]之间的随机数
random(min, max)
min {number} 随机数产生的区间下界 max {number} 随机数产生的区间上界 返回 {number}
返回一个在[min...max]之间的随机数。例如random(0, 2)可能产生0, 1, 2。
返回在[0, 1)的随机浮点数
random() //返回number
返回在[0, 1)的随机浮点数。
log(random());
限制脚本需要在某个系统版本以及以上运行。
requiresAPI(API) API AndroID版本号
表示此脚本需要AndroID API版本达到指定版本才能运行。例如requiresAPI(19)表示脚本需要在AndroID 4.4以及以上运行。调用该函数时会判断运行脚本的设备系统的版本号,如果没有达到要求则抛出异常。
可以参考以下AndroID API和版本的对照表:平台版本: API级别AndroID 7.0: 24AndroID 6.0: 23AndroID 5.1: 22AndroID 5.0: 21AndroID 4.4W: 20AndroID 4.4: 19AndroID 4.3: 18
限制auto.Js版本达到指定版本才能运行
requiresautojsversion(version) //version (string) | (number) auto.Js的版本或版本号
表示此脚本需要auto.Js版本达到指定版本才能运行。例如requiresautojsversion("3.0.0 Beta")表示脚本需要在auto.Js 3.0.0 Beta以及以上运行。调用该函数时会判断运行脚本的auto.Js的版本号,如果没有达到要求则抛出异常。version参数可以是整数表示版本号,例如requiresautojsversion(250);也可以是字符串格式表示的版本,例如"3.0.0 Beta", "3.1.0 Alpha4", "3.2.0"等。可以通过app.autoJs.versionCode和app.autoJs.versionname获取当前的auto.Js版本号和版本。
动态申请安卓的权限
runtime.requestPermissions(permissions) permissions {Array} 权限的字符串数组
动态申请安卓的权限。例如:
//请求GPS权限runtime.requestPermissions(["access_fine_location"]);
尽管安卓有很多权限,但必须写入Manifest才能动态申请,为了防止权限的滥用,目前auto.Js只能额外申请两个权限:access_fine_location GPS权限 record_audio 录音权限您可以通过APK编辑器来增加auto.Js以及auto.Js打包的应用的权限。
安卓所有的权限列表参见Permissions Overview;(并无什么用)
加载目标jar文件
runtime.loadJar(path) //path {string} jar文件路径
加载目标jar文件,加载成功后将可以使用该Jar文件的类。
// 加载Jsoup.jarruntime.loadJar("./Jsoup.jar");// 使用Jsoup解析HTMLimportClass(org.Jsoup.Jsoup);log(Jsoup.parse(files.read("./test.HTML")));
(Jsoup是一个Java实现的解析HTML DOM的库,可以在Jsoup下载);
加载目标dex文件
runtime.loadDex(path) //path {string} dex文件路径
加载目标dex文件,加载成功后将可以使用该dex文件的类。因为加载jar实际上是把jar转换为dex再加载的,因此加载dex文件会比jar文件快得多。可以使用AndroID SDK的build tools的dx工具把jar转换为dex。
全局变量
context
全局变量。一个androID.content.Context对象。注意该对象为ApplicationContext,因此不能用于界面、对话框等的创建。
总结 以上是内存溢出为你收集整理的auto.js_全局变量与函数_ZHOU125disorder_全部内容,希望文章能够帮你解决auto.js_全局变量与函数_ZHOU125disorder_所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)