Skip to content

系统基础方法

函数列表


1. 定时执行 (setTimer)

说明: 定时执行指定的方法

函数: setTimer(function,time,arg,...)

参数:

参数名类型必填说明
functionfunction要执行的回调方法
timenumber定时时间(毫秒)
argany传递给回调方法的参数(可变参数)

返回值: 无

示例:

lua
function callback(arg0,arg1)
	print(arg0,arg1)
	setTimer(callback,1000,arg0,arg1)
end
setTimer(callback,1000,1,2)
sleep(1000000)

2. 休眠 (sleep)

说明: 休眠

函数: sleep(time)

参数:

参数名类型必填说明
timenumber休眠时间(毫秒)

返回值: 无

示例:

lua
sleep(5000)

3. 调试输出 (print)

说明: 调试输出

函数: print(str)

参数:

参数名类型必填说明
strany要输出的内容

返回值: 无

示例:

lua
print("hello word")

4. 原生lua 标准输出 (printEx)

说明: 调试输出

函数: printEx(str)

参数:

参数名类型必填说明
strany要输出的内容

返回值: 无

示例:

lua
printEx("hello word")

5. 锁定屏幕 (lockScreen)

说明: 锁定屏幕

函数: lockScreen()

参数: 无

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
lockScreen()

6. 解锁屏幕 (unLockScreen)

说明: 解锁屏幕

函数: unLockScreen()

参数: 无

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
unLockScreen()

7. 当前屏幕状态是否是锁定状态 (isScreenLocked)

说明: 当前屏幕状态是否是锁定状态

函数: isScreenLocked()

参数: 无

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
local r = isScreenLocked()
if r then
	print("当前屏幕为锁定状态")
else
	print("当前屏幕为解锁状态")
end

8. 打开app (runApp)

说明: 打开app

函数: runApp(package_name)

参数:

参数名类型必填说明
package_namestring某个应用程序的包名

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
runApp("com.tencent.mm")

9. 关闭app (stopApp)

说明: 关闭app

函数: stopApp(package_name)

参数:

参数名类型必填说明
package_namestring某个应用程序的包名

返回值: 无

示例:

lua
runApp("com.tencent.mm")
sleep(1000)
stopApp("com.tencent.mm")

10. 获取当前包名 (getPackageName)

说明: 获取当前包名

函数: getPackageName()

参数: 无

返回值:

返回值类型说明
string当前包名

示例:

lua
local pkg = getPackageName()
print(pkg)

11. 获取脚本版本号 (getScriptVersion)

说明: 获取当前脚本的版本号,返回一个整数

函数: getScriptVersion()

参数: 无

返回值:

返回值类型说明
number脚本版本号

示例:

lua
local ver = getScriptVersion()
print("当前脚本版本:"..ver)

12. 获取脚本的工作目录 (getWorkPath)

说明: 获取脚本的工作目录

函数: getWorkPath()

参数: 无

返回值:

返回值类型说明
string工作目录路径

示例:

lua
local path = getWorkPath()
print("当前工作目录:"..path)

13. 获取设备id号 (getDeviceId)

说明: 获取设备id号

函数: getDeviceId()

参数: 无

返回值:

返回值类型说明
string设备ID

示例:

lua
local devId = getDeviceId()
print(devId)

14. 获取设备信息 (getSysInfo)

说明: 获取设备信息

函数: getSysInfo()

参数: 无

返回值:

返回值类型说明
table设备信息表

示例:

lua
local ret = getSysInfo()
print(ret)

15. 获取当前App相关信息 (getAppInfo)

说明: 获取当前App相关信息

函数: getAppInfo()

参数: 无

返回值:

返回值类型说明
tableApp信息表

示例:

lua
local ret = getAppInfo()
print(ret)

16. 读取剪贴板 (readPasteboard)

说明: 读取剪贴板

函数: readPasteboard()

参数: 无

返回值:

返回值类型说明
string返回剪贴板内容

示例:

lua
writePasteboard("123")
local ret = readPasteboard()
print(ret)

17. 写数据到剪贴板 (writePasteboard)

说明: 写数据到剪贴板

函数: writePasteboard(str)

参数:

参数名类型必填说明
strstring字符串数据写入剪贴板

返回值: 无

示例:

lua
writePasteboard("123")
local ret = readPasteboard()
print(ret)

18. 获取设备电量 (getBatteryLevel)

说明: 获取设备电量

函数: getBatteryLevel()

参数: 无

返回值:

返回值类型说明
number表示当前设备电量百分比

示例:

lua
local battery = getBatteryLevel()
print(battery)

19. 生成随机数 (rnd)

说明: 生成随机数

函数: rnd(begin,end)

参数:

参数名类型必填说明
beginnumber随机数范围起始值
endnumber随机数范围结束值

返回值:

返回值类型说明
number生成的随机数

示例:

