May 2, 2019
TXD
Класс отвечающий за отмену заказа, небезызвестный:
\smali\com\pk\taxoid\a\c.smali
Кнопка отмены заказа:
this.g
Ей присваивается слушатель нажатий, который через лямбду вызывает метод e() из этого же класса:
private /* synthetic */ void e(View view) { this.z.a(getString(R.string.process_query)); // Присвоение текста уведомления об обработке запроса this.z.show(); // Показ уведомления this.b.a(this.A, "cancel"); // Что-то делаем с объектом "cancel" }
Рассмотрим последнюю строчку:
this.b.a(this.A, "cancel"); // Что-то делаем с объектом "cancel"
Что такое this.A
? Переходим в начало класса и видим объявление:
private b A;
Объект this.b
является ни чем иным как классом:
/smali/com/pk/taxoid/network/c/b.smali
Нужный метод a()
public void a(com.pk.taxoid.c.b.a aVar, String str) { try { JSONObject jSONObject = new JSONObject(); jSONObject.put("action", "comment"); StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append(com.pk.taxoid.app.a.h); stringBuilder.append(String.format("[%s][%s]", new Object[]{aVar.e(), aVar.f()})); jSONObject.put("who", stringBuilder.toString()); stringBuilder = new StringBuilder(); stringBuilder.append(String.format("[L = %s][P = %s]\n\n", new Object[]{aVar.a(), aVar.b()})); stringBuilder.append(str); jSONObject.put("data", stringBuilder.toString()); a(jSONObject);// Махинация с рандомными числами, о которой я говорил в предыдущих статьях } catch (JSONException e) { e.printStackTrace(); } }
В параметры метода передаётся этот объект:
package com.pk.taxoid.c.b; import java.io.Serializable; public final class a implements Serializable { private String a; private String b; private String c; private String d; private String e; private String f; private String g; private String h; private boolean i = false; private boolean j = false; private boolean k = true; private int l = 0; public String a() { return this.a; } public void a(int i) { this.l = i * 1000; } //... //... }
Я поменял 1000 на 10, но нужен тест. Если это не поможет, я даже уже не знаю что делать...
Также при запросе на сервер в ответе приходит некое block_time со значением 600, я сделал так, что при получении этого значения, оно делится на 10. Опять же. Нужен тест.