九州仙境 v3.0.0版本的 MD5 值为:7b5ce5daab0f4a38a386ae4309157477
以下内容为反编译后的 MainActivity.java 源代码,内容仅作参考
package com.xiaoxionggame.tjqy;
import android.os.Bundle;
import android.os.Message;
import android.provider.Settings;
import android.text.TextUtils;
import android.util.Log;
import android.view.Window;
import android.webkit.JavascriptInterface;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import androidx.appcompat.app.AppCompatActivity;
import com.alipay.sdk.app.PayTask;
import com.github.gzuliyujiang.oaid.DeviceIdentifier;
import com.google.gson.Gson;
import com.kwai.monitor.payload.TurboHelper;
import com.tencent.mm.opensdk.modelpay.PayReq;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import com.xiaoxionggame.App;
import com.xiaoxionggame.tjqy.wxapi.AppConst;
import com.xiaoxionggame.tjqy.wxapi.JavaBean;
import com.xiaoxionggame.tjqy.wxapi.JsonUtil;
import com.xiaoxionggame.tjqy.wxapi.LocalDataUtil;
import com.xiaoxionggame.tjqy.wxapi.PolicyDialog;
import com.xiaoxionggame.tjqy.wxapi.WXEntryActivity;
import com.xiaoxionggame.tjqy.wxapi.WxBean;
import com.xiaoxionggame.tjqy.wxapi.WxPayBean;
import com.zhy.http.okhttp.OkHttpUtils;
import com.zhy.http.okhttp.callback.StringCallback;
import java.util.UUID;
import okhttp3.Call;
import org.json.JSONException;
import org.json.JSONObject;
import org.simple.eventbus.EventBus;
import org.simple.eventbus.Subscriber;
public class MainActivity extends AppCompatActivity {
public static final int FAILE = 2;
public static final int PAYING = 3;
public static final int SUCCESS = 1;
private String Num;
private String deviceId;
private JavaBean javaBean;
String orderInfo;
String path = "https://jzad.yyggame.cn/#/index?channel=";
Runnable payRunnable = new Runnable() {
@Override
public void run() {
new PayTask(MainActivity.this).payV2(MainActivity.this.orderInfo, true);
new Message();
}
};
WebView webView;
private IWXAPI wxapi;
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
Window window = getWindow();
window.setFlags(1024, 1024);
requestWindowFeature(1);
window.getDecorView().setSystemUiVisibility(6);
setContentView(R.layout.activity_main);
IWXAPI createWXAPI = WXAPIFactory.createWXAPI(this, AppConst.WEIXIN_APP_ID, true);
this.wxapi = createWXAPI;
createWXAPI.registerApp(AppConst.WEIXIN_APP_ID);
EventBus.getDefault().register(this);
final PolicyDialog policyDialog = new PolicyDialog(this);
final LocalDataUtil localDataUtil = new LocalDataUtil(this);
if (localDataUtil.getPolicy()) {
policyDialog.dismiss();
} else {
policyDialog.show();
}
policyDialog.setOnClick(new PolicyDialog.setOnClick() {
@Override
public void onClick(String str) {
if (str.equals("0")) {
localDataUtil.SavePolicy(true);
policyDialog.dismiss();
return;
}
MainActivity.this.finish();
}
});
String channel = TurboHelper.getChannel(this);
if (TextUtils.isEmpty(channel)) {
this.Num = "GE3TAMJZGM4DGNZU";
} else {
this.Num = channel;
}
this.webView = (WebView) findViewById(R.id.webView);
this.deviceId = "&deviceId=" + obtainDeviceId();
WebView webView = this.webView;
webView.loadUrl(this.path + this.Num + this.deviceId);
WebSettings settings = this.webView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setAllowFileAccess(true);
settings.setDomStorageEnabled(true);
settings.setSupportMultipleWindows(true);
this.webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView webView2, WebResourceRequest webResourceRequest) {
WebView webView3 = MainActivity.this.webView;
webView3.loadUrl(MainActivity.this.path + MainActivity.this.Num + MainActivity.this.deviceId);
return true;
}
});
this.webView.setHorizontalScrollBarEnabled(false);
this.webView.setVerticalScrollBarEnabled(false);
this.webView.addJavascriptInterface(new Object() {
@JavascriptInterface
public void callJava(String str, String str2) {
if (str.equals("alipay")) {
MainActivity.this.orderInfo = str2;
new Thread(MainActivity.this.payRunnable).start();
} else if (str.equals("wxpay")) {
WxPayBean wxPayBean = (WxPayBean) JsonUtil.parseBean(str2, (Class<Object>) WxPayBean.class);
PayReq payReq = new PayReq();
payReq.appId = wxPayBean.getAppid();
payReq.partnerId = wxPayBean.getPartnerid();
payReq.prepayId = wxPayBean.getPrepayid();
payReq.packageValue = "Sign=WXPay";
payReq.nonceStr = wxPayBean.getNoncestr();
payReq.timeStamp = wxPayBean.getTimestamp();
payReq.sign = wxPayBean.getSign();
MainActivity.this.wxapi.sendReq(payReq);
} else {
WXEntryActivity.loginWeixin(MainActivity.this, App.sApi);
Log.d("TAG", "call: window.Android.message" + str + "aaaaaaaaaaaaaaaaa");
}
Log.d("TAG", "call: window.Android.message" + str + "aaaaaaaaaaaaaaaaa");
}
@JavascriptInterface
public void callJava(String str) {
Log.d("TAG", "call: window.Android.message" + str + "aaaaaaaaaaaabbaaaaa");
}
}, "android");
}
public String getUdid() {
String androidID = getAndroidID();
return "2" + UUID.nameUUIDFromBytes(androidID.getBytes()).toString().replace("-", "");
}
public String getAndroidID() {
String string = Settings.Secure.getString(getContentResolver(), "android_id");
return string == null ? "" : string;
}
@Subscriber
public void getMsg(String str) {
getAccessToken(str);
Log.d("TAG", "call: window.Android.message" + str + "aaaaaaaaaaaabbaaaaa");
}
private void getAccessToken(String str) {
OkHttpUtils.get().url("https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + AppConst.WEIXIN_APP_ID + "&secret=" + AppConst.WEIXIN_APP_SECRET + "&code=" + str + "&grant_type=authorization_code").build().execute(new StringCallback() {
@Override
public void onError(Call call, Exception exc, int i) {
}
@Override
public void onResponse(String str2, int i) {
MainActivity.this.processGetAccessTokenResult(str2);
}
});
}
public void processGetAccessTokenResult(String str) {
if (validateSuccess(str)) {
try {
JSONObject jSONObject = new JSONObject(str);
String string = jSONObject.getString("openid");
String string2 = jSONObject.getString("access_token");
jSONObject.getString("refresh_token");
jSONObject.getString("scope");
getUserInfo(string2, string);
} catch (JSONException e) {
Log.e("TAG", e.getMessage());
}
}
}
private void getUserInfo(String str, String str2) {
OkHttpUtils.get().url("https://api.weixin.qq.com/sns/userinfo?access_token=" + str + "&openid=" + str2).build().execute(new StringCallback() {
@Override
public void onError(Call call, Exception exc, int i) {
}
@Override
public void onResponse(final String str3, int i) {
MainActivity.this.webView.post(new Runnable() {
@Override
public void run() {
MainActivity.this.javaBean = new JavaBean();
MainActivity.this.javaBean.setAppId(MainActivity.this.obtainDeviceId());
WxBean wxBean = (WxBean) JsonUtil.parseBean(str3, (Class<Object>) WxBean.class);
MainActivity.this.javaBean.setAvatar(wxBean.getHeadimgurl());
MainActivity.this.javaBean.setOpenid(wxBean.getOpenid());
MainActivity.this.javaBean.setNickname(wxBean.getNickname());
String json = new Gson().toJson(MainActivity.this.javaBean);
WebView webView = MainActivity.this.webView;
webView.loadUrl("javascript:wxloginCallback('" + json + "')");
}
});
}
});
}
private boolean validateSuccess(String str) {
return ("errmsg".contains(str) && !"ok".equals(str)) || !("errcode".contains(str) || "errmsg".contains(str));
}
public String obtainDeviceId() {
return DeviceIdentifier.getOAID(this);
}
@Override
public void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);
}
}