From 69c0bf10c748e27ff93f9ef5f48fe6abd1cd4756 Mon Sep 17 00:00:00 2001
From: 陶汉栋 <2821744554@qq.com>
Date: Mon, 19 Mar 2018 14:39:01 +0800
Subject: [PATCH] no message

---
 app/src/main/java/com/shunzhi/parent/presenter/ceping/CePingPresenter.java      |  2 +-
 app/src/main/java/com/shunzhi/parent/ui/activity/mywebview/WebViewActivity.java | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------
 app/src/main/res/layout/activity_webview.xml                                    | 10 +++++++++-
 mvpsdk/src/main/java/com/share/mvpsdk/utils/OkHttpExceptionUtil.java            |  2 +-
 4 files changed, 84 insertions(+), 11 deletions(-)

diff --git a/app/src/main/java/com/shunzhi/parent/presenter/ceping/CePingPresenter.java b/app/src/main/java/com/shunzhi/parent/presenter/ceping/CePingPresenter.java
index 822a191..a42e5e7 100644
--- a/app/src/main/java/com/shunzhi/parent/presenter/ceping/CePingPresenter.java
+++ b/app/src/main/java/com/shunzhi/parent/presenter/ceping/CePingPresenter.java
@@ -55,7 +55,7 @@ public class CePingPresenter extends CepingContract.CePingPresenter {
                             @Override
                             public void onClick(View view) {
                                 ToolBean toolBean1= (ToolBean) view.getTag();
-                                WebViewActivity.getInstance(mIView.getBindActivity(),toolBean1.toolUrl);
+                                WebViewActivity.getInstance(mIView.getBindActivity(),toolBean1.toolUrl,-1);
                             }
                         });
                         layout_control.addView(textAndImgShowView);
diff --git a/app/src/main/java/com/shunzhi/parent/ui/activity/mywebview/WebViewActivity.java b/app/src/main/java/com/shunzhi/parent/ui/activity/mywebview/WebViewActivity.java
index 37eb20e..e5986ed 100644
--- a/app/src/main/java/com/shunzhi/parent/ui/activity/mywebview/WebViewActivity.java
+++ b/app/src/main/java/com/shunzhi/parent/ui/activity/mywebview/WebViewActivity.java
@@ -3,39 +3,75 @@ package com.shunzhi.parent.ui.activity.mywebview;
 import android.content.Context;
 import android.content.Intent;
 import android.graphics.Bitmap;
+import android.os.Build;
 import android.os.Bundle;
 import android.support.v7.app.AppCompatActivity;
+import android.util.Log;
 import android.view.View;
 import android.webkit.JavascriptInterface;
 import android.webkit.WebChromeClient;
 import android.webkit.WebSettings;
 import android.webkit.WebView;
 import android.webkit.WebViewClient;
+import android.widget.LinearLayout;
 import android.widget.ProgressBar;
+import android.widget.TextView;
 
 import com.share.mvpsdk.base.activity.BaseCompatActivity;
 import com.share.mvpsdk.utils.AppUtils;
 import com.share.mvpsdk.utils.NetworkConnectionUtils;
 import com.share.mvpsdk.widgets.NestedScrollWebView;
