android UiAutomator如何向所有微信好友发送一条“你好,***”开头的祝福消息

原创 2017年02月15日 10:25:56

在刚过去的情人节里,在已经过去的元宵节里,还有过去一段时间的除夕新年等节日里,都需要向好友发送一条祝福消息,最好是附带上对方的姓名,这样显得不是群发的,故写了一个方法来完成这件事情。同样的方法也可以用到短信中去。

public void sendMassageToAllFriend() throws UiObjectNotFoundException {
//给微信好友发一条祝福信息
clean();
UiDevice.getInstance().pressHome();
//打开微信
getUiObjectByText("微信").clickAndWaitForNewWindow();
getUiObjectByText("通讯录").clickAndWaitForNewWindow();
//建立一个朋友名字的数组
HashSet<String> friends = new HashSet<String>();
//滚动到顶部
getUiScrollableByResourceId("com.tencent.mm:id/hr").scrollToBeginning(5);
boolean key = true;
boolean one = false;
while(key){
//获取当前页面好友个数
int num = getUiScrollableByResourceId("com.tencent.mm:id/hr").getChildCount();
//把好友的姓名添加到数组中
for(int i=0;i<num-1;i++){
UiObject friend = getUiObjectByResourceIdIntance("com.tencent.mm:id/i_", i);
String name =  friend.getText();
//排除微信团队和文件传输助手两个好友可以以后在数组中删除
if (name.equalsIgnoreCase("微信团队") || name.equalsIgnoreCase("文件传输助手")) {
outputNotable(name);
}else{
friends.add(name);
}
}
//为了滚动到底部时,再次执行上面的循环把余下的好友也添加到数组
if (one) {
break;
}
//滚动到底部时one改为true
if (!getUiScrollableByResourceId("com.tencent.mm:id/hr").scrollForward()) {
one = true;
}
}
//这个是先转换成String[]数组在向每个好友发送消息
String[] de =  (String[])(friends.toArray(new String[0]));
for(int i=0;i<10;i++){
outputNotable(de[i]);
sendMassageToFriend(de[i], "你好,"+de[i]+"祝你情人节快乐!");
}
//这个直接遍历friends中的名字发送消息
for(String x : friends){
sendMassageToFriend(x, "你好,"+x+"祝你情人节快乐!");
}
}

有一个问题就是你的好友必须超过一定的数量,大概是7个左右,不然会报错。由于短信发送不敢轻易尝试,暂且放弃了。

Python & Adb Shell & UiAutomator -- 微信自动发朋友圈/点赞/...

自动点击特定元素 通过python调用adb命令实现用元素名称、id、class定位元素 http://blog.csdn.net/gb112211/article/details/33730221 ...
  • eofguo
  • eofguo
  • 2016-10-31 13:45:31
  • 6257

利用UiAutomator和httpclient写自动发表笑话到微信朋友圈功能

本人在学习了httpclient之后,一直在想如何把获取到的信息发送到微信朋友圈,今天经过不断尝试,终于完成了这个功能。自动发笑话到朋友圈。中间使用到了图灵机器人的api和alertover的推送ap...
  • Fhaohaizi
  • Fhaohaizi
  • 2017-08-12 19:16:57
  • 650

android UiAutomator一个充值微信支付页面的用例

本人在学习UiAutomator的时候,遇到充值功能需要写一个微信充值的用例,感觉用了新的方法写起来比较简单,看起来也比较容易理解。分享出来供大家参考。 public void testTest() ...
  • Fhaohaizi
  • Fhaohaizi
  • 2017-04-07 19:36:06
  • 1092

Anroid的uiautomator实现控件长按的效果

经过测试,UiObject的longClick无法实现在android.widget.TextView长按的效果。经过查找资料与实际测试,发现原地swipe可以用来模拟长按,代码如下: priv...
  • zhangmiaoping23
  • zhangmiaoping23
  • 2016-08-30 15:50:49
  • 1881

微信跳一跳高分系列二:adb shell 中的常用命令

input 命令 > adb [-s device] shell input [source>] [...] The sources are: mouse keybo...
  • w_yunlong
  • w_yunlong
  • 2018-01-20 01:52:01
  • 403

微信的消息内容

消息内容微信一般消息内容{ "FromUserName": "", "ToUserName": "", "Content": "", "StatusNotifyUser...
  • TH_NUM
  • TH_NUM
  • 2017-02-18 11:12:51
  • 3948

[原创]Xposed__给微信加个按钮

转:https://bbs.pediy.com/thread-223292.htm 严重声明本文的意图只有一个就是通过分析app学习更多的逆向技术,如果有人利用本文知识和技术进行非法操作进行牟...
  • zhangmiaoping23
  • zhangmiaoping23
  • 2017-12-19 15:32:16
  • 703

android UiAutomator写一个给微信朋友圈所有动态点赞的用例

本人在是呀UiAutomator的过程中,突发奇想,写一个自动给朋友圈点赞的用例,经过尝试,终于成功,效果不错。这个方法用的是for循环,也可以用while循环,加一条判断如果本页全部点赞就跳出来这样...
  • Fhaohaizi
  • Fhaohaizi
  • 2017-08-15 15:16:54
  • 835

微信自动发朋友圈源码

目前微信营销行业主要有两大神器,云控和群控,对于群控大家可能多少有些了解。总所周知,群控就是一种通过系统,实现一台PC控制百台手机微信的新媒体的一种营销软件,而云控系统核心功能与群控大致一样,主要区别...
  • Sunshine20171129
  • Sunshine20171129
  • 2017-11-29 16:38:59
  • 3400

微信开发 自动转发朋友圈 自动添加好友等等

本人有幸在上家公司做外包的时候接触了这个项目,专门针对微信做的一些功能,有自动删除僵尸粉,自动发朋友圈,自动添加好友,自动同意添加等等很多功能。  这时候可能会有一些人会问:难道你有微信的源码吗?不然...
  • lap602651857
  • lap602651857
  • 2018-01-11 11:22:51
  • 1516
收藏助手
不良信息举报
您举报文章:android UiAutomator如何向所有微信好友发送一条“你好,***”开头的祝福消息
举报原因:
原因补充:

(最多只允许输入30个字)