robay 发表于 2021-7-13 17:56

代码分析请求指导……感谢……。

1、第一段代码:
各位老师,本人新手一个,正在研究学习中,找到这段关键代码,但是看不太懂,有人能帮忙分析指导下吗?感谢不尽。
package e.c;

import a.c.r;
import a.l.aa;
import a.l.am;
import a.l.u;
import h.a.b.f;
import h.a.b.g;
import j.i.j;
import j.n;
import j.u.s;

public final class a
extends a.c.ab
implements s
{
long a;
h.a.b.h b;
boolean c;
c d;
boolean e;
j.i.a f;
boolean g;



final void a()
{
    this.a = 0L;
    this.c = false;
    this.d = new c(this);
    this.d.start();
}

public final void a(g paramg)
{
    long l = a.b.c;
    int k;
    int j;
    int i;
    if (a.b.N != null)
    {
      k = a.b.N.c;
      j = a.b.N.d;
      i = j;
    }
    for (;;)
    {
      paramg.a(k);
      paramg.c(0, 0, this.ap.c, this.ap.d);
      if (this.b != null) {
      am.a(paramg, this.b, (this.ap.c - this.b.d()) / 2, this.ap.d / 2 - this.b.c());
      }
      k = (int)(l - this.a) / 1000;
      int m = this.ap.c;
      int n = f.a().e() / 2;
      int i1 = this.ap.d * 3 / 4;
      int i2 = m / 6;
      paramg.a(i);
      paramg.e(i2, i1, m - i2 * 2, n + 1);
      paramg.a(j);
      k = (m - i2 * 2) * k / 15;
      j = k;
      if (k > m - i2 * 2) {
      j = m - i2 * 2;
      }
      paramg.c(i2 + 1, i1 + 1, j, n);
      paramg.a(f.a());
      paramg.a(i);
      paramg.a("V6.52 (" + j.b() + ") " + (l - this.a) / 1000L, m / 2, n * 3 / 2 + i1, 17);
      return;
      i = 0;
      k = 16777215;
      j = 0;
    }
}

public final void b_()
{
    invalidate();
    if (this.a == 0L) {
      this.a = a.b.c;
    }
    if (this.g)
    {
      this.g = false;
      this.d.start();
    }
    if ((a.b.c - this.a > 15000L) || (this.d.l)) {
      c();
    }
    do
    {
      do
      {
      return;
      } while (this.d.e == null);
      super.b_();
    } while (this.c);
    c();
}

final void c()
{
    try
    {
      if (this.e)
      {
      this.e = false;
      this.f = new j.i.a();
      this.f.a();
      }
      if ((this.f != null) && (!this.f.a)) {
      return;
      }
      a.b.ac.I();
      if (t() != null) {
      j();
      }
      if (this.d.e == null)
      {
      a.b.Z();
      return;
      }
    }
    catch (Exception localException)
    {
      a.b.X();
      return;
    }
    Object localObject = this.d.e;
    this.d.getClass();
    if (((String)localObject).equals("ok"))
    {
      if (!this.c)
      {
      this.c = true;
      j.k.a.a(null, null, true);
      }
    }
    else
    {
      localObject = this.d.e;
      this.d.getClass();
      if (((String)localObject).equals("warn"))
      {
      if ((1 == h.a(null, "提示", this.d.f, 30000)) && (this.d.g != null))
      {
          localObject = a.b.ac();
          ((a.l.ab)localObject).a("temp/" + String.valueOf(System.currentTimeMillis()) + ".apk");
          if (((a.l.ab)localObject).a() > 0) {
            ((a.l.ab)localObject).d();
          }
          a.b.f("更新下载中,请等待......");
          u.a(0L, this.d.g, (a.l.ab)localObject, new b(this));
      }
      if (!this.c)
      {
          this.c = true;
          j.k.a.a(null, null, true);
      }
      }
      else
      {
      localObject = this.d.e;
      this.d.getClass();
      if (((String)localObject).equals("error"))
      {
          h.a(null, "提示", this.d.f, 30000);
          if (this.d.g != null)
          {
            localObject = a.b.R;
            h.a.d.a.a(this.d.g);
          }
          a.b.R();
          return;
      }
      localObject = this.d.e;
      this.d.getClass();
      ((String)localObject).equals("unknow");
      }
    }
}

public final void e()
{
    c localc = this.d;
    c.a();
}

public final boolean h()
{
    return true;
}

public final int j_()
{
    return 2147483647;
}

public final void k() {}
}
2、第二段代码:想问下老师,第五行代码属于隐藏代码,想追进b.r.ac继续研究,如何操作呀?

public ab()
{
    super("设置");
    b(" 基本设置 ", new Integer(1));
    b(" " + b.r.ac + " ", new Integer(5));
    b(" 语音设置 ", new Integer(16));
    b(" 显示设置 ", new Integer(2));
    b(" GPS设置 ", new Integer(14));
   
}

闷骚小贱男 发表于 2021-7-13 21:03

什么工具?jadx的话能直接右键跳
如果是MT或者NP等APP的话 搜类名试试看

robay 发表于 2021-7-14 11:59

闷骚小贱男 发表于 2021-7-13 21:03
什么工具?jadx的话能直接右键跳
如果是MT或者NP等APP的话 搜类名试试看

用的AndroidKiller_v1.3.1,好像没有右键跳的功能。

闷骚小贱男 发表于 2021-7-14 12:31

robay 发表于 2021-7-14 11:59
用的AndroidKiller_v1.3.1,好像没有右键跳的功能。

搜类名或者左边树形图里面   按目录依次找

北辰没有林安 发表于 2021-7-14 19:27

首先你要做啥

robay 发表于 2021-7-16 09:13

闷骚小贱男 发表于 2021-7-14 12:31
搜类名或者左边树形图里面   按目录依次找

好的,我找找看
页: [1]
查看完整版本: 代码分析请求指导……感谢……。