+import com.shunzhi.parent.AppConfig;
 import com.shunzhi.parent.R;
 
 public class WebViewActivity extends BaseCompatActivity {
 
     NestedScrollWebView nesteScrollWebView;
+    LinearLayout binding_success, binding_success2;
+    TextView close,tv_info,zuoye,title_web;
+    int type;
 
     private ProgressBar pvWeb;
 
-    public static void getInstance(Context context,String url,int type) {
+    public static void getInstance(Context context, String url, int type) {
         Intent intent = new Intent(context, WebViewActivity.class);
         intent.putExtra("url", url);
-        intent.putExtra("type",type);
+        intent.putExtra("type", type);
         context.startActivity(intent);
     }
 
     @Override
     protected void initView(Bundle savedInstanceState) {
-        nesteScrollWebView=findViewById(R.id.nesteScrollWebView);
-        pvWeb=findViewById(R.id.pb_web);
+        binding_success=findViewById(R.id.binding_success1);
+        binding_success2=findViewById(R.id.binding_success2);
+        close = findViewById(R.id.close_btn);
+        tv_info = findViewById(R.id.tv_info);
+        zuoye = findViewById(R.id.zuoye);
+        title_web = findViewById(R.id.title_web);
+
+        nesteScrollWebView = findViewById(R.id.webView);
+        pvWeb = findViewById(R.id.pb_web);
+        type = getIntent().getIntExtra("type", 0);
+        if (type == AppConfig.BINDING_SUCCESS_HEZUO) {
+            binding_success.setVisibility(View.VISIBLE);
+            binding_success2.setVisibility(View.GONE);
+            title_web.setVisibility(View.GONE);
+
+        } else if (type == AppConfig.BINDING_SUCCESS_NOT) {
+            binding_success.setVisibility(View.GONE);
+            binding_success2.setVisibility(View.VISIBLE);
+            title_web.setVisibility(View.GONE);
+
+        } else if (type == AppConfig.ORDER_CENTER) {
+            binding_success.setVisibility(View.GONE);
+            binding_success2.setVisibility(View.GONE);
+            title_web.setVisibility(View.VISIBLE);
+        }else {
+            binding_success.setVisibility(View.GONE);
+            binding_success2.setVisibility(View.GONE);
+            title_web.setVisibility(View.GONE);
+        }
+
         initWebView();
         initWebSetting(nesteScrollWebView.getSettings());
         nesteScrollWebView.loadUrl(getIntent().getStringExtra("url"));
@@ -43,14 +79,14 @@ public class WebViewActivity extends BaseCompatActivity {
 
     @Override
     protected int getLayoutId() {
-        return R.layout.activity_web_view;
+        return R.layout.activity_webview;
     }
 
     @Override
     public void onBackPressedSupport() {
-        if (nesteScrollWebView.canGoBack()){
+        if (nesteScrollWebView.canGoBack()) {
             nesteScrollWebView.goBack();
-        }else {
+        } else {
             super.onBackPressedSupport();
         }
     }
@@ -75,6 +111,20 @@ public class WebViewActivity extends BaseCompatActivity {
             });
         }
     }
+    // 调起支付宝并跳转到指定页面
+    private void startAlipayActivity(String url) {
+        Intent intent;
+        try {
+            intent = Intent.parseUri(url,
+                    Intent.URI_INTENT_SCHEME);
+            intent.addCategory(Intent.CATEGORY_BROWSABLE);
+            intent.setComponent(null);
+            startActivity(intent);
+            finish();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
 
     protected void initWebView() {
         // 添加js交互接口类,并起别名 imagelistner
@@ -83,8 +133,18 @@ public class WebViewActivity extends BaseCompatActivity {
         nesteScrollWebView.setWebViewClient(new WebViewClient() {
             @Override
             public boolean shouldOverrideUrlLoading(WebView view, String url) {
-                view.loadUrl(url);
+                if (url.startsWith("http"))view.loadUrl(url);
+//                if (url.contains("platformapi/startapp")) {
+//                    startAlipayActivity(url);
+//                     android  6.0 两种方式获取intent都可以跳转支付宝成功,7.1测试不成功
+//                } else if ((Build.VERSION.SDK_INT > Build.VERSION_CODES.M)
+//                        && (url.contains("platformapi") && url.contains("startapp"))) {
+//                    startAlipayActivity(url);
+//                } else {
+//                    view.loadUrl(url);
+//                }
                 return true;
+
             }
 
             @Override
@@ -178,6 +238,11 @@ public class WebViewActivity extends BaseCompatActivity {
         // WebView启用JavaScript执行。默认的是false。
         settings.setJavaScriptEnabled(true); // 设置支持javascript脚本
         settings.setJavaScriptCanOpenWindowsAutomatically(true);//设置支持js脚本
+        settings.setAllowFileAccess(true);//设置可以访问文件
+//        settings.setBuiltInZoomControls(true);
+        settings.setCacheMode(WebSettings.LOAD_NO_CACHE);
+        settings.setDomStorageEnabled(true);
+        settings.setGeolocationEnabled(true);
         if (NetworkConnectionUtils.isConnected(mContext)) {
             settings.setCacheMode(WebSettings.LOAD_DEFAULT);
         } else {
diff --git a/app/src/main/res/layout/activity_webview.xml b/app/src/main/res/layout/activity_webview.xml
index 394c93a..7608474 100644
--- a/app/src/main/res/layout/activity_webview.xml
+++ b/app/src/main/res/layout/activity_webview.xml
@@ -32,8 +32,16 @@
 
     </RelativeLayout>
 
+    <ProgressBar
+        android:id="@+id/pb_web"
+        style="?android:attr/progressBarStyleHorizontal"
+        android:layout_width="match_parent"
+        android:layout_height="3dp"
+        android:progressDrawable="@drawable/web_progress_bar_bg"
+        android:visibility="gone"/>
+
     <LinearLayout
-        android:id="@+id/binding_success"
+        android:id="@+id/binding_success1"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:gravity="center"
diff --git a/mvpsdk/src/main/java/com/share/mvpsdk/utils/OkHttpExceptionUtil.java b/mvpsdk/src/main/java/com/share/mvpsdk/utils/OkHttpExceptionUtil.java
index 8e8ffea..e4d4d8b 100644
--- a/mvpsdk/src/main/java/com/share/mvpsdk/utils/OkHttpExceptionUtil.java
+++ b/mvpsdk/src/main/java/com/share/mvpsdk/utils/OkHttpExceptionUtil.java
@@ -20,7 +20,7 @@ public class OkHttpExceptionUtil {
         if (responseBody==null)return;
         try {
             JSONObject json = new JSONObject(responseBody.string());
-            ToastUtils.showToast(json.optString("message"));
+            ToastUtils.showToast(json.optString("message")+"json="+json);
         }  catch (Exception e1) {
             e1.printStackTrace();
         }
--
libgit2 0.21.0