b(sessionInfo.a, sessionInfo.f1757a, passwdRedBagInfo.a.string_redbag_id.get().toStringUtf8()); a(sessionInfo, passwdRedBagInfo);
我们先不急看这两个方法是做什么的。再往下看下一个方法,直接就有:
public long[] b(SessionInfo sessionInfo, String str) {
if (QLog.isColorLevel()) {
QLog.d(f2197a, (int) h, "openPasswdRedBagById, id = " + str);
}
openPasswdRedBagById用id打开红包,猜测该id就是我们最早看到的结构里的redPacketId字段。
而该方法同样调用了
b(sessionInfo.a, sessionInfo.f1757a, str); a(sessionInfo, passwdRedBagInfo);
看看这两个方法:
public void a(SessionInfo sessionInfo, PasswdRedBagInfo passwdRedBagInfo) {
if (sessionInfo != null && passwdRedBagInfo != null) {
Object obj = (sessionInfo.a == 0 || sessionInfo.a == h || sessionInfo.a == Action.ACTION_REGISTNEWACCOUNT_COMMITSMS || sessionInfo.a == Action.ACTION_LOGIN) ? g : null;
String str = sessionInfo.f1757a;
String valueOf = String.valueOf(passwdRedBagInfo.a.uint64_creator_uin.get());
if (obj != null) {
str = valueOf.equals(this.f2213d) ? sessionInfo.f1757a : this.f2213d;
}
JSONObject a = QQWalletMsgItemBuilder.a(this.f2203a, sessionInfo, passwdRedBagInfo.a.string_redbag_id.get().toStringUtf8(), passwdRedBagInfo.a.string_authkey.get().toStringUtf8(), str, "appid#1344242394|bargainor_id#1000030201|channel#msg", "graphb", null);
Bundle bundle = new Bundle();
bundle.putString("json", a.toString());
bundle.putString("callbackSn", jbi.a);
Intent intent = new Intent(this.f2200a, PayBridgeActivity.class);
intent.putExtras(bundle);
intent.addFlags(268435456);
intent.putExtra("pay_requestcode", 5);
this.f2200a.startActivity(intent);
}
}
public void b(int i, String str, String str2) {
if (!TextUtils.isEmpty(str2)) {
HashMap hashMap = (HashMap) this.f2209b.get(str2);
if (hashMap != null) {
PasswdRedBagInfo passwdRedBagInfo = (PasswdRedBagInfo) hashMap.get(a(i) + "_" + str);
if (passwdRedBagInfo != null && !passwdRedBagInfo.f4810a) {
passwdRedBagInfo.f4810a = true;
ThreadManager.a(new kmr(this, str2), h, null, true);
}
}
}
}










