AI手机网,短视频直播 硬改改机 一键新机 群控软件 刷机定制

 找回密码
 立即注册
搜索
查看: 4053|回复: 5

侠客手机群控引擎自定义插件

[复制链接]
发表于 2019-1-18 16:58:25 | 显示全部楼层 |阅读模式
侠客手机群控引擎自定义插件
  1. 用户可以基于自己需要来实现自己需要的任意功能,插件采用标准C# DLL方式开发,非常容易入门,目前提供了屏幕、按键、元素以及部分Intent实现的特定功能。

  2. 下面来给大家简单介绍一下插件开发、以及使用方法。

  3. 写插件需要的环境:

  4. VS2015 .net4.6

  5. <span style="font-weight:bolder;">DEMO项目下载地址</span>:自动给附近的人打招呼的插件

  6. 以这个演示项目为例讲解一下插件的编写以及使用方法
  7. 首先,插件的类型其实是一个标准的.net dll类库,只不过它继承了侠客手机群控引擎的SDK来实现而已
  8. 只要继承<span style="color:rgb(255, 0, 0);">AndroidControlSDK.AndroidScript</span>并实现<span style="color:rgb(255, 0, 0);">Name Description RunScript</span>这3个方法,即可实现一个完整的插件

  9. 完整DEMO

  10. using System;
  11. using System.Collections.Generic;
  12. using System.Runtime.Serialization;
  13. using System.Threading;
  14. using System.Windows.Media;

  15. namespace mysss
  16. {

  17.     public class Class1 : AndroidControlSDK.AndroidScript //继承AndroidControlSDK.AndroidScript来实现插件功能
  18.     {
  19.         public override string Name()
  20.         {
  21.             //返回插件的名称
  22.             return "自动给附近的人打招呼";
  23.         }

  24.         public override string Description()
  25.         {
  26.             //返回插件的描述
  27.             return "这是一个演示脚本";
  28.         }

  29.         //这个方法是插件的执行主体,所有功能都在这里执行
  30.         public override void RunScript()
  31.         {
  32.             //显示调试日志,正式用时可以不开启这个
  33.             ShowLogConsole();

  34.             //在手机屏幕上显示运行状态
  35.             ShowStatus("正在打开附近的人..", Color.FromRgb(78, 17, 255));

  36.             //打开附近的人界面,这个具体参数请查看开发博客
  37.             var dic = new Dictionary<string, string> { { "act", "opennearui" } };
  38.             SendIntent(dic);

  39.             //冷却1000毫秒
  40.             Thread.Sleep(5000);

  41.             //定义个int变量用于计数
  42.             var count = 0;

  43.             //定义一个变量为打招呼的内容
  44.             var zhaohu = "hi,你好啊";

  45.             //在手机屏幕上显示运行状态
  46.             ShowStatus("正在获取附近的人“列表”..");

  47.             //获取所有的昵称 com.tencent.mm:id/agg 这个是附近的人列表里的昵称资源id,这个可以通过android sdk里的 uiautomatorviewer.bat 这个工具来获取
  48.             var nicks = GetUiTexts("com.tencent.mm:id/agg");

  49.             Console.WriteLine("获取到的昵称数量:" + nicks.Count);

  50.             //循环给所有昵称打招呼
  51.             for (var index = 0; index < nicks.Count; index++)
  52.             {
  53.                 var nickname = nicks[index];
  54.                 ShowStatus("正在加“" + nickname + "”[累计:" + count + "]..");
  55.                 //查看是否包含这个昵称
  56.                 if (FindObj(nickname).Contains("成功找到元素"))
  57.                 {
  58.                     //包含就点击它
  59.                     if (FindAndCLickObj(nickname).Contains("true"))
  60.                     {
  61.                         //冷却1000毫秒
  62.                         Thread.Sleep(1000);
  63.                         //查找并点击“打招呼”
  64.                         var result = FindAndCLickObjByRegex("打招呼");
  65.                         //输出结果到日志
  66.                         Console.WriteLine(result);
  67.                         //如果点击成功
  68.                         if (result.Contains("true"))
  69.                         {
  70.                             Thread.Sleep(1000);
  71.                             //查找输入框输入内容
  72.                             FindAndInutText("android.widget.EditText", zhaohu, 0);
  73.                             Thread.Sleep(2000);
  74.                             //添加好友
  75.                             FindAndCLickObjByRegex("(加为朋友|发送)");
  76.                             Thread.Sleep(1000);
  77.                             //返回
  78.                             FindAndCLickObj("返回");
  79.                             Thread.Sleep(1000);
  80.                         }
  81.                         else
  82.                         {
  83.                             //如果没有打招呼按钮则直接返回(一般是已经添加过了)
  84.                             FindAndCLickObj("返回");
  85.                         }
  86.                     }
  87.                 }
  88.                 //计数器加1
  89.                 count++;

  90.             }

  91.         }

  92.     }
  93. }
  94. 以上代码就是一个完整的插件方法,同一个dll里可以做多个这样的插件,最后生成插件










  95. 然后就可以运行它了,勾上群控后,也可以象其他脚本一样,对所有手机生效。
复制代码

然后就可以运行它了,勾上群控后,也可以象其他脚本一样,对所有手机生效。
 楼主| 发表于 2019-1-18 17:01:09 | 显示全部楼层
插件的原理其实就是在界面上查找元素然后模拟点击,输入哦,所有只要是手机上的app都可以操作,很多客户都用自定义插件实现了自己需要的功能,讨论组里面已经有一键打开app的demo,其他方法参照通用点击查找方法
 楼主| 发表于 2019-1-18 17:01:26 | 显示全部楼层
建议使用visual studio编译
发表于 2019-2-3 12:14:37 | 显示全部楼层
是福利卡时间按实际发生纠纷拉斯加
发表于 2019-2-23 13:11:17 | 显示全部楼层

为了国美K1 ROOT ROM我所有的帖子都看一遍  你别骗我啊~~~~~~~~~~
发表于 2019-3-11 01:46:04 | 显示全部楼层
现在还有金币 吗
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

技术交流售后群

QQ|小黑屋|手机版|站点找错-建议|AI手机网 |Sitemap



GMT+8, 2024-4-26 16:45 , Processed in 0.147003 second(s), 27 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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