gkd icon indicating copy to clipboard operation
gkd copied to clipboard

quickFind 标记错误

Open jiuqianyuan opened this issue 2 years ago • 9 comments

当前规则:

{
      key: 0,
      name: '开屏广告',
      quickFind: true,
      matchTime: 10000,
      actionMaximum: 1,
      resetMatch: 'app',
      rules: '[id="com.byted.pangle:id/tt_splash_skip_btn"]', // 删除旧规则[id$="/tt_splash_skip_btn"],等出现[id="com.byted.pangle.m:id/tt_splash_skip_btn"] 快照再适配
      snapshotUrls: 'https://i.gkd.li/import/13533782',
    },

https://github.com/gkd-kit/subscription/blob/c7dc207bf7f6ebe701981700dee16d0b30420fca/src/apps/com.luna.music.ts#L7-L16

问题快照 日志如下:

17:32:42.949 D/SourceFile [DefaultDispatcher-worker-3, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=com.miui.home, activityId=com.miui.home.launcher.Launcher)
17:32:46.649 D/SourceFile [DefaultDispatcher-worker-1, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=com.miui.securitycenter, activityId=com.miui.appmanager.ApplicationsDetailsActivity)
17:32:47.770 D/SourceFile [DefaultDispatcher-worker-4, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=com.miui.home, activityId=null)
17:32:48.240 D/SourceFile [DefaultDispatcher-worker-8, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=com.miui.home, activityId=com.miui.home.launcher.Launcher)
17:32:50.246 D/SourceFile [DefaultDispatcher-worker-5, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: args[0] = TopActivity(appId=com.luna.music, activityId=com.luna.biz.main.main.MainActivity)
args[1] = subsId:0, gKey=0, gName:开屏广告, ruleIndex:0, rKey:null, active:true
args[2] = subsId:0, gKey=2, gName:VIP弹窗, ruleIndex:0, rKey:null, active:true

17:32:52.651 D/SourceFile [DefaultDispatcher-worker-8, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: args[0] = TopActivity(appId=com.luna.music, activityId=com.luna.biz.ad.AdActivity)
args[1] = subsId:0, gKey=0, gName:开屏广告, ruleIndex:0, rKey:null, active:true
args[2] = subsId:0, gKey=2, gName:VIP弹窗, ruleIndex:0, rKey:null, active:true

17:32:54.747 D/SourceFile [DefaultDispatcher-worker-3, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=com.android.systemui, activityId=null)
17:32:55.310 D/SourceFile [DefaultDispatcher-worker-7, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: args[0] = TopActivity(appId=com.luna.music, activityId=com.luna.biz.ad.AdActivity)
args[1] = subsId:0, gKey=0, gName:开屏广告, ruleIndex:0, rKey:null, active:true
args[2] = subsId:0, gKey=2, gName:VIP弹窗, ruleIndex:0, rKey:null, active:true

17:32:55.653 D/ComplexSnapshotKt [DefaultDispatcher-worker-7, li.songe.gkd.data.ComplexSnapshotKt.createComplexSnapshot(ComplexSnapshotKt.java:144)]: args[0] = TopActivity(appId=com.luna.music, activityId=com.luna.biz.ad.AdActivity)
args[1] = 快照收集:28, 耗时:198ms

17:32:59.014 D/SourceFile [DefaultDispatcher-worker-3, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: args[0] = TopActivity(appId=com.luna.music, activityId=com.luna.biz.main.main.MainActivity)
args[1] = subsId:0, gKey=0, gName:开屏广告, ruleIndex:0, rKey:null, active:true
args[2] = subsId:0, gKey=2, gName:VIP弹窗, ruleIndex:0, rKey:null, active:true

17:33:03.386 D/SourceFile [DefaultDispatcher-worker-7, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=com.miui.home, activityId=null)
17:33:04.125 D/SourceFile [DefaultDispatcher-worker-5, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=li.songe.gkd, activityId=li.songe.gkd.MainActivity)
17:33:13.133 D/SourceFile [DefaultDispatcher-worker-7, li.songe.gkd.service.GkdAbService$1$7$1.emit(SourceFile:1)]: TopActivity(appId=com.miui.home, activityId=null)

jiuqianyuan avatar Dec 08 '23 10:12 jiuqianyuan

请问移除 quickFind 是否仍然存在此问题?

lisonge avatar Dec 08 '23 10:12 lisonge

请问移除 quickFind 是否仍然存在此问题?

已经移除在测试,但不是必现,要花时间观察。 另问一下,快速查找没找到,是否会进行一次遍历查找,如果会,那quickFind应该只影响查找速率吧

jiuqianyuan avatar Dec 08 '23 10:12 jiuqianyuan

请问移除 quickFind 是否仍然存在此问题?

移除quickFind恢复正常

jiuqianyuan avatar Dec 08 '23 10:12 jiuqianyuan

https://github.com/gkd-kit/gkd/commit/3634859e51c70f22ff59e873f11d81a859c05bf4

lisonge avatar Dec 08 '23 14:12 lisonge

3634859

不删除quickFind,使用以下最新版apk依然无效

  • https://github.com/gkd-kit/gkd/actions/runs/7143454833

jiuqianyuan avatar Dec 08 '23 18:12 jiuqianyuan

只是快照里的 quickFind 标识错误,查询没有问题

正确的快照是 https://i.gkd.li/import/13621737

lisonge avatar Dec 08 '23 23:12 lisonge

https://i.gkd.li/import/13533782

快速查找没找到,是否会进行一次遍历查找

快速查找没找到,不会再进行一次遍历查找吗

jiuqianyuan avatar Dec 09 '23 06:12 jiuqianyuan

不会,遍历查找会导致规则阻塞

lisonge avatar Dec 09 '23 07:12 lisonge

只是快照里的 quickFind 标识错误,查询没有问题

正确的快照是 https://i.gkd.li/import/13621737

一直以为新版本支持第三方广告SDK的快速查找,所以在多个app的开屏规则[id="com.byted.pangle:id/tt_splash_skip_btn"]中都设置了quickFind,希望大佬批量修复一下,可能不止我一个人这么写

jiuqianyuan avatar Dec 09 '23 07:12 jiuqianyuan