perf: 拼多多 (#430)

This commit is contained in:
AIsouler
2024-10-26 13:26:48 +08:00
parent ae99dade43
commit 054ad1a4ce
2 changed files with 60 additions and 273 deletions

View File

@@ -573,6 +573,11 @@ const appDeprecatedKeys: RawDeprecatedKeysSetting[] = [
name: '运动世界校园', name: '运动世界校园',
deprecatedKeys: [2, 3, 4, 9], deprecatedKeys: [2, 3, 4, 9],
}, },
{
id: 'com.xunmeng.pinduoduo',
name: '拼多多',
deprecatedKeys: [3, 4, 5, 7, 13, 14, 15, 18],
},
]; ];
const map: Map<string, number[]> = new Map(); const map: Map<string, number[]> = new Map();

View File

@@ -10,95 +10,36 @@ export default defineGkdApp({
matchTime: 10000, matchTime: 10000,
actionMaximum: 1, actionMaximum: 1,
resetMatch: 'app', resetMatch: 'app',
actionMaximumKey: 0,
rules: [ rules: [
{
key: 0,
matches:
'[text*="新版本"] - ImageView < LinearLayout < LinearLayout + ImageButton[clickable=true]',
snapshotUrls: 'https://i.gkd.li/i/12642017',
},
{ {
key: 1, key: 1,
matches: '@Image + Image +n [text="立即升级"]', matches: '@Image[clickable=true][text="webp"] +5 [text="立即升级"]',
snapshotUrls: 'https://i.gkd.li/i/13195645', snapshotUrls: 'https://i.gkd.li/i/13195645',
}, },
], ],
}, },
{ {
key: 2, key: 2,
name: '全屏广告-首页优惠弹窗',
rules: [
{
key: 0,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'FrameLayout > FrameLayout > RelativeLayout[childCount=2] > @ImageView[id!=null][clickable=true][visibleToUser=true] + ImageView',
snapshotUrls: 'https://i.gkd.li/i/12642015',
},
{
key: 1,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'View[id=null] > TextView + View > View +(4) View[clickable=true] > Image[id=null]',
snapshotUrls: 'https://i.gkd.li/i/12642019',
},
{
key: 2,
action: 'back',
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: '[text="开心收下"]',
snapshotUrls: [
'https://i.gkd.li/i/13761182',
'https://i.gkd.li/i/15360330',
],
},
{
key: 3,
fastQuery: true,
forcedTime: 3000,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'@ImageView[visibleToUser=true] < * < * +(1,2) * [text="去抢购"]',
snapshotUrls: [
'https://i.gkd.li/i/15032649',
'https://i.gkd.li/i/15076322',
],
},
],
},
{
key: 3,
name: '全屏广告-弹窗广告', name: '全屏广告-弹窗广告',
rules: [ rules: [
{
key: 0,
activityIds: 'com.xunmeng.pinduoduo.activity.NewPageActivity',
matches:
'TextView[text="免单特权"] < View < View +(5) View[clickable=true] > Image[id=null]',
snapshotUrls: 'https://i.gkd.li/i/12642032',
},
{
key: 1,
activityIds: 'com.xunmeng.pinduoduo.activity.NewPageActivity',
matches:
'TextView[text$="抽免单"] -(2) Image[id=null][clickable=true]',
snapshotUrls: 'https://i.gkd.li/i/12642038',
},
{
key: 2,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'[text="多多免单"] >5 View[childCount=2] > Image[index=0][clickable=true][visibleToUser=true]',
snapshotUrls: 'https://i.gkd.li/i/14310581',
},
{ {
key: 3, key: 3,
fastQuery: true, fastQuery: true,
action: 'back',
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity', activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: matches:
'@ImageView[visibleToUser=true] < * +2 * >3 [text="立即抽免单"]', '[text="开心收下" || text="去抢购" || text="立即抽免单" || text="去刮奖" || text="立即领取" || text="去领大额金币" || text="送你大额现金"][visibleToUser=true]',
snapshotUrls: 'https://i.gkd.li/i/14614135', snapshotUrls: [
'https://i.gkd.li/i/13625441',
'https://i.gkd.li/i/13761182',
'https://i.gkd.li/i/13944165',
'https://i.gkd.li/i/14456101',
'https://i.gkd.li/i/14596990',
'https://i.gkd.li/i/14614135',
'https://i.gkd.li/i/15360330',
'https://i.gkd.li/i/15032649',
'https://i.gkd.li/i/15076322',
],
}, },
{ {
key: 4, key: 4,
@@ -123,80 +64,20 @@ export default defineGkdApp({
}, },
{ {
key: 6, key: 6,
activityIds: 'com.xunmeng.pinduoduo.activity.NewPageActivity',
matches:
'[text="百亿补贴"] > View[childCount=2] > Image[childCount=0][text=" "]',
snapshotUrls: 'https://i.gkd.li/i/15846032',
},
],
},
{
key: 4,
name: '全屏广告-红包弹窗',
rules: [
{
key: 0,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity', activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: matches: '[text="上滑看视频得现金"] - [text="webp"]',
'@ImageView[id=null][clickable=true] < ViewGroup + ViewGroup > ImageView + ViewGroup > ImageView +(2) FrameLayout > TextView[text="专属现金红包"]', snapshotUrls: 'https://i.gkd.li/i/13809053',
snapshotUrls: 'https://i.gkd.li/i/12642023',
}, },
{ {
key: 1, key: 7,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity', matchTime: 10000,
fastQuery: true, actionMaximum: 1,
resetMatch: 'app',
activityIds: '.ui.activity.HomeActivity',
matches: matches:
'@ImageView[clickable=true] < ViewGroup + ViewGroup >n [text="送你大额现金"]', '@ViewGroup[childCount=1][clickable=true] < ViewGroup[childCount=2] < [childCount=1] < [vid="pdd"][childCount=1] < [childCount=1] < [vid="pdd"][childCount=1] < [childCount=1] < [childCount=1] < [childCount=1] <3 [parent=null]',
snapshotUrls: 'https://i.gkd.li/i/13625441', exampleUrls: 'https://e.gkd.li/f74b5f58-e518-4e33-bbb4-0bf28e2b79d8',
}, snapshotUrls: 'https://i.gkd.li/i/17528782',
{
key: 2,
activityIds: 'com.xunmeng.pinduoduo.activity.NewPageActivity',
matches:
'[text="百亿补贴"] > View > View > @View[clickable=true] +n [text^="立即领取"]',
snapshotUrls: 'https://i.gkd.li/i/13669963',
},
{
key: 3,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'[id="com.xunmeng.pinduoduo:id/pdd"] View[childCount=3][clickable=false] > Image[index=0]',
snapshotUrls: 'https://i.gkd.li/i/13944160',
},
{
key: 4,
name: '刮奖弹窗',
fastQuery: true,
action: 'back',
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: '[text="去刮奖"][visibleToUser=true]',
snapshotUrls: 'https://i.gkd.li/i/14456101',
},
],
},
{
key: 5,
name: '全屏广告-多多买菜弹窗',
desc: '点击关闭',
rules: [
{
key: 0,
activityIds: 'com.xunmeng.pinduoduo.activity.NewPageActivity',
matches:
'View[childCount=1] > Button[id=null][text="关闭弹窗"][clickable=true]',
exampleUrls:
'https://m.gkd.li/57941037/b6b638d0-9e99-4e4a-89ea-f2539a46cf56',
snapshotUrls: 'https://i.gkd.li/i/12642053',
},
{
key: 1,
fastQuery: true,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'@ViewGroup[clickable=true][visibleToUser=true] - * > [index=2] >2 [text="连领7天 今日可领"]',
exampleUrls:
'https://m.gkd.li/57941037/059c82cd-cc70-4611-b3ab-c3c6c7e35f22',
snapshotUrls: 'https://i.gkd.li/i/14596990',
}, },
], ],
}, },
@@ -210,45 +91,22 @@ export default defineGkdApp({
key: 0, key: 0,
matches: matches:
'@TextView[id=null][clickable=true] + Image[id=null][text="webp"]', '@TextView[id=null][clickable=true] + Image[id=null][text="webp"]',
exampleUrls: exampleUrls: 'https://e.gkd.li/20f77125-b223-4d65-b61e-826871e0032b',
'https://m.gkd.li/57941037/bfe9f8d5-2c13-4dbf-a0b3-a8347068afa6',
snapshotUrls: 'https://i.gkd.li/i/12642058', snapshotUrls: 'https://i.gkd.li/i/12642058',
}, },
{ {
key: 1, key: 1,
matches: matches:
'@TextView[id=null][clickable=true] + View > Image[text="webp"]', '[id="unactive_watch_video_pendant"] > TextView[clickable=true][text=""][childCount=0]',
exampleUrls:
'https://m.gkd.li/57941037/bfe9f8d5-2c13-4dbf-a0b3-a8347068afa6',
snapshotUrls: 'https://i.gkd.li/i/12642058', snapshotUrls: 'https://i.gkd.li/i/12642058',
}, },
{ {
key: 2, key: 2,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity', activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: matches:
'RelativeLayout[childCount=2] > RelativeLayout + @FrameLayout[childCount=1][clickable=true][visibleToUser=true][text=null][vid="pdd"] > ImageView[childCount=0][visibleToUser=true]', 'RelativeLayout[childCount=2] > RelativeLayout[vid="pdd"] + @FrameLayout[childCount=1][clickable=true][visibleToUser=true][text=null][vid="pdd"] > ImageView[childCount=0][visibleToUser=true]',
exampleUrls: exampleUrls: 'https://e.gkd.li/0f850878-2b6a-46c7-86aa-28329df0993c',
'https://m.gkd.li/57941037/e1d297dd-b555-4c2c-b7f6-2756aadb6006', snapshotUrls: 'https://i.gkd.li/i/15140800',
snapshotUrls: [
'https://i.gkd.li/i/15140800',
'https://i.gkd.li/i/16776452', // 避免误触
],
},
],
},
{
key: 7,
name: '全屏广告-多多视频每日签到弹窗',
desc: '点击关闭',
rules: [
{
fastQuery: true,
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'ImageView < ViewGroup < @ViewGroup[clickable=true] +2 * >7 [text="领取今日现金"]',
exampleUrls:
'https://m.gkd.li/57941037/29876836-b365-48c0-b129-4560ca193776',
snapshotUrls: 'https://i.gkd.li/i/13804657',
}, },
], ],
}, },
@@ -261,15 +119,14 @@ export default defineGkdApp({
fastQuery: true, fastQuery: true,
activityIds: 'com.xunmeng.pinduoduo.activity.NewPageActivity', activityIds: 'com.xunmeng.pinduoduo.activity.NewPageActivity',
matches: '[vid="iv_float_window_close"]', matches: '[vid="iv_float_window_close"]',
exampleUrls: exampleUrls: 'https://e.gkd.li/f81a45e4-09b4-498f-be72-ca84cdd0db83',
'https://m.gkd.li/57941037/560162d0-940d-413a-8f2e-e40c21c976e2',
snapshotUrls: 'https://i.gkd.li/i/14549415', snapshotUrls: 'https://i.gkd.li/i/14549415',
}, },
], ],
}, },
{ {
key: 9, key: 9,
name: '分段广告-多多视频每日自动签到', name: '功能类-多多视频每日自动签到',
fastQuery: true, fastQuery: true,
matchTime: 10000, matchTime: 10000,
actionMaximum: 1, actionMaximum: 1,
@@ -278,19 +135,19 @@ export default defineGkdApp({
{ {
key: 0, key: 0,
name: '自动签到', name: '自动签到',
action: 'clickCenter', matches:
matches: 'FrameLayout > TextView[text="领取今日现金"]', '@[clickable=true] >2 [text="领取今日现金"][visibleToUser=true]',
snapshotUrls: [ snapshotUrls: [
'https://i.gkd.li/i/13201422', 'https://i.gkd.li/i/13201422',
'https://i.gkd.li/i/13372677', 'https://i.gkd.li/i/13372677',
], ],
}, },
{ {
key: 1,
preKeys: [0], preKeys: [0],
key: 1,
name: '在签到后关闭弹窗', name: '在签到后关闭弹窗',
action: 'clickCenter', matches:
matches: 'FrameLayout > TextView[text="明日继续来领"]', '@[clickable=true] >2 [text="明日继续来领"][visibleToUser=true]',
snapshotUrls: 'https://i.gkd.li/i/13205634', snapshotUrls: 'https://i.gkd.li/i/13205634',
}, },
], ],
@@ -303,16 +160,18 @@ export default defineGkdApp({
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity', activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
rules: [ rules: [
{ {
key: 0,
matches: [ matches: [
'TextView[text="正在直播"]', 'TextView[text="正在直播"]',
'@ImageView[desc="返回"] <4 ViewGroup <<n FrameLayout[id="android:id/content"]', '@ImageView[desc="返回"] <4 ViewGroup < * < * < [id="android:id/content"]',
], ],
snapshotUrls: 'https://i.gkd.li/i/13446291', snapshotUrls: 'https://i.gkd.li/i/13446291',
}, },
{ {
key: 1,
matches: [ matches: [
'TextView[text="查看更多低价商品"]', 'TextView[text="查看更多低价商品"]',
'@ImageView[desc="返回"] <4 ViewGroup <<n FrameLayout[id="android:id/content"]', '@ImageView[desc="返回"] <4 ViewGroup < * < * < [id="android:id/content"]',
], ],
snapshotUrls: 'https://i.gkd.li/i/13791119', snapshotUrls: 'https://i.gkd.li/i/13791119',
}, },
@@ -320,14 +179,18 @@ export default defineGkdApp({
}, },
{ {
key: 11, key: 11,
name: '功能类-自动点击原图', name: '功能类-发送图片时自动勾选原图',
activityIds:
'com.xunmeng.pinduoduo.app_album.album.MultiImageSelectorActivity',
fastQuery: true, fastQuery: true,
rules: '@[text="原图"][checked=false] + [text="发送"]', rules: [
snapshotUrls: [ {
'https://i.gkd.li/i/13925378', // checked=false activityIds:
'https://i.gkd.li/i/13925380', // checked=true 'com.xunmeng.pinduoduo.app_album.album.MultiImageSelectorActivity',
matches: '@[text="原图"][checked=false] + [text="发送"]',
snapshotUrls: [
'https://i.gkd.li/i/13925378', // checked=false
'https://i.gkd.li/i/13925380', // checked=true
],
},
], ],
}, },
{ {
@@ -342,10 +205,7 @@ export default defineGkdApp({
'com.xunmeng.pinduoduo.activity.NewPageMaskActivity', 'com.xunmeng.pinduoduo.activity.NewPageMaskActivity',
'com.xunmeng.pinduoduo.ui.activity.HomeActivity', 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
], ],
matches: [ matches: 'Button[text="关闭弹窗"][clickable=true]',
'[text^="查看订单详情"]',
'[text="关闭弹窗"][clickable=true]',
],
snapshotUrls: [ snapshotUrls: [
'https://i.gkd.li/i/13927594', 'https://i.gkd.li/i/13927594',
'https://i.gkd.li/i/14434154', 'https://i.gkd.li/i/14434154',
@@ -353,74 +213,15 @@ export default defineGkdApp({
'https://i.gkd.li/i/13308175', 'https://i.gkd.li/i/13308175',
], ],
}, },
{
key: 1,
name: '拼单返现弹窗',
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: [
'[text="拼单返现"]',
'WebView[text="拼多多"] >3 View[index=0] > Image[clickable=true][visibleToUser=true][childCount=0]',
],
snapshotUrls: 'https://i.gkd.li/i/14549422',
},
{
key: 2,
activityIds: 'com.xunmeng.pinduoduo.activity.NewPageMaskActivity',
matches: [
'[text="赶快邀请好友来拼单吧"]',
'[text$="下单成功"] + Image[visibleToUser=true]',
],
snapshotUrls: 'https://i.gkd.li/i/15025702',
},
],
},
{
key: 13,
name: '全屏广告-金币翻倍特权弹窗',
desc: '点击X',
rules: [
{
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'[id="com.xunmeng.pinduoduo:id/pdd"] ViewGroup[childCount=4] > ImageView[clickable=true][desc=null]',
snapshotUrls: 'https://i.gkd.li/i/13944165',
},
],
},
{
key: 14,
name: '全屏广告-红包助手打款弹窗',
rules: [
{
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'[id="com.xunmeng.pinduoduo:id/pdd"][childCount=1] >4 ImageView[id=null][clickable=true]',
snapshotUrls: [
'https://i.gkd.li/i/13972251',
'https://i.gkd.li/i/14341073', // clickable=true避免在此页面误触
],
},
],
},
{
key: 15,
name: '全屏广告-多多视频-上滑看视频得现金弹窗',
desc: '点击关闭',
rules: [
{
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: '[text="上滑看视频得现金"] - [text="webp"]',
snapshotUrls: 'https://i.gkd.li/i/13809053',
},
], ],
}, },
{ {
key: 16, key: 16,
name: '青少年模式', name: '青少年模式',
desc: '点击我知道了', desc: '点击[我知道了]',
fastQuery: true,
actionMaximum: 1, actionMaximum: 1,
resetMatch: 'app', resetMatch: 'app',
fastQuery: true,
rules: [ rules: [
{ {
matches: matches:
@@ -458,24 +259,6 @@ export default defineGkdApp({
}, },
], ],
}, },
{
key: 18,
name: '全屏广告-看视频得现金弹窗',
desc: '点击关闭',
rules: [
{
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches:
'[vid="pdd"] > FrameLayout > ViewGroup > ViewGroup > ViewGroup > ViewGroup[childCount=3] > ViewGroup[index=0] > ImageView[clickable=true]',
exampleUrls:
'https://m.gkd.li/57941037/532b339f-066c-4b35-9ca7-cb3821dcea5f',
snapshotUrls: [
'https://i.gkd.li/i/14305741',
'https://i.gkd.li/i/14317199',
],
},
],
},
{ {
key: 19, key: 19,
name: '全屏广告-[个性化推荐]弹窗', name: '全屏广告-[个性化推荐]弹窗',
@@ -487,8 +270,7 @@ export default defineGkdApp({
{ {
activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity', activityIds: 'com.xunmeng.pinduoduo.ui.activity.HomeActivity',
matches: ['[text="个性化推荐未开启"]', '[text="取消"]'], matches: ['[text="个性化推荐未开启"]', '[text="取消"]'],
exampleUrls: exampleUrls: 'https://e.gkd.li/816070f2-035d-4702-87e3-441cca8b5430',
'https://m.gkd.li/57941037/0dd45b10-e323-4ab0-8135-19f45115487a',
snapshotUrls: 'https://i.gkd.li/i/14964851', snapshotUrls: 'https://i.gkd.li/i/14964851',
}, },
], ],