九游游戏中心HD v4.6.8.1版本的 MD5 值为:78c397802cc5ffdcc7f5502ede90502e
以下内容为反编译后的 b.java 源代码,内容仅作参考
package cn.ninegame.framework.router;
import android.os.Bundle;
import android.text.TextUtils;
import cn.ninegame.library.uilib.adapter.webFragment.ForumWebPageFragment;
import java.net.URLEncoder;
import java.util.Iterator;
import java.util.Map;
public final class b {
public static int a(String str) {
f.a(false);
if (a.a(str)) {
cn.ninegame.library.stat.b.b.a("urlJump#JumpUrl isUrlValid " + str, new Object[0]);
h.a().n = true;
h.a().b = URLEncoder.encode(str);
a aVar = new a(str);
Map<String, String> map = aVar.c;
String str2 = aVar.f442a;
String str3 = aVar.b;
if (str2 == null) {
str2 = cn.ninegame.framework.a.b.PAGE_TYPE_BROWSER;
}
if (!TextUtils.isEmpty(str3)) {
if (str3.startsWith("http:") || str3.startsWith("https:")) {
cn.ninegame.library.f.h.a();
if (!cn.ninegame.library.f.h.b(str3)) {
f.c(str3);
h.a().l = true;
h.a().i = "illegal";
return 2;
}
}
a aVar2 = new a(str3);
if (aVar2.f442a != null) {
str2 = aVar2.f442a;
h.a().k = true;
}
}
String str4 = str2;
String a2 = f.a(str4);
cn.ninegame.library.stat.b.b.a("urlJump#PageRouter-DynamicConfigCenter key:%s,DynamicConfig jumpInfo:%s", str4, a2);
h.a().f = a2;
if (!TextUtils.isEmpty(a2)) {
c cVar = new c(a2);
String str5 = cVar.f443a;
if ("ignore".equalsIgnoreCase(str5)) {
h.a().i = "ignore";
return 0;
}
Bundle a3 = f.a(str3, map, cVar.b);
if (cn.ninegame.library.stat.b.b.a()) {
cn.ninegame.library.stat.b.b.a("urlJump#PageRouter-IUrlJumpStrategy pageType:%s,fragment:%s,data:%s,targetUrl:%s", str4, str5, a3, str3);
}
h.a().c = str4;
h.a().d = str5;
if (!TextUtils.isEmpty(str3)) {
h.a().e = URLEncoder.encode(str3);
}
Iterator<cn.ninegame.framework.router.strategy.c> it = cn.ninegame.framework.router.strategy.d.a().f450a.iterator();
while (true) {
if (!it.hasNext()) {
break;
}
cn.ninegame.framework.router.strategy.c next = it.next();
if (next.a(str4, str5, a3, str3)) {
cn.ninegame.library.stat.b.b.a("urlJump# ------***********------ handled by urlJumpStrategy:%s ------***********------", next.getClass().getSimpleName());
h.a().g = next.a();
h.a().o = true;
break;
}
}
f.a(true);
return 1;
}
d.a().b = new String(str);
cn.ninegame.library.dynamicconfig.b.c();
h.a().m = true;
if (!f.b(str4)) {
Bundle bundle = new Bundle();
bundle.putString("url", str);
bundle.putString("url_jump_state", "pagetype_not_found");
cn.ninegame.genericframework.basic.g.a().b().c(ForumWebPageFragment.class.getName(), bundle);
h.a().i = "conf_not_found";
return 3;
}
h.a().i = "conf_not_configured";
return -1;
}
return 0;
}
}