lua
local r = rnd(-5,5)
print("rnd:"..r)

20. 获取前台app包名 (frontAppName)

说明: 获取前台app包名

函数: frontAppName()

参数: 无

返回值:

返回值类型说明
string前台app包名

示例:

lua
local pkg = frontAppName()
print(pkg)

21. 播放音乐 (playMusic)

说明: 播放音乐

函数: playMusic(name,isloop)

参数:

参数名类型必填说明
namestring可以是资源里面的文件则直接写名称即可,也可以直接填写绝对路径
isloopboolean表示是否循环播放

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
playMusic("test.mp3")
sleep(100000)

22. 停止播放音乐 (stopMusic)

说明: 停止播放音乐

函数: stopMusic()

参数: 无

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
playMusic("test.mp3")
sleep(10000)
stopMusic()
sleep(100000)

23. 当前脚本是否在后台运行 (isBackgroundRun)

说明: 当前脚本是否在后台运行

函数: isBackgroundRun()

参数: 无

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
local ret = isBackgroundRun()
if ret then
	print("脚本运行在后台")
else
	print("脚本运行在前台")
end

24. 启动一个线程 (beginThread)

说明: 启动一个新的线程

函数: beginThread(callback,...)

参数:

参数名类型必填说明
callbackfunction线程回调方法
...any可变参数,传递给回调方法

返回值:

返回值类型说明
thread线程对象

示例:

lua
local var = {
	exit = true,
	data = 0,
}

function thread_func(arg)
	while var.exit do
		print("我是子线程:"..arg.." 共享数据:"..var.data)
		sleep(100)
	end
end

for i=1,1 do --同时可运行线程数不能超过10个
	beginThread(thread_func,i)
end

for i=1,10 do
	local tick = 10 - i
	var.data = tick
	print("倒计时"..tick.."秒后结束线程")
	sleep(1000)
end

var.exit = false
print("线程结束")
sleep(100000)

25. 设置停止脚本的回调函数 (setStopCallBack)

说明: 如果想在脚本结束的时候能处理一些收尾的事情可以用此方法设置结束时的回调方法,如果设置了结束回调后,用户连续两次点击停止就会直接触发结束

函数: setStopCallBack(callback)

参数:

参数名类型必填说明
callbackfunction结束时的回调方法

返回值: 无

示例:

lua
setStopCallBack(function(error)
	if error then
		print("脚本异常结束了",error)
	else
		print("脚本正常结束了!!!")
	end
end)

26. 重启当前脚本 (restartScript)

说明: 重启当前脚本

函数: restartScript()

参数: 无

返回值: 无

示例:

lua
for i = 1, 6, 1 do
	print(string.format("倒计时%d秒后开始重启脚本",6 - i))
	sleep(1000)
end

print("开始重启脚本")
restartScript()

27. 结束脚本运行 (exitScript)

说明: 结束脚本运行

函数: exitScript()

参数: 无

返回值: 无

示例:

lua
for i = 1 , 600 , 1 do
	print(string.format("心跳==>%d" ,i))
	if i == 5 then
		print("结束脚本")
		exitScript()
	end
	sleep(1000)
end

28. 判断图色引擎是否开启 (isEngineSerReady)

说明: 判断图色引擎是否开启

函数: isEngineSerReady()

参数: 无

返回值:

返回值类型说明
booleantrue表示开启了

示例:

lua
if isEngineSerReady() then
	print("图色引擎已经开启")
else
	print("图色引擎没有开启")
end

29. 关闭日志开关 (setLogOff)

说明: 关闭日志开关

函数: setLogOff(iscloselog)

参数:

参数名类型必填说明
iscloselogboolean是否关闭日志

返回值: 无

示例:

lua
print("开始运行")
setLogOff(true)
for i=1,100 do
	print("i:",i)
	sleep(100)
end

30. 获取屏幕信息 (getScreenInfo)

说明: 获取屏幕信息

函数: getScreenInfo()

参数: 无

返回值:

返回值类型说明
table返回一个表,包含屏幕宽度、高度、缩放比例

示例:

lua
local info = getScreenInfo()
print("屏幕宽度:",info.width)
print("屏幕高度:",info.height)
print("屏幕缩放比例:",info.scale)

31. 打开一个网址 (openUrl)

说明: 打开一个网址

函数: openUrl(url,[bundleid])

参数:

参数名类型必填说明
urlstring网址
bundleidstring指定这个app去打开网址,如果不填写这个参数就表示用默认浏览器去打开网址

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
openUrl("http://www.baidu.com")

32. 重启设备 (rebootDevice)

说明: 重启设备,此方法只能在RootService引擎模式下使用

函数: rebootDevice()

参数: 无

返回值:

返回值类型说明
boolean布尔类型

示例:

lua
for i = 1, 10, 1 do
	showSysToast(string.format("倒计时重启 %d",10-i))
	sleep(1000)
end
rebootDevice()