|
|
@@ -1,8 +1,134 @@
|
|
|
package com.sheep.gamegroup.view.activity;
|
|
|
|
|
|
-public class ActWebX5NewProcess extends ActWebX5{
|
|
|
+
|
|
|
+import android.content.Intent;
|
|
|
+import android.content.pm.ActivityInfo;
|
|
|
+import android.net.Uri;
|
|
|
+import android.support.v4.app.Fragment;
|
|
|
+import android.text.TextUtils;
|
|
|
+import android.util.Log;
|
|
|
+import com.sheep.gamegroup.absBase.BaseContainerActivity;
|
|
|
+import com.sheep.gamegroup.model.api.IWeb;
|
|
|
+import com.sheep.gamegroup.model.entity.WebParams;
|
|
|
+import com.sheep.gamegroup.util.ViewUtil;
|
|
|
+import com.sheep.jiuyan.samllsheep.Config;
|
|
|
+import com.sheep.jiuyan.samllsheep.base.BaseFragment;
|
|
|
+import com.sheep.jiuyan.samllsheep.utils.SpUtils;
|
|
|
+import com.tencent.smtt.sdk.CookieManager;
|
|
|
+import com.umeng.socialize.UMShareAPI;
|
|
|
+import com.umeng.socialize.UMShareListener;
|
|
|
+import com.umeng.socialize.bean.SHARE_MEDIA;
|
|
|
+
|
|
|
+/**
|
|
|
+ * web页面--含有所有js及url后添加authorization
|
|
|
+ * Created by zengjiebin on 2018/4/27.
|
|
|
+ */
|
|
|
+public class ActWebX5NewProcess extends BaseContainerActivity implements UMShareListener {
|
|
|
+
|
|
|
+ protected WebParams webParams;
|
|
|
+
|
|
|
+ private BaseFragment fragment;
|
|
|
+
|
|
|
+ private int orientPara;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ protected boolean showWhiteStatusBar() {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ protected Fragment initFragment() {
|
|
|
+ initWebParams();
|
|
|
+ fragment = ViewUtil.newWebFragment(webParams);
|
|
|
+ return fragment;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void initWebParams() {
|
|
|
+ Intent intent = getIntent();
|
|
|
+ if (intent.hasExtra("exurl")) {
|
|
|
+ String token = intent.getStringExtra("extoken");
|
|
|
+ if (TextUtils.isEmpty(token)) {
|
|
|
+ finish();
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ token = SpUtils.exchangeToken(token);
|
|
|
+ String url = intent.getStringExtra("exurl");
|
|
|
+ Log.d("访问前的Cookie 4", "-- "+ CookieManager.getInstance().getCookie(Uri.parse(url).getHost()));
|
|
|
+ url += url.contains("?") ? "&" : "?";
|
|
|
+ url += "authorization=" + token;
|
|
|
+ webParams = new WebParams(url, intent.getStringExtra("extitle"));
|
|
|
+ } else {
|
|
|
+ webParams = (WebParams) intent.getSerializableExtra(WebParams.class.getSimpleName());
|
|
|
+ orientPara = intent.getIntExtra("extra_orient", -1);
|
|
|
+ }
|
|
|
+ Log.e("WebRecharge", "orient: " + orientPara);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
protected void onDestroy() {
|
|
|
super.onDestroy();
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onBackPressed() {
|
|
|
+ if (fragment != null && !fragment.onBackPressed()) {
|
|
|
+ finish();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void finish() {
|
|
|
+ runOnUiThread(() -> {
|
|
|
+ if (fragment instanceof IWeb && (orientPara == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE || orientPara == ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE)) {
|
|
|
+ IWeb webFragment = (IWeb) fragment;
|
|
|
+ String url = webFragment.getWebUrl();
|
|
|
+ if (!TextUtils.isEmpty(url) && (url.contains(Config.PATH_DIRECTIONAL_RECHARGE)
|
|
|
+ || url.contains(Config.PATH_DIRECTIONAL_MAKEGOLD))) {
|
|
|
+ Log.e("WebRecharge", "execute orient ");
|
|
|
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ super.finish();
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ protected void onResume() {
|
|
|
+ super.onResume();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
|
|
+ super.onActivityResult(requestCode, resultCode, data);
|
|
|
+ if (fragment != null) {
|
|
|
+ fragment.onActivityResult(requestCode, resultCode, data);
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onStart(SHARE_MEDIA share_media) {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onResult(SHARE_MEDIA share_media) {
|
|
|
+ if (fragment instanceof IWeb) {
|
|
|
+ ((IWeb) fragment).onShareResult();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onError(SHARE_MEDIA share_media, Throwable throwable) {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onCancel(SHARE_MEDIA share_media) {
|
|
|
+
|
|
|
+ }
|
|
|
}
|