寫在前面
千呼萬喚始出來,京東終于加入了今年雙十二的大戰了,不得不說,京東今年確實有點遲了,不過作為京東的忠實用戶,筆者還是在第一時間熬夜寫出了腳本檔案供大家學習使用
關注微信公眾號“口袋閱打卡小助手”,后臺回復"京東雙十二",獲取腳本/APK檔案(腳本檔案將在文末開源,大家安心哦)

使用教程
打開桌面的京十二圖示

如果是第一次運行會申請權限,請允許
然后頁面也跳轉到開啟無障礙的頁面,手動開啟無障礙模式,具體操作如下圖所示


開啟后重新運行京十二,系統會提示需要懸浮窗權限

這里需要大家手動開啟懸浮窗權限哦,由于不同手機開啟方式不太一樣,大家可以自行百度,筆者使用的是小米8 MIUI12系統,開啟界面如下

開啟即可
到這里,需要設定的地方就都結束了,可以直接運行京十二APP了
不過運行程序中會申請京東應用的打開,大家小手記得點下允許

下面是運行GIF,不過筆者這里除錯代碼的時候都運行結束了,大家看個現象吧

腳本代碼
auto.waitFor();
var height = device.height;
var width = device.width;
toast("開啟2020京東雙十二")
setScreenMetrics(width, height);
// toastLog(isActPage())
start()
function gotoAct() {
log('準備啟動京東APP')
launch('com.jingdong.app.mall')
log('京東APP打開成功')
MySleep(4, 5);
log('準備進入京東雙十二活動頁面,如果頁面有其他彈窗,請手動關閉下')
let actWid = descContains('浮層活動').clickable(true).findOne(500);
click(actWid.bounds().centerX(), actWid.bounds().centerY());
MySleep(4, 5);
if (!isActPage()) {
actWid = descContains('浮層活動').clickable(true).findOne(500);
click(actWid.bounds().centerX(), actWid.bounds().centerY());
MySleep(4, 5);
}
}
function gotoActFromIndex() {
let actWid = descContains('浮層活動').clickable(true).findOne(500);
click(actWid.bounds().centerX(), actWid.bounds().centerY());
MySleep(4, 5);
}
function isIndexPage() {
let actWid = descContains('浮層活動').clickable(true).findOne(500);
if (actWid) {
return true;
} else {
return false;
}
}
function start() {
console.show();
log('運行腳本請先將京東商城APP從后臺殺掉,保證運行程序中出現錯誤較少')
MySleep(4, 6);
gotoAct();
while (!isActPage()) {
log('程式未正確進入活動頁面,請手動進入')
MySleep(2, 3);
}
if (isActPage()) {
log('進入活動頁面成功')
}
finishTask();
lingHB();
alert("任務已完成", "所有任務貌似都做完啦!\n若仍有任務請重新運行噢!");
}
function lingHB() {
if (isActPage()) {
let kaihongbao = text('開紅包').depth(14).clickable(true).findOne(1000);
while (kaihongbao) {
kaihongbao.click();
MySleep(2, 3);
let shouxia = text('開心收下').findOne(1000);
click(shouxia.bounds().centerX(), shouxia.bounds().centerY())
MySleep(2, 3);
kaihongbao = text('開紅包').depth(14).clickable(true).findOne(1000);
}
}
}
function finishTask() {
let taskBS = ['去完成', '去瀏覽']
for (let i = 0; i < taskBS.length; i++) {
lingHB();
let task = taskBS[i];
let taskWid = text(task).depth(14).clickable(true).findOne(1000);
while (taskWid) {
let textWid = className('android.view.View').indexInParent(taskWid.indexInParent() - 2).depth(14).findOne(500);
taskWid.click();
log('去完成:' + textWid.text())
MySleep(2, 3)
let count = 0;
while (count++ < 5) {
MySwipe();
MySleep(0.5, 2);
}
back();
MySleep(2, 3);
if (isIndexPage()) {
gotoActFromIndex();
}
while (!isActPage()) {
back();
MySleep(2, 3);
}
taskWid = text(task).depth(14).clickable(true).findOne(1000);
MySleep(2, 3);
}
}
}
function isActPage() {
let actPage = textContains('db0b3143293bbbb7').depth(14).findOne(500);
if (actPage) {
return true;
} else {
return false;
}
}
function random(min, max) {
return Math.round(Math.random() * (max - min)) + min;
}
function MySwipe() {
var sX = random(100, width - 100);
var sY = random(height / 2 + 100, height - 100);
var eY = random(100, height / 2 - 100);
swipe(sX, sY, sX, eY, random(100, 120));
}
function MySleep(Min, Max) {
sleep(random(Min * 1000, Max * 1000));
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/231589.html
標籤:其他
