背景##
github地址:https://github.com/huijimuhe/postman
核心就是android的AccessibilityService整慎,回復(fù)功能api需要23以上版本才行稠通。
其實(shí)很像在做單元測(cè)試辐宾。你可以有n種方式實(shí)現(xiàn)發(fā)帖功能,這只是一個(gè)比較邪火的方式询筏,親測(cè)過一次榕堰,可行。這里我以網(wǎng)易新聞客戶端舉例嫌套。
模擬你在手機(jī)端的物理動(dòng)作:選擇新聞-》回復(fù)-》退回新聞列表-》進(jìn)入下一個(gè)新聞-》回復(fù)-》退回新聞列表刷新-》進(jìn)入-》回復(fù)....
做的不精細(xì)逆屡,只是探究到底可不可行。你可以用在任何APP中自動(dòng)發(fā)消息踱讨,只要沒有驗(yàn)證碼魏蔗。
你要拿來玩,請(qǐng)抱著一顆開心的心情痹筛。
原理##
直接在github上開源的微信紅包插件改的莺治,紅包插件項(xiàng)目和你需要了解的幾篇文章在這里
https://github.com/geeeeeeeeek/WeChatLuckyMoney
http://www.xuebuyuan.com/2061597.html
http://www.xuebuyuan.com/2061595.html
http://developer.android.com/training/accessibility/service.html```
在開始寫代碼前廓鞠,你應(yīng)該至少閱讀了之前幾篇文章和微信紅包插件的代碼,然后還應(yīng)該掌握用Android Device Monitor查看UI樹的工具使用谣旁。(最近開始研究iOS逆向诫惭,這個(gè)確實(shí)比reveal和cycript方便太多)
##粗略實(shí)現(xiàn)步驟##
源碼中注釋已經(jīng)寫的很清楚不再累述,總體思路是通過postDelay來實(shí)現(xiàn)操作的間隔蔓挖,其他的請(qǐng)自己閱讀代碼,我只測(cè)試了下思路是否可行就沒有繼續(xù)延伸下去了馆衔。
1.manifest中申明服務(wù)
2.設(shè)定你需要監(jiān)控的app包名來過濾瘟判,在/res/xml/accessible_service_config.xml中
3.在AccessibleService中實(shí)現(xiàn)對(duì)事件的監(jiān)聽
4.監(jiān)控是否是新聞列表,可以設(shè)定個(gè)頁面刷新閥值
5.監(jiān)控是否是新聞詳情
6.監(jiān)控是否廣告或其他專題角溃,不做操作
7.回復(fù)評(píng)論
##PS##
大家不要留言說我簡單事情做那么復(fù)雜拷获。用物理方式(現(xiàn)在回頭看倒覺得很像單元測(cè)試)實(shí)現(xiàn)回復(fù),真實(shí)性是100%减细,發(fā)貼機(jī)你要倒騰一個(gè)別人家服務(wù)器看不出作弊的匆瓜,估計(jì)更費(fèi)勁吧。
如果你覺得python寫腳本很酷或者直接用fiddler抓包然后寫個(gè)發(fā)帖器都行未蝌。我這還有個(gè)用Tesseract-OCR做驗(yàn)證碼識(shí)別的winform驮吱。
做這個(gè)只是當(dāng)時(shí)覺得紅包插件原理很酷,可以有點(diǎn)其他玩法萧吠,我也確實(shí)倒騰了一個(gè)左冬,也開源了
```https://github.com/huijimuhe/focus```
要是開開腦洞,比如不停的微信給欠債老板發(fā)消息讓還錢啥的纸型,這種插件倒是很能氣死他拇砰,哈哈哈哈。
要搞什么推廣(尤其是賣面膜的)應(yīng)該靠金主狰腌,而不是這個(gè)除破,哈哈哈哈。