高中生

- 金币
- 708
- 好评
- 0
- 信誉
- 100
|
本帖最后由 qi13200 于 2026-4-30 10:02 编辑
下面这个是检测超速反编译出来的代码,想用算法助手hook不让他检测 不知道对不对帮忙看看
- 类名: e01.g
- 方法名: c
- 参数类型: Lme/ele/hb/trafficsafety/model/PointModel;
- 返回值: void
- 执行动作:拦截执行
下面是反编译的代码
- //
- // Decompiled by Jadx - 509ms
- //
- package e01;
- import android.text.TextUtils;
- import com.alibaba.surgeon.bridge.ISurgeon;
- import com.alibaba.surgeon.instrument.InstrumentAPI;
- import com.taobao.tao.log.TLog;
- import g01.a;
- import g01.e;
- import j01.b;
- import j01.f;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.Iterator;
- import java.util.List;
- import me.ele.foundation.Application;
- import me.ele.hb.trafficsafety.model.PointModel;
- import me.ele.hb.trafficsafety.model.SceneConfig4MNN;
- public class g {
- private static transient ISurgeon $surgeonFlag;
- private final List<e> a;
- private final a<PointModel> b = new a<>(13);
- private List<SceneConfig4MNN> c;
- public g(List<e> list) {
- this.a = list;
- this.c = g(list);
- }
- private double d(List<PointModel> list) {
- ISurgeon iSurgeon = $surgeonFlag;
- if (InstrumentAPI.support(iSurgeon, "4")) {
- return ((Double) iSurgeon.surgeon$dispatch("4", new Object[]{this, list})).doubleValue();
- }
- double d = 0.0d;
- if (list.isEmpty()) {
- return 0.0d;
- }
- Iterator<PointModel> it = list.iterator();
- while (it.hasNext()) {
- d += it.next().getSpeed();
- }
- return d / list.size();
- }
- public void f() {
- ISurgeon iSurgeon = $surgeonFlag;
- if (InstrumentAPI.support(iSurgeon, "3")) {
- iSurgeon.surgeon$dispatch("3", new Object[]{this});
- return;
- }
- for (e eVar : this.a) {
- List c = eVar.c();
- if (c != null && c.size() >= eVar.a()) {
- ArrayList arrayList = new ArrayList(c);
- double d = d(arrayList);
- eVar.c().clear();
- h01.a.a().e(eVar.d(), eVar.b(), eVar.a(), d, arrayList, f.a(this.b.c())).v0(new b(this));
- }
- }
- }
- private List<SceneConfig4MNN> g(List<e> list) {
- ISurgeon iSurgeon = $surgeonFlag;
- if (InstrumentAPI.support(iSurgeon, "1")) {
- return (List) iSurgeon.surgeon$dispatch("1", new Object[]{this, list});
- }
- this.c = new ArrayList();
- for (e eVar : list) {
- this.c.add(new SceneConfig4MNN(eVar.d(), eVar.b()));
- }
- return this.c;
- }
- public void c(PointModel pointModel) {
- String str;
- ISurgeon iSurgeon = $surgeonFlag;
- if (InstrumentAPI.support(iSurgeon, "2")) {
- iSurgeon.surgeon$dispatch("2", new Object[]{this, pointModel});
- return;
- }
- try {
- this.b.a(pointModel);
- HashMap hashMap = new HashMap();
- hashMap.put("config", b.a(this.c));
- hashMap.put("pointModel", b.b(pointModel));
- TLog.logd("TS_HBTrafficSafety", "超速检测 prams config:" + b.a(this.c) + ",pointModel:" + b.b(pointModel));
- if (TextUtils.equals(Application.getApplicationContext().getPackageName(), "me.ele.crowdsource")) {
- str = "hbcrowd_traffic_safety_over_speed_detect";
- } else {
- str = "traffic_safety_over_speed_detect";
- }
- d.b().a(str, hashMap, new a(this, pointModel));
- } catch (Throwable th) {
- TLog.logd("TS_THROWABLE", "addPointModel throwable:" + th);
- }
- }
- public void e() {
- ISurgeon iSurgeon = $surgeonFlag;
- if (InstrumentAPI.support(iSurgeon, "5")) {
- iSurgeon.surgeon$dispatch("5", new Object[]{this});
- return;
- }
- Iterator<e> it = this.a.iterator();
- while (it.hasNext()) {
- it.next().c().clear();
- }
- }
- }
复制代码 |
|