吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 19466|回复: 31
上一主题 下一主题
收起左侧

[其他原创] 按键精灵多线程运用,检测卡死线程,短信api调用,通知功能

  [复制链接]
跳转到指定楼层
楼主
打字的小强 发表于 2018-11-2 00:20 回帖奖励
本帖最后由 打字的小强 于 2018-11-2 08:54 编辑

按键精灵是一个耗费系统资源的脚本语言,需要适配分辨率和root,有时候游戏升级卡了也不知道,我就想做一个检测卡死的功能。采用多线程,按键精灵的多线程也很有大的局限性,频繁开启关闭线程很容易闪退,不能开太多的线程,而且需要设置线程之间的共享变量才能控制线程的启动与停止,最近在写云手机脚本,云手机的运营商为了节约宽带资源,不会一直让你监控云手机的运行状态,这时候就要弄一个发送通知的东西,在我帖子历史中有个发邮件通知的方法,在第三个帖子,有兴趣的可以去看看,我觉得不够醒目哈。还是花点钱用短信通知了。SUBMAIL双十一做活动,35块钱买了一千条短信。做给别人就要别人花钱啦,自己玩玩可以玩好长时间,哈哈

[Asm] 纯文本查看 复制代码
Dim intX,intY,jk,gj
Call main()
Sub main//主线程
        dim control = ReadUIConfig("多选框3")
        gj = Thread.Start(挂机)//开启挂机线程
        If control =True Then //判断是否开启了监控线程
                Thread.SetShareVar "a", false //设置共享变量 
                jk = Thread.Start(监控)//开启监控线程
                Do
                        If Thread.GetShareVar("a") = True Then 
                                ShowMessage "界面已经卡住了"
                                Thread.stop (gj)//暂停挂机线程
                                KillApp "填写自己要杀死的的app"//杀死某个app,然后在挂机线程启动的时候启动
                                ShowMessage "等待5秒钟脚本重新开始"
                                Delay 5000
                                gj = Thread.start(挂机)//重启挂机线程 
                                Thread.SetShareVar "a",False
                        End If
                Loop        
        End If
End Sub


Sub 监控//监控线程
Dim num = ReadUIConfig("输入框6")
Dim j_time =ReadUIConfig("输入框5") 
dim sms =  ReadUIConfig("多选框1")
Dim blo_time = 0
Dim cmp,tar_color
ShowMessage "监控线程启动"
        Do
                tar_color = GetPixelColor(668, 632)//获取监控点颜色
                Delay 2000
                ShowMessage "监控点颜色为"&tar_color,5000
                Delay j_time*1000 
                cmp = CmpColor(668, 632, tar_color, 0.9) //延迟一段时间后对比一个点在两个时间点的颜色进行对比 
                If cmp > -1 Then 
                        blo_time = blo_time +1 //卡住计次
                        ShowMessage "卡住" & blo_time & "次"
                        If blo_time >= num Then 
                                ShowMessage "卡住三次,即将重启app"
                                Thread.SetShareVar "a", True //设置共享变量,传递给主线程
                                If sms = true Then         //判断是否有短信提醒
                                        Call 短信()
                                End If
                                Delay 3000
                                blo_time = 0
                        End If
                        Else 
                        blo_time = 0
                        Thread.SetShareVar "a", False
                End If
        Loop
End Sub
Sub 挂机
        Do
                Delay 5000
                //....自己的主要功能代码
        Loop
End Sub
Sub 短信
Dim 返回内容,请求地址,post数据,短信内容,收件人,app_key,app_id,脚本特征码
脚本特征码 = ReadUIConfig("输入框2")//多开的话每个脚本设置都不一样
收件人 = ReadUIConfig("输入框1")
dim myself = ReadConfig("多选框2")
If myself = True Then 
        app_key = ReadUIConfig("输入框3")
        app_id = ReadUIConfig("输入框4")
Else 
        app_id ="申请自己的app_id"
        app_key ="申请自己的app_key"
End If
Log.Open//开启日志记录

短信内容="【考拉工作室】您的脚本出现问题,请查看,设备码:"&脚本特征码

请求地址 = "https://api.mysubmail.com/message/send.json"
post数据 = "appid=" & app_id & "&to=" & 收件人 & "&content=" & 短信内容 & "&signature=" & app_key
返回内容 = URL.Post(请求地址, post数据)
If 返回内容["status"] = "success" Then //拆解返回值json
        ShowMessage "短信发送成功,剩余的短信量为" & 返回内容["sms_credits"]
        TracePrint 返回内容
        Else 
        ShowMessage "短信发送失败,失败原因已记录,打开日志查看原因"
        TracePrint 返回内容
        Log.Close//关闭日志记录 
End If
End Sub




界面代码
[Asm] 纯文本查看 复制代码
界面1:
{
        标签页1:
        {
                        多选框:
                {
                        注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                        名称:"多选框3",
                        提示内容:"卡死重启app",
                        点击响应:"函数名1",
                        选中:false,
                        文字大小:0,
                        高度:0,
                        宽度:0
                },        
                水平布局:
                {
                        文字框:
                        {
                                注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"文字框6",
                                显示内容:"每",
                                文字大小:0,
                                高度:0,
                                宽度:0
                        },        
                        输入框:
                        {
                                注释:"初始文本、文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"输入框5",
                                提示内容:"",
                                初始文本:"60",
                                仅输入数字:false,
                                文字大小:0,
                                最大输入长度:0,
                                高度:0,
                                宽度:0
                        },        
                        文字框:
                        {
                                注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"文字框7",
                                显示内容:"秒检测一次,检测",
                                文字大小:0,
                                高度:0,
                                宽度:0
                        },        
                        输入框:
                        {
                                注释:"初始文本、文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"输入框6",
                                提示内容:"",
                                初始文本:"3",
                                仅输入数字:false,
                                文字大小:0,
                                最大输入长度:0,
                                高度:0,
                                宽度:0
                        },        
                        文字框:
                        {
                                注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"文字框8",
                                显示内容:"次,重启APP。",
                                文字大小:0,
                                高度:0,
                                宽度:0
                        },        
                        注释:"用于将多个控件放在同一行",
                        
                },        
                
        
                多选框:
                {
                        注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                        名称:"多选框1",
                        提示内容:"卡死短信通知",
                        点击响应:"函数名1",
                        选中:false,
                        文字大小:0,
                        高度:0,
                        宽度:0
                },        
        
                文字框:
                {
                        注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                        名称:"文字框5",
                        显示内容:"(每天免费20条,需要更多请自行创建短信api填写其他信息,详情请看脚本说明)",
                        文字大小:0,
                        高度:0,
                        宽度:0
                },        
                
                水平布局:
                {
                        文字框:
                        {
                                注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"文字框1",
                                显示内容:"收件人手机号:",
                                文字大小:0,
                                高度:0,
                                宽度:0
                        },        
                        输入框:
                        {
                                注释:"初始文本、文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"输入框1",
                                提示内容:"请填写收件人手机号",
                                初始文本:"",
                                仅输入数字:false,
                                文字大小:0,
                                最大输入长度:0,
                                高度:0,
                                宽度:0
                        },        
                        
                        注释:"用于将多个控件放在同一行",
                        
                },        
                水平布局:
                {
                        文字框:
                        {
                                注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"文字框2",
                                显示内容:"脚本编号 :       ",
                                文字大小:0,
                                高度:0,
                                宽度:0
                        },        
                        输入框:
                        {
                                注释:"初始文本、文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"输入框2",
                                提示内容:"填写自定义脚本编号",
                                初始文本:"",
                                仅输入数字:false,
                                文字大小:0,
                                最大输入长度:0,
                                高度:0,
                                宽度:0
                        },        
                        注释:"用于将多个控件放在同一行",
                        
                },        
                多选框:
                {
                        注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                        名称:"多选框2",
                        提示内容:"自建短信通知其他信息",
                        点击响应:"函数名1",
                        选中:false,
                        文字大小:0,
                        高度:0,
                        宽度:0
                },        
                水平布局:
                {
                        文字框:
                        {
                                注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"文字框3",
                                显示内容:"app_id:   ",
                                文字大小:0,
                                高度:0,
                                宽度:0
                        },        
                        输入框:
                        {
                                注释:"初始文本、文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                                名称:"输入框3",
                                提示内容:"提示用户应该输入什么内容",
                                初始文本:"",
                                仅输入数字:false,
                                文字大小:0,
                                最大输入长度:0,
                                高度:0,
                                宽度:0
                        },        
                        注释:"用于将多个控件放在同一行",
                        
                },        
                水平布局:
                {
                        注释:"用于将多个控件放在同一行",
                
                
                文字框:
                {
                        注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                        名称:"文字框4",
                        显示内容:"app_key:",
                        文字大小:0,
                        高度:0,
                        宽度:0
                },        
                输入框:
                {
                        注释:"初始文本、文字大小、最大输入长度、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
                        名称:"输入框4",
                        提示内容:"提示用户应该输入什么内容",
                        初始文本:"",
                        仅输入数字:false,
                        文字大小:0,
                        最大输入长度:0,
                        高度:0,
                        宽度:0
                },        
        
        },        
        
        },        

}

免费评分

参与人数 8吾爱币 +10 热心值 +8 收起 理由
qq1335988969 + 1 + 1 我脚本是加的你的这个多线程检测
kingdiao + 1 我很赞同!
f250907 + 1 + 1 用心讨论,共获提升!
853679185 + 2 + 1 老哥很优秀,多线程借用了
wushaominkk + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
xiaobinzhan + 1 + 1 热心回复!
zhedielj + 1 + 1 我很赞同!
xbang + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
abcdlkh 发表于 2018-11-17 18:35
老哥  敢不敢搞一个趣头条自动阅读滴脚本啊  万分感谢  
沙发
steiff 发表于 2018-11-2 00:51
3#
chang1582 发表于 2018-11-2 01:19
4#
倪沁东 发表于 2018-11-2 02:10
加油!支持楼主
5#
qq20048888 发表于 2018-11-2 05:22
不错不错。支持下!
6#
hu007 发表于 2018-11-2 07:43
多谢分享了!
7#
jiemo365 发表于 2018-11-2 08:12
我只会do loop
8#
莫莫 发表于 2018-11-2 08:44
不错不错。支持下!
9#
xbang 发表于 2018-11-2 08:46
支持分享啊,
10#
hh3016 发表于 2018-11-2 08:54
注释不错。写得很小白
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 21:34

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表