[山海教程]直接用按键也能写插件功能
现在越来越多的人都偏向于开发安卓按键精灵的脚本,对于安卓按键的命令需求也越来越多,有一些命令是按键本身不具备或者是不够完善,所以特此推出最强LUA插件-山海插件,以供同学们可以更好的开发自己的脚本。...
[山海插件教程-第二十四课]
用按键也能写插件功能
用按键也能写插件功能
插件的起源
现在越来越多的人都偏向于开发安卓按键精灵的脚本,对于安卓按键的命令需求也越来越多,有一些命令是按键本身不具备或者是不够完善,所以特此推出最强LUA插件-山海插件,以供同学们可以更好的开发自己的脚本。
本节内容介绍
安卓按键的插件可以实现很多按键本身无法实现的功能,所以有些同学就会很羡慕会写插件的人。其实呢~~安卓按键的插件并没有那么的复杂,一些功能其实直接通过按键代码的封装也能实现,另外一些设备命令的话就是通过linux或者adb的命令行来实现的。
今天就教大家如何直接在按键里来实现插件的功能。
本节相关命令:
命令名称Execute命令功能执行shell命令参数参数1【必要】:字符串,shell命令
返回值命令执行成功返回true
应用场景
了解lua语言的同学就能知道这个其实就是lua当中的os.execute命令,相当于是用来执行一些常见的linux和adb shell的命令目前这个命令我只是简单的封装了原始的lua命令,所以只能返回命令本身是否执行成功。想要获取到命令的结果,可以看下面的教程
重启:
// reboot 是adb shell命令中的重启指令
Call shanhai.Execute("reboot")
关机:
// reboot -p 是adb shell命令中的关机指令
Call shanhai.Execute("reboot -p ")
设置输入法:
Import "ShanHai.lua"
// 设置搜狗输入法
Call shanhai.Execute("ime set com.sohu.inputmethod.sogou/.SogouIME") ime 命令是adb shell命令里和输入法有关的命令,可以用来获取输入法和设置输入法,后面是跟上输入法的组件。这个组件名可以通过山海插件里的GetIME来获取到。 在插件里的设置输入法命令,本身只附带有11种输入法,如果大家设备上有安装其他的输入法的话,那就可以利用execute这个命令自己去切换输入法了
上面的命令都是用于设置,那如果想要获取一些信息该如何实现呢?
前面有说过,目前这个命令是只能返回是否执行成功,要想把执行的结果输出的话就得借助cmd命令里的重定向到文件的符号(>),这个功能可以把命令的结果写入到一个文本里,之后我们再去读取这个文本就好了。
范例:
获取设备电源信息:
Import "ShanHai.lua"
Dim ret = shanhai.Execute("dumpsys battery > /sdcard/tmp.txt")
Dim text
If ret Then
TracePrint "命令执行成功"
text = file.Read("/sdcard/tmp.txt")
TracePrint text
Else
TracePrint "命令执行失败"
End If
dumpsys battery 是adb shell命令,用来获取电源相关信息,"dumpsys battery > /sdcard/tmp.txt" 这命令的意思就是把“dumpsys battery”的结果写入到“/sdcard/tmp.txt”这个文件里。
之后我们再通过去读取这个文件的内容就能知道结果了。
那我们可以根据这个操作来封装一个获取执行结果的函数:
Import "ShanHai.lua"
Function execute(cmd)
Dim path = GetSdcardDir() & "/tmp.txt"
Dim ret = shanhai.Execute(cmd & " > " & path)
If ret Then
execute = file.Read(path)
Else
execute = ""
End If
End Function
// 获取电源信息
TracePrint execute("dumpsys battery")
// 获取设备内存占用信息
TracePrint execute("dumpsys meminfo")
总结预告
OK~~那这个命令就介绍到这里。有了这个命令,就可以直接在按键里去实现插件的功能了。很多命令都是需要依靠linux或者adb shell命令来实现的。命令能实现的功能有非常多,这里就不具体介绍了,在网上可以找到非常丰富的教程,大家可以自行百度~
本节内容就讲解到这里啦!如果大家有什么好的建议或者需要了解某个功能,可以留言哦!
如果大家想对插件有更多的了解,可以阅读原文进行查看哦!下节课内容预告:获取QQ-“附近”功能组件名
点击下方“阅读原文”获取更多山海插件命令介绍及下载OK~~那这个命令就介绍到这里。有了这个命令,就可以直接在按键里去实现插件的功能了。很多命令都是需要依靠linux或者adb shell命令来实现的。命令能实现的功能有非常多,这里就不具体介绍了,在网上可以找到非常丰富的教程,大家可以自行百度~
本节内容就讲解到这里啦!如果大家有什么好的建议或者需要了解某个功能,可以留言哦!
如果大家想对插件有更多的了解,可以阅读原文进行查看哦!下节课内容预告:获取QQ-“附近”功能组件名
↓↓↓
关注 按键精灵
微信扫一扫关注公众号