|
侠客手机群控引擎自定义插件
- 用户可以基于自己需要来实现自己需要的任意功能,插件采用标准C# DLL方式开发,非常容易入门,目前提供了屏幕、按键、元素以及部分Intent实现的特定功能。
- 下面来给大家简单介绍一下插件开发、以及使用方法。
- 写插件需要的环境:
- VS2015 .net4.6
- <span style="font-weight:bolder;">DEMO项目下载地址</span>:自动给附近的人打招呼的插件
- 以这个演示项目为例讲解一下插件的编写以及使用方法
- 首先,插件的类型其实是一个标准的.net dll类库,只不过它继承了侠客手机群控引擎的SDK来实现而已
- 只要继承<span style="color:rgb(255, 0, 0);">AndroidControlSDK.AndroidScript</span>并实现<span style="color:rgb(255, 0, 0);">Name Description RunScript</span>这3个方法,即可实现一个完整的插件
- 完整DEMO
- using System;
- using System.Collections.Generic;
- using System.Runtime.Serialization;
- using System.Threading;
- using System.Windows.Media;
- namespace mysss
- {
- public class Class1 : AndroidControlSDK.AndroidScript //继承AndroidControlSDK.AndroidScript来实现插件功能
- {
- public override string Name()
- {
- //返回插件的名称
- return "自动给附近的人打招呼";
- }
- public override string Description()
- {
- //返回插件的描述
- return "这是一个演示脚本";
- }
- //这个方法是插件的执行主体,所有功能都在这里执行
- public override void RunScript()
- {
- //显示调试日志,正式用时可以不开启这个
- ShowLogConsole();
- //在手机屏幕上显示运行状态
- ShowStatus("正在打开附近的人..", Color.FromRgb(78, 17, 255));
- //打开附近的人界面,这个具体参数请查看开发博客
- var dic = new Dictionary<string, string> { { "act", "opennearui" } };
- SendIntent(dic);
- //冷却1000毫秒
- Thread.Sleep(5000);
- //定义个int变量用于计数
- var count = 0;
- //定义一个变量为打招呼的内容
- var zhaohu = "hi,你好啊";
- //在手机屏幕上显示运行状态
- ShowStatus("正在获取附近的人“列表”..");
- //获取所有的昵称 com.tencent.mm:id/agg 这个是附近的人列表里的昵称资源id,这个可以通过android sdk里的 uiautomatorviewer.bat 这个工具来获取
- var nicks = GetUiTexts("com.tencent.mm:id/agg");
- Console.WriteLine("获取到的昵称数量:" + nicks.Count);
- //循环给所有昵称打招呼
- for (var index = 0; index < nicks.Count; index++)
- {
- var nickname = nicks[index];
- ShowStatus("正在加“" + nickname + "”[累计:" + count + "]..");
- //查看是否包含这个昵称
- if (FindObj(nickname).Contains("成功找到元素"))
- {
- //包含就点击它
- if (FindAndCLickObj(nickname).Contains("true"))
- {
- //冷却1000毫秒
- Thread.Sleep(1000);
- //查找并点击“打招呼”
- var result = FindAndCLickObjByRegex("打招呼");
- //输出结果到日志
- Console.WriteLine(result);
- //如果点击成功
- if (result.Contains("true"))
- {
- Thread.Sleep(1000);
- //查找输入框输入内容
- FindAndInutText("android.widget.EditText", zhaohu, 0);
- Thread.Sleep(2000);
- //添加好友
- FindAndCLickObjByRegex("(加为朋友|发送)");
- Thread.Sleep(1000);
- //返回
- FindAndCLickObj("返回");
- Thread.Sleep(1000);
- }
- else
- {
- //如果没有打招呼按钮则直接返回(一般是已经添加过了)
- FindAndCLickObj("返回");
- }
- }
- }
- //计数器加1
- count++;
- }
- }
- }
- }
- 以上代码就是一个完整的插件方法,同一个dll里可以做多个这样的插件,最后生成插件
- 然后就可以运行它了,勾上群控后,也可以象其他脚本一样,对所有手机生效。
复制代码
     然后就可以运行它了,勾上群控后,也可以象其他脚本一样,对所有手机生效。
|
|