1.「安卓按键精灵」扒别人脚本的按键界面源码
2.「安卓按键精灵」几种字符串提取的方法(源码)
3.如何把按键精灵脚本源码导出
「安卓按键精灵」扒别人脚本的界面源码
下午讨论中,群友询问破解他人脚本界面源码的精灵键精脚本方法,我给出了肯定的码提回应。其实,取按界面代码并不复杂,代码仅包含几个元素,按键咖啡源码模仿起来非常简便。精灵键精脚本不过,码提既然提到了“破解”,取按这里我们采用更为直接的代码策略。
要获取界面代码,按键首先需要找到存储界面文件的精灵键精脚本目录。打开脚本的码提安装目录,“/data/data/”+包名,取按进入后找到名为“files”的代码文件夹。经验显示,界面配置文件通常存于此处。
在“files”文件夹中,会发现大量与脚本相关的cookie 源码文件,不清楚其具体用途。通过文本读取命令逐一探索这些文件内容。
对每个文件进行遍历读取,结果显示包含多选框1、多选框2的配置文件,以及与界面截图相对应的文件,但它们并非界面源码,而是保存界面信息的配置文件。
注意到一个名为“script.uip”的nsis源码文件,后缀名提示其与界面相关,而文件内容格式包含大量花括号{ },与界面源码格式相符。至此,我们有了破解界面源码的线索。
面对乱码问题,考虑是编码错误的可能性较高。按键支持的编码格式为utf8,尝试将未知编码转为utf8。biginteger源码使用转码插件验证,结果令人满意。
在脚本中加入转码插件,并测试其他文件编码,确保界面源码正确无误。将调试结果复制至文本中,与脚本界面进行对比,效果令人满意。
整个过程未提及包名获取方法,pentaho 源码对于自编脚本,此信息直接使用,但对他人脚本,需自行获取。这里提供简便方法:运行特定代码以获取包名。将此步骤加入脚本,去除遍历部分,直接读取界面文件。
至此,完整脚本形成,实现了从读取界面文件到界面源码的转换。喜欢此内容的朋友请给予赞,如需更多资源,请关注按键精灵论坛、知乎账号或微信公众号“按键精灵”。遇到问题,可留言或私信咨询。
详情请参阅:「安卓按键」扒别人脚本的界面源码 _ 集结令●英雄归来教程比武大赛 - 按键精灵论坛
「安卓按键精灵」几种字符串提取的方法(源码)
截取法提取两个字符串之间的内容
TracePrint GetStrAB("如果想要写成一行代码,那么就可以用冒号连接","想要","代码")
Function GetStrAB(str,StrA,StrB)
If UTF8.InStr(1, str, StrA)>0 and utf8.instr(1,str,StrB) > 0 Then
Dim m=utf8.instr(1,Str,StrA)
Dim n=utf8.instr(m,Str,StrB)
GetStrAB=utf8.mid(str,m+utf8.len(StrA),n-m-utf8.len(StrA))
End If
End Function
分割法提取字符串
TracePrint SplitStrAB("如果想要写成一行代码,那么就可以用冒号连接","想要","代码")
Function SplitStrAB(str, StrA, StrB)
If UTF8.InStr(1, str, StrA) > 0 and UTF8.InStr(1, str, StrB) > 0 Then
Dim arr_A=split(str,StrA)
Dim arr_B=split(arr_A(1),StrB)
SplitStrAB=arr_B(0)
end if
End Function
取多组两个字符串之间的内容
Dim arr=GetStrArr("如果(公众号3分钟学堂)写成一行(代码),那么就(可以)用冒号连接","(",")")
For Each k In arr
TracePrint k
Next
Function GetStrArr(str, StrA, StrB)
If UTF8.InStr(1, str, StrA) > 0 and UTF8.InStr(1, str, StrB) > 0 Then
Dim str_arr=array()
Dim n=0
Dim arr_A=split(str,StrA)
Dim arr_B
For i = 1 To UBOUND(arr_A)
If InStr(1,arr_A(i),StrB) > 0 Then
arr_B = Split(arr_A(i), StrB)
str_arr(n) = arr_B(0)
n=n+1
End If
Next
GetStrArr=str_arr
end if
End Function
提取数字
TracePrint GetNum("如果_ba@d1b都是a2aaf%b连接")
Function GetNum(str)
Dim Num
For i = 1 To UTF8.Len(str)
If IsNumeric(utf8.StrGetAt(str,i)) Then
Num=Num&utf8.StrGetAt(str,i)
End If
Next
GetNum=Num
End Function
提取字母
TracePrint GetZm("如果_ba@d1b都是a2aaf%b连接")
Function GetZm(str)
Dim zm
For i = 1 To UTF8.Len(str)
If < CInt(Asc(utf8.StrGetAt(str, i))) < or < CInt(Asc(utf8.StrGetAt(str, i))) < Then
zm=zm&utf8.StrGetAt(str,i)
End If
Next
GetZm=zm
End Function
提取汉字
TracePrint GetCN("如果_ba@d1b都是a2aaf%b连接")
Function GetCN(str)
Dim CN
For i = 1 To UTF8.Len(str)
If Len(utf8.StrGetAt(str, i)) = 3 Then
CN=CN&utf8.StrGetAt(str, i)
End If
Next
GetCN=CN
End Function
正则提取数字
import"shanhai.lua"
Dim str="如果_ba@d1b都是a2aaf%b连接"
dim arr= shanhai.RegexFind(str,"%d+")
TracePrint join(arr,"")
正则提取字母
import"shanhai.lua"
Dim str="如果_ba@d1D都是a2aaf%b连接"
dim arr= shanhai.RegexFind(str,"%a+")
TracePrint join(arr,"")
正则提取汉字
import"shanhai.lua"
Dim str="如果_ba@d1D都是a2aaf%b连接"
dim arr= shanhai.RegexFind(str,"[\-\]+")
TracePrint join(arr,"")
本期文章是源码分享的形式,感兴趣的朋友可以复制源码在按键中运行一下,自己照着去写写就可以学会。
如何把按键精灵脚本源码导出
你是指按键小精灵的源码导出吗?如果是小精灵就没办法导出源码的。如果不是小精灵好办了,按键精灵的脚本一般都是用文本文件编写的,直接打开脚本文本,复制里面的内容就行,但是一旦制作成按键小精灵,你就没办法从里面获取脚本源码,只能用录制功能再录制一遍,但录制出来的内容只是前台的鼠标操作和键盘操作,像找怪、自动加血这些功能是没有办法录制的。