diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 3d7e000..4ed4aa6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -380,6 +380,27 @@ + + + + + + + + + + + + uploadMessage; private ValueCallback uploadMessageAboveL; private final static int FILE_CHOOSER_RESULT_CODE = 10000; + private Context ctx; + private boolean isOk = false; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.activity_h5); - + ctx = this; mWebView = findViewById(R.id.webview); ImageView back = findViewById(R.id.back); @@ -92,6 +98,10 @@ public class H5Activity extends AppCompatActivity { WebSettings webSetting = mWebView.getSettings(); back.setOnClickListener(v -> { + if (isOk){ + finish(); + return; + } if (mWebView.canGoBack()) { mWebView.goBack(); } else { @@ -100,6 +110,10 @@ public class H5Activity extends AppCompatActivity { }); close.setOnClickListener(v -> { + if (isOk){ + finish(); + return; + } if (mWebView.canGoBack()) { mWebView.goBack(); } else { @@ -114,6 +128,9 @@ public class H5Activity extends AppCompatActivity { webSetting.setLoadWithOverviewMode(true); webSetting.setAllowFileAccess(true); webSetting.setAppCacheEnabled(true); + webSetting.setAllowContentAccess(true); + webSetting.setLoadsImagesAutomatically(true); + webSetting.setMediaPlaybackRequiresUserGesture(true); String appCachePath = getApplication().getCacheDir().getAbsolutePath(); webSetting.setAppCachePath(appCachePath); webSetting.setDatabaseEnabled(true); @@ -180,6 +197,7 @@ public class H5Activity extends AppCompatActivity { private void processExtraData() { Intent intent = getIntent(); + isGoCar = intent.getBooleanExtra("isGoCar", false); Uri uri = intent.getData(); Log.e("test", "===" + uri); if (uri != null) { @@ -225,6 +243,17 @@ public class H5Activity extends AppCompatActivity { Uri uri = Uri.parse(url); Log.e("test", "要加载的地址:" + uri.getScheme() + " " + url + " "); if (uri.getScheme().equals("http") || uri.getScheme().equals("https")) { + if (isGoCar&&url.startsWith("http://agreement.dahehuoyun.com/#/1ba5c216/912f4c9587/5eb5184653/6ef9")){ + isOk = true; + view.loadUrl(url); + new MessageUtils().showSimCenPop(ctx, "个人信息上传成功,请添加车辆信息!", "去添加",() -> { + Intent in = new Intent(ctx, CertificatesActivity.class); + in.putExtra("index", 2); + startActivity(in); + ActivityUtils.finishToActivity(MainActivity.class,false); + }); + return true; + } view.loadUrl(url); return true; } else if (uri.getScheme().equals("js") || uri.getScheme().equals("jsbridge")) { @@ -261,6 +290,12 @@ public class H5Activity extends AppCompatActivity { // 实名认证结束 返回按钮/倒计时返回/暂不认证 boolean status = uri.getBooleanQueryParameter("status", false); if (status) { + //认证成功返回 + new Handler().postDelayed(() -> { + FaceEvent he = new FaceEvent("刷脸成功"); + EventBus.getDefault().post(he); + finish(); + }, 800); //认证成功返回 Toast.makeText(H5Activity.this, "认证成功", Toast.LENGTH_LONG).show(); finish(); @@ -278,6 +313,12 @@ public class H5Activity extends AppCompatActivity { boolean status = uri.getBooleanQueryParameter("status", false); if (status) { //认证成功返回 + //认证成功返回 + new Handler().postDelayed(() -> { + FaceEvent he = new FaceEvent("刷脸成功"); + EventBus.getDefault().post(he); + finish(); + }, 800); Toast.makeText(H5Activity.this, "认证成功", Toast.LENGTH_LONG).show(); finish(); } diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/H5Activity2.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/H5Activity2.java new file mode 100644 index 0000000..cb6f166 --- /dev/null +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/H5Activity2.java @@ -0,0 +1,485 @@ +package com.arpa.hndahesudintocctmsdriver; + +import static android.webkit.WebSettings.LOAD_NO_CACHE; + +import android.Manifest; +import android.annotation.TargetApi; +import android.app.Activity; +import android.content.Intent; +import android.graphics.Bitmap; +import android.net.Uri; +import android.net.http.SslError; +import android.os.Build; +import android.os.Bundle; +import android.os.Handler; +import android.provider.MediaStore; +import android.text.TextUtils; +import android.util.Log; +import android.view.KeyEvent; +import android.webkit.ConsoleMessage; +import android.webkit.CookieManager; +import android.webkit.CookieSyncManager; +import android.webkit.JsPromptResult; +import android.webkit.JsResult; +import android.webkit.PermissionRequest; +import android.webkit.SslErrorHandler; +import android.webkit.ValueCallback; +import android.webkit.WebChromeClient; +import android.webkit.WebResourceError; +import android.webkit.WebResourceRequest; +import android.webkit.WebSettings; +import android.webkit.WebView; +import android.webkit.WebViewClient; +import android.widget.Toast; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.core.content.ContextCompat; + +import com.arpa.hndahesudintocctmsdriver.event.FaceEvent; +import com.arpa.hndahesudintocctmsdriver.util.statusbar.StatusBar; +import com.esign.esignsdk.h5.base.WBH5FaceVerifySDK; + +import org.greenrobot.eventbus.EventBus; + +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; + +import pub.devrel.easypermissions.EasyPermissions; +import qiu.niorgai.StatusBarCompat; + +/** + * @author xingtian on 2019/3/25 + */ +public class H5Activity2 extends AppCompatActivity { + + public static final int REQUEST_PERMISSION_STORAGE = 0x00; + public static final int REQUEST_PERMISSION_CAMERA = 0x01; + + public final static String SCHEMA_REAL = "esign://demo/realBack"; + + public final static String SCHEMA_SIGN = "esign://demo/signBack"; + + private WebView mWebView; + + String curUrl = null; + boolean viewFile = false; + + long time = System.currentTimeMillis(); + + ValueCallback uploadMessage; + private ValueCallback uploadMessageAboveL; + private final static int FILE_CHOOSER_RESULT_CODE = 10000; + + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + super.setContentView(R.layout.activity_h5); + StatusBarCompat.setStatusBarColor(this, ContextCompat.getColor(this, R.color.white), 0); + StatusBar.changeToLightStatusBar(this); //黑色 下边白色 + + mWebView = findViewById(R.id.webview); +// ImageView back = findViewById(R.id.back); +// TextView close = findViewById(R.id.close); + WebSettings webSetting = mWebView.getSettings(); + +// back.setOnClickListener(v -> { +// if (mWebView.canGoBack()) { +// mWebView.goBack(); +// } else { +// finish(); +// } +// }); +// +// close.setOnClickListener(v -> { +// if (mWebView.canGoBack()) { +// mWebView.goBack(); +// } else { +// finish(); +// } +// }); + + webSetting.setJavaScriptEnabled(true); + webSetting.setDomStorageEnabled(true); +// webSetting.setAppCacheMaxSize(1024 * 1024 * 8); + webSetting.setUseWideViewPort(true); + webSetting.setLoadWithOverviewMode(true); + webSetting.setAllowFileAccess(true); +// webSetting.setAppCacheEnabled(true); + String appCachePath = getApplication().getCacheDir().getAbsolutePath(); +// webSetting.setAppCachePath(appCachePath); + webSetting.setDatabaseEnabled(true); + webSetting.setCacheMode(LOAD_NO_CACHE); + webSetting.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { + WebView.setWebContentsDebuggingEnabled(true); + } + + CookieSyncManager.createInstance(this); + CookieManager cookieManager = CookieManager.getInstance(); + if (Build.VERSION.SDK_INT >= 21) { + cookieManager.setAcceptThirdPartyCookies(mWebView, true); + } + cookieManager.setAcceptCookie(true); + + + mWebView.setWebViewClient(new MyWebViewClient()); + mWebView.setWebChromeClient(new H5FaceWebChromeClient(this)); + + WBH5FaceVerifySDK.getInstance().setWebViewSettings(mWebView, getApplicationContext()); + + processExtraData(); + } + + @Override + protected void onPause() { + super.onPause(); + mWebView.onPause(); + } + + @Override + protected void onResume() { + super.onResume(); + mWebView.onResume(); + } + + @Override + protected void onStop() { + super.onStop(); + mWebView.stopLoading(); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + try { + if (mWebView != null) { + mWebView.removeAllViews(); + mWebView.destroy(); + } + } catch (Exception e) { + } + } + + @Override + protected void onNewIntent(Intent intent) { + super.onNewIntent(intent); + setIntent(intent); + processExtraData(); + } + + private void processExtraData() { + + Intent intent = getIntent(); + Uri uri = intent.getData(); + Log.e("test", "===" + uri); + if (uri != null) { + // 芝麻认证刷脸结束返回获取后续操作页面地址 +// String callbackUrl = uri.getQueryParameter("callback"); + + String callbackUrl = uri.getQueryParameter("realnameUrl"); + if (!TextUtils.isEmpty(callbackUrl)) { + try { + mWebView.loadUrl(URLDecoder.decode(callbackUrl, "utf-8")); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + } + + } else { + String url = intent.getStringExtra("url"); + viewFile = intent.getBooleanExtra("view_file", false); + if (url.startsWith("alipay")) { + + try { + Intent intent2 = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); + startActivity(intent2); + return; + } catch (Exception e) { + } + } + if (curUrl == null) { + curUrl = url; + } + mWebView.loadUrl(url); + } + + } + + private class MyWebViewClient extends WebViewClient { + @Override + public boolean shouldOverrideUrlLoading(WebView view, String url) { + if (url == null) { + return false; + } + + Uri uri = Uri.parse(url); + Log.e("test", "要加载的地址:" + uri.getScheme() + " " + url + " "); + if (uri.getScheme().equals("http") || uri.getScheme().equals("https")) { + view.loadUrl(url); + return true; + } else if (uri.getScheme().equals("js") || uri.getScheme().equals("jsbridge")) { + + // js://signCallback?signResult=true 签署结果 + if (uri.getAuthority().equals("signCallback")) { + if (viewFile) { + view.loadUrl(curUrl); + return true; + } else { + if (url.contains("signResult")) { + boolean signResult = uri.getBooleanQueryParameter("signResult", false); + Toast.makeText(H5Activity2.this, "签署结果: " + " signResult = " + signResult, Toast.LENGTH_LONG).show(); + } else { + String tsignCode = uri.getQueryParameter("tsignCode"); + if ("0".equals(tsignCode)) { + tsignCode = "签署成功"; + } else { + tsignCode = "签署失败"; + } + Toast.makeText(H5Activity2.this, "签署结果: " + tsignCode, Toast.LENGTH_LONG).show(); + } + } + finish(); + } + + //js://tsignRealBack?esignAppScheme=esign://app/callback&serviceId=854677892133554052&verifycode=4a52e2af0d0abfb7b285c4f05b5af133&status=true&passed=true + //实名结果 + if (uri.getAuthority().equals("tsignRealBack")) { + //实名结果字段 + if (uri.getQueryParameter("verifycode") != null) { + String realVerifyCode = uri.getQueryParameter("verifycode"); + } + // 实名认证结束 返回按钮/倒计时返回/暂不认证 + boolean status = uri.getBooleanQueryParameter("status", false); + if (status) { + //认证成功返回 + new Handler().postDelayed(() -> { + FaceEvent he = new FaceEvent("刷脸成功"); + EventBus.getDefault().post(he); + finish(); + }, 800); + Toast.makeText(H5Activity2.this, "认证成功", Toast.LENGTH_LONG).show(); +// finish(); + } + } + return true; + } else if (url.startsWith(SCHEMA_REAL)) { + //esign://app/realBack&serviceId=854677892133554052&verifycode=4a52e2af0d0abfb7b285c4f05b5af133&status=true&passed=true + + //实名结果 + if (uri.getQueryParameter("verifycode") != null) { + String realVerifyCode = uri.getQueryParameter("verifycode"); + } + // 实名认证结束 返回按钮/倒计时返回/暂不认证 + boolean status = uri.getBooleanQueryParameter("status", false); + if (status) { + //认证成功返回 + new Handler().postDelayed(() -> { + FaceEvent he = new FaceEvent("刷脸成功"); + EventBus.getDefault().post(he); + finish(); + }, 800); + Toast.makeText(H5Activity2.this, "认证成功", Toast.LENGTH_LONG).show(); +// finish(); + } + + return true; + } else if (url.startsWith(SCHEMA_SIGN)) { + // js://signCallback?signResult=true 签署结果 + if (url.contains("signResult")) { + boolean signResult = uri.getBooleanQueryParameter("signResult", false); + Toast.makeText(H5Activity2.this, "签署结果: " + " signResult = " + signResult, Toast.LENGTH_LONG).show(); + } else { + String tsignCode = uri.getQueryParameter("tsignCode"); + if ("0".equals(tsignCode)) { + //延时1.5秒跳转运单详情页面 +// new Handler().postDelayed(() -> { +// FaceEvent he = new FaceEvent("刷脸成功"); +// EventBus.getDefault().post(he); +// finish(); +// }, 800); + tsignCode = "签署成功"; + } else { + tsignCode = "签署失败"; + } + Toast.makeText(H5Activity2.this, "签署结果: " + tsignCode, Toast.LENGTH_LONG).show(); + } +// finish(); + return true; + } else if (uri.getScheme().equals("alipays")) { + // 跳转到支付宝刷脸 + // alipays://platformapi/startapp?appId=20000067&pd=NO&url=https%3A%2F%2Fzmcustprod.zmxy.com.cn%2Fcertify%2Fbegin.htm%3Ftoken%3DZM201811133000000050500431389414 + try { + Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); + startActivity(intent); + return true; + } catch (Exception e) { + return false; + } + } else { + return false; + } + } + + @Override + public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) { + super.onReceivedError(view, request, error); + } + + @Override + public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) { +// super.onReceivedSslError(view, handler, error); + handler.proceed(); + } + + @Override + public void onPageStarted(WebView view, String url, Bitmap favicon) { + super.onPageStarted(view, url, favicon); + time = System.currentTimeMillis(); + } + + @Override + public void onPageFinished(WebView view, String url) { + super.onPageFinished(view, url); + } + + @Override + public void onLoadResource(WebView view, String url) { + super.onLoadResource(view, url); + } + } + + + public class H5FaceWebChromeClient extends WebChromeClient { + private Activity activity; + + public H5FaceWebChromeClient(Activity mActivity) { + this.activity = mActivity; + } + + + @Override + public void onReceivedTitle(WebView view, String title) { + } + + @Override + public boolean onJsPrompt(WebView view, String url, String message, String defaultValue, JsPromptResult result) { + return super.onJsPrompt(view, url, message, defaultValue, result); + } + + @Override + public boolean onJsConfirm(WebView view, String url, String message, JsResult result) { + return super.onJsConfirm(view, url, message, result); + } + + @TargetApi(8) + @Override + public boolean onConsoleMessage(ConsoleMessage consoleMessage) { + return super.onConsoleMessage(consoleMessage); + } + + public void openFileChooser(ValueCallback uploadMsg, String acceptType) { + if (WBH5FaceVerifySDK.getInstance().recordVideoForApiBelow21(uploadMsg, acceptType, activity)) { + return; + } + uploadMessage = uploadMsg; + } + + public void openFileChooser(ValueCallback uploadMsg, String acceptType, String capture) { + if (WBH5FaceVerifySDK.getInstance().recordVideoForApiBelow21(uploadMsg, acceptType, activity)) { + return; + } + uploadMessage = uploadMessage; + } + + @TargetApi(21) + @Override + public boolean onShowFileChooser(WebView webView, ValueCallback filePathCallback, FileChooserParams fileChooserParams) { + if (WBH5FaceVerifySDK.getInstance().recordVideoForApi21(webView, filePathCallback, activity, fileChooserParams)) { + return true; + } + uploadMessageAboveL = filePathCallback; + recordVideo(H5Activity2.this); + return true; + } + + @Override + public void onPermissionRequest(PermissionRequest request) { + request.grant(request.getResources()); + request.getOrigin(); + } + } + + public void recordVideo(Activity activity) { + if (EasyPermissions.hasPermissions(activity, Manifest.permission.CAMERA)) { + try { + Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); + intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1); + intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + intent.putExtra("android.intent.extras.CAMERA_FACING", 1); // 调用前置摄像头 + activity.startActivityForResult(intent, FILE_CHOOSER_RESULT_CODE); + } catch (Exception e) { + e.printStackTrace(); + } + } else { + EasyPermissions.requestPermissions(activity, "请同意使用相机功能", REQUEST_PERMISSION_CAMERA, Manifest.permission.CAMERA); + } + } + + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + if (keyCode == KeyEvent.KEYCODE_BACK) { + if (mWebView.canGoBack()) { + mWebView.goBack(); + } else { + finish(); + } + return true; + } + return super.onKeyDown(keyCode, event); + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); + + if (WBH5FaceVerifySDK.getInstance().receiveH5FaceVerifyResult(requestCode, resultCode, data)) { + return; + } + + if (requestCode == FILE_CHOOSER_RESULT_CODE) { + if (null == uploadMessage && null == uploadMessageAboveL) { + return; + } + Uri result = data == null || resultCode != RESULT_OK ? null : data.getData(); + if (uploadMessageAboveL != null) { + if (resultCode == RESULT_OK) { + uploadMessageAboveL.onReceiveValue(new Uri[]{result}); + uploadMessageAboveL = null; + } else { + uploadMessageAboveL.onReceiveValue(new Uri[]{}); + uploadMessageAboveL = null; + } + } else if (uploadMessage != null) { + if (resultCode == RESULT_OK) { + uploadMessage.onReceiveValue(result); + uploadMessage = null; + } else { + uploadMessage.onReceiveValue(Uri.EMPTY); + uploadMessage = null; + } + } + } + + } + + + @Override + public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { + super.onRequestPermissionsResult(requestCode, permissions, grantResults); + WBH5FaceVerifySDK.getInstance().recordVideo(this); + } + +} \ No newline at end of file diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/bean/DriverAuthDataBean.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/bean/DriverAuthDataBean.java index 209fde4..6a77ebc 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/bean/DriverAuthDataBean.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/bean/DriverAuthDataBean.java @@ -57,12 +57,15 @@ public class DriverAuthDataBean { private String idcardValidity; private String dirverAllowType; private int idcardPhoto; + private String bankImgUrl; + private String bankName; + private String cardNo; private int idcardBackPhoto; private Object idcardPhotoHold; private String idcardAddress; private String idcardName; private int idcardSex; - private int idCardStatus; + private int idCardStatus;//身份证认证状态;-1未提交 0待认证 1认证通过 2认证失败 private int driverLicenseStatus; private int qualificationCertificateStatus; private String idCardReason; @@ -141,6 +144,30 @@ public class DriverAuthDataBean { private Object mbindStatus; private Object mreason; + public String getBankImgUrl() { + return bankImgUrl; + } + + public void setBankImgUrl(String bankImgUrl) { + this.bankImgUrl = bankImgUrl; + } + + public String getBankName() { + return bankName; + } + + public void setBankName(String bankName) { + this.bankName = bankName; + } + + public String getCardNo() { + return cardNo; + } + + public void setCardNo(String cardNo) { + this.cardNo = cardNo; + } + public int getId() { return id; } diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/HuoYuanRequset.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/HuoYuanRequset.java index 7182248..a6ccca7 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/HuoYuanRequset.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/HuoYuanRequset.java @@ -1,5 +1,6 @@ package com.arpa.hndahesudintocctmsdriver.request; +import com.arpa.hndahesudintocctmsdriver.BuildConfig; import com.google.gson.Gson; import com.arpa.hndahesudintocctmsdriver.request.bean.LUInputBean; import com.arpa.hndahesudintocctmsdriver.request.bean.TrackInputBean; @@ -72,6 +73,17 @@ public class HuoYuanRequset{ Request re = OkHttpUtil.posts(new OkDate(RequestConstant.getAgreeOrder(),MapUtil.mapJson(map)),getToken(con),con); RequestUtil.start(1, HuoYunDelActivity.END,re,con,hd); } + +// public void confirm2(String cid,int wid){ +// Map map=new HashMap<>(); +// map.put("carId",cid); +// map.put("orderId",wid); +// map.put("status",2); +// map.put("imgUrl",""); +// Request re = OkHttpUtil.posts(new OkDate(BuildConfig.BASE_URL+"/app/driver/waybill/grab",MapUtil.mapJson(map)),getToken(con),con); +// RequestUtil.start(1, "jfaklsdjfklasjdflk",re,con,hd); +// } + //获取执行中的运单 public void startOrder(int id){ Map map=new HashMap<>(); diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/RequestConstant.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/RequestConstant.java index 8f2bce3..08d3557 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/RequestConstant.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/request/RequestConstant.java @@ -56,7 +56,7 @@ public class RequestConstant { //运单列表 private static final String ORDER_LIST = "/app/driver/waybill/listV2"; //抢单 - private static final String AGREE_ORDER = "/app/driver/waybill/grabDriverOrdersContruct"; + private static final String AGREE_ORDER = "/app/driver/waybill/grabDriverOrdersContructV2"; //获取正在执行的运单/运单详情 private static final String GET_START_ORDER = "/app/driver/waybill/getExecuteWaybill"; //查看承运合同 diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/CertificatesActivity.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/CertificatesActivity.java index cec8357..b6afe50 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/CertificatesActivity.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/CertificatesActivity.java @@ -23,6 +23,7 @@ import androidx.cardview.widget.CardView; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.arpa.hndahesudintocctmsdriver.H5Activity; import com.arpa.hndahesudintocctmsdriver.bean.DicBean; import com.arpa.hndahesudintocctmsdriver.bean.SinglePickBean; import com.arpa.hndahesudintocctmsdriver.cuspop.SimCenterPop; @@ -174,8 +175,8 @@ public class CertificatesActivity extends BaseAppCompatActivity { //上传身份证信息后 跳转上传银行卡信息页面 - Intent in333=new Intent(con, UpBankActivity.class); - in333.putExtra("type",1); + Intent in333 = new Intent(con, UpBankActivity.class); + in333.putExtra("type", 1); startActivity(in333); } else { @@ -212,7 +213,12 @@ public class CertificatesActivity extends BaseAppCompatActivity { Log.e("url", CacheGroup.cacheList.get("authUrl")); BaseBean bb = gson.fromJson(CacheGroup.cacheList.get("authUrl"), BaseBean.class); if (bb.getCode() == 200) { - EsignSdk.getInstance().startH5Activity(act, StringUtil.isNull(String.valueOf(bb.getData()), "")); + Intent intent = new Intent(this, H5Activity.class); + intent.putExtra("url", (String) bb.getData()); + intent.putExtra("view_file", false); + intent.putExtra("isGoCar", true); + startActivity(intent); +// EsignSdk.getInstance().startH5Activity(act, StringUtil.isNull(String.valueOf(bb.getData()), "")); } else { Toast.makeText(con, bb.getMsg(), Toast.LENGTH_LONG).show(); }//Log.e("url",CacheGroup.cacheList.get("authUrl")); @@ -358,7 +364,12 @@ public class CertificatesActivity extends BaseAppCompatActivity { Log.e("url", CacheGroup.cacheList.get("authUrl")); BaseBean bb = gson.fromJson(CacheGroup.cacheList.get("authUrl"), BaseBean.class); if (bb.getCode() == 200) { - EsignSdk.getInstance().startH5Activity(act, StringUtil.isNull(String.valueOf(bb.getData()), "")); + Intent intent = new Intent(this, H5Activity.class); + intent.putExtra("url", (String) bb.getData()); + intent.putExtra("view_file", false); + intent.putExtra("isGoCar", true); + startActivity(intent); +// EsignSdk.getInstance().startH5Activity(act, StringUtil.isNull(String.valueOf(bb.getData()), "")); } else { Toast.makeText(con, bb.getMsg(), Toast.LENGTH_LONG).show(); }//Log.e("url",CacheGroup.cacheList.get("authUrl")); @@ -591,8 +602,8 @@ public class CertificatesActivity extends BaseAppCompatActivity { // startActivity(in1); //上传身份证信息后 跳转上传银行卡信息页面 - Intent in333=new Intent(con, UpBankActivity.class); - in333.putExtra("type",1); + Intent in333 = new Intent(con, UpBankActivity.class); + in333.putExtra("type", 1); startActivity(in333); break; case 1: @@ -1092,11 +1103,11 @@ public class CertificatesActivity extends BaseAppCompatActivity { JSONObject jsonObject = JSON.parseObject(auth.result); if ("success".equalsIgnoreCase(jsonObject.getString("res"))) { EsignSdk.getInstance().finishH5Activity(); - new MessageUtils().showSimCenPop(con, "个人信息上传成功,请添加车辆信息!", () -> { - finish(); + new MessageUtils().showSimCenPop(con, "个人信息上传成功,请添加车辆信息!", "去添加",() -> { Intent in = new Intent(con, CertificatesActivity.class); in.putExtra("index", 2); startActivity(in); + finish(); }); if ("sign".equalsIgnoreCase(jsonObject.getString("key"))) { diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/PersonalAuthActivity.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/PersonalAuthActivity.java index dc85ea0..a31b520 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/PersonalAuthActivity.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/auth/PersonalAuthActivity.java @@ -1,9 +1,12 @@ package com.arpa.hndahesudintocctmsdriver.ui.auth; +import android.Manifest; import android.content.Intent; +import android.net.Uri; import android.os.Bundle; import android.os.Handler; import android.os.Message; +import android.provider.Settings; import android.text.TextUtils; import android.util.Log; import android.widget.ImageView; @@ -16,9 +19,14 @@ import androidx.annotation.Nullable; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.arpa.hndahesudintocctmsdriver.H5Activity; +import com.arpa.hndahesudintocctmsdriver.H5Activity2; import com.arpa.hndahesudintocctmsdriver.event.HomeEvent; import com.arpa.hndahesudintocctmsdriver.event.PersonEvent; +import com.arpa.hndahesudintocctmsdriver.ui.business.BusinessActivity; +import com.arpa.hndahesudintocctmsdriver.util.MessageUtils; +import com.arpa.hndahesudintocctmsdriver.util.PermissionUtils; import com.bumptech.glide.Glide; +import com.dahe.mylibrary.utils.ActivityUtils; import com.esign.esignsdk.EsignSdk; import com.esign.esignsdk.data.AuthEvent; import com.google.gson.Gson; @@ -42,6 +50,7 @@ import com.arpa.hndahesudintocctmsdriver.util.http.RequsetCodeConstants; import com.arpa.hndahesudintocctmsdriver.util.statusbar.StateStyleUtil; import com.arpa.hndahesudintocctmsdriver.util.view.BaseAppCompatActivity; import com.lxj.xpopup.util.SmartGlideImageLoader; +import com.permissionx.guolindev.PermissionX; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; @@ -98,11 +107,18 @@ public class PersonalAuthActivity extends BaseAppCompatActivity { BaseBean bb = gson.fromJson(CacheGroup.cacheList.get("authUrl"), BaseBean.class); if (bb.getCode() == 200) { -// Intent intent = new Intent(this, H5Activity.class); -// intent.putExtra("url", (String) bb.getData()); -// intent.putExtra("view_file", false); -// startActivity(intent); - EsignSdk.getInstance().startH5Activity(act, StringUtil.isNull(String.valueOf(bb.getData()), "")); + Intent intent = new Intent(this, H5Activity.class); + intent.putExtra("url", (String) bb.getData()); + intent.putExtra("view_file", false); +// intent.putExtra("isGoCar", true); + startActivity(intent); + +// Bundle t = new Bundle(); +// t.putString("url",(String) bb.getData()); +// t.putBoolean("view_file", false); +// ActivityUtils.startActivity(con, H5Activity2.class,t); + +// EsignSdk.getInstance().startH5Activity(act, StringUtil.isNull(String.valueOf(bb.getData()), "")); } else { Toast.makeText(con, bb.getMsg(), Toast.LENGTH_LONG).show(); }//Log.e("url",CacheGroup.cacheList.get("authUrl")); @@ -168,13 +184,25 @@ public class PersonalAuthActivity extends BaseAppCompatActivity { // startActivityForResult(in, 12); //EsignSdk.getInstance().startH5Activity(act,"https://smlh5.esign.cn/usercenterFront/oemAuth/v3/realName/index?contextKey=b7b103b15b866ec4c72beef1dfe20828&appId=7438873235"); if (key) { -// EsignSdk.getInstance().startH5Activity(act, ""); + PermissionX.init(this) + .permissions(Manifest.permission.CAMERA) + .request((allGranted, grantedList, deniedList) -> { + if(allGranted) { + key = false; + new AuthRequest().getAuthUrl(con, hd); + new Handler().postDelayed(() -> { + key = true; + }, 3000); + } else{ + new MessageUtils().showSimCenPop(con, "缺少相机权限,将无法为您提供服务,去开启!", "取消", "确认", () -> { + Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); + Uri uri = Uri.fromParts("package", getPackageName(), null); + intent.setData(uri); + startActivity(intent); + }); + } + }); - key = false; - new AuthRequest().getAuthUrl(con, hd); - new Handler().postDelayed(() -> { - key = true; - }, 3000); } }); //头像 @@ -276,6 +304,8 @@ public class PersonalAuthActivity extends BaseAppCompatActivity { Toast.makeText(con, "签署场景成功", Toast.LENGTH_SHORT).show(); } else if ("realName".equalsIgnoreCase(jsonObject.getString("key"))) { Toast.makeText(con, "实名认证成功", Toast.LENGTH_SHORT).show(); + EsignSdk.getInstance().finishH5Activity(); + finish(); } else { Toast.makeText(con, "意愿认证成功", Toast.LENGTH_SHORT).show(); } diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/HomeFragment.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/HomeFragment.java index a67bf82..0c2300b 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/HomeFragment.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/HomeFragment.java @@ -188,13 +188,13 @@ public class HomeFragment extends BaseFragment { MsgUtil.addHdMsgWat(hd, 33); //新用户注册,需弹窗提示注册 - if ("0".equals(ub.getData().getRealAuthentication())) { - new MessageUtils().showSimCenPop(con, "该司机还未认证,未认证无法接单。是否去注册!", () -> { - Intent in = new Intent(con, CertificatesActivity.class); - in.putExtra("index", 0); - startActivity(in); - }); - } +// if ("0".equals(ub.getData().getRealAuthentication())) { +// new MessageUtils().showSimCenPop(con, "该司机还未认证,未认证无法接单。是否去注册!", () -> { +// Intent in = new Intent(con, CertificatesActivity.class); +// in.putExtra("index", 0); +// startActivity(in); +// }); +// } } else { Toast.makeText(con, ub.getMsg(), Toast.LENGTH_SHORT).show(); } @@ -258,6 +258,35 @@ public class HomeFragment extends BaseFragment { if (CacheGroup.cacheList.get(WoDeFragment.AUTH_DATA) != null) { DriverAuthDataBean dad = gson.fromJson(CacheGroup.cacheList.get(WoDeFragment.AUTH_DATA), DriverAuthDataBean.class); if (dad.getCode() == 200) { + if (dad.getData() == null) { + new MessageUtils().showSimCenPop(con, "该司机缺少身份证,未认证无法接单。是否去添加!","去添加", () -> { + Intent in = new Intent(con, CertificatesActivity.class); + in.putExtra("index", 0); + startActivity(in); + }); + CacheGroup.cacheList.remove(WoDeFragment.AUTH_DATA); + return; + } + if (dad.getData() != null && TextUtils.isEmpty(dad.getData().getIdcard())) { + new MessageUtils().showSimCenPop(con, "该司机缺少身份证,未认证无法接单。是否去添加!", "去添加",() -> { + Intent in = new Intent(con, CertificatesActivity.class); + in.putExtra("index", 0); + startActivity(in); + }); + } else if (dad.getData() != null && TextUtils.isEmpty(dad.getData().getCardNo())) { + new MessageUtils().showSimCenPop(con, "该司机缺少银行卡,未认证无法接单。是否去添加!", "去添加",() -> { + Intent in333 = new Intent(con, UpBankActivity.class); + in333.putExtra("type", 1); + startActivity(in333); + }); + } else if (dad.getData() != null && TextUtils.isEmpty(dad.getData().getDriverLicense())) { + new MessageUtils().showSimCenPop(con, "该司机缺少驾驶证,未认证无法接单。是否去添加!", "去添加",() -> { + Intent in = new Intent(con, CertificatesActivity.class); + in.putExtra("index", 0); + startActivity(in); + }); + } + SPUtil.insSP(con, "data", "authdata", CacheGroup.cacheList.get(WoDeFragment.AUTH_DATA)); if (dad.getData() != null && 100003 == dad.getData().getAuditStatus()) { initAlct(); @@ -566,7 +595,7 @@ public class HomeFragment extends BaseFragment { v1.setOnClickListener(v2 -> { switch (position) { case 0: - PermissionUtils.Companion.getInstance().showPermissionMessage(getActivity(),"位置权限使用说明", "用于向您推荐可能感兴趣的住宿、饮食、加油站、汽车维修等", + PermissionUtils.Companion.getInstance().showPermissionMessage(getActivity(), "位置权限使用说明", "用于向您推荐可能感兴趣的住宿、饮食、加油站、汽车维修等", new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, (allGranted, grantedList, deniedList) -> { if (allGranted) { @@ -751,9 +780,9 @@ public class HomeFragment extends BaseFragment { if (UiAuxiliary.isLogin(con)) { int curWaybillId = (int) SPUtils.get(con, "curWaybillId", -1); ur.User(); - if (!OneDayShowUtils.getInstance().todayIsShow(con)) { - qr.getBankCardList(); - } +// if (!OneDayShowUtils.getInstance().todayIsShow(con)) { +// qr.getBankCardList(); +// } ur.getDriverExpire(); hyr.startOrder(curWaybillId == -1 ? 0 : curWaybillId); // hyr.startOrder(0); @@ -1121,28 +1150,37 @@ public class HomeFragment extends BaseFragment { // if (b) { // ALProcess.verification(con); // } - PermissionX.init(getActivity()) - .permissions(Manifest.permission.WRITE_EXTERNAL_STORAGE, - Manifest.permission.READ_EXTERNAL_STORAGE, - Manifest.permission.ACCESS_FINE_LOCATION, - Manifest.permission.ACCESS_COARSE_LOCATION) - .request((allGranted, grantedList, deniedList) -> { - if (allGranted) { - ALProcess.verification(con); - } else { - boolean accessCoarseLocation = deniedList.contains("android.permission.ACCESS_FINE_LOCATION"); - boolean contains = deniedList.contains("android.permission.WRITE_EXTERNAL_STORAGE"); - if (accessCoarseLocation | contains) { - new MessageUtils().showSimCenPop(con, "缺少定位权限或媒体和文件权限,会导致无法结算运费,去开启!", "取消", "确认", () -> { - Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); - Uri uri = Uri.fromParts("package", getPackageName(), null); - intent.setData(uri); - startActivity(intent); - }); - } - + PermissionX.init(getActivity()) + .permissions(Manifest.permission.WRITE_EXTERNAL_STORAGE, + Manifest.permission.READ_EXTERNAL_STORAGE, + Manifest.permission.ACCESS_FINE_LOCATION, + Manifest.permission.CAMERA, + Manifest.permission.ACCESS_COARSE_LOCATION) + .request((allGranted, grantedList, deniedList) -> { + if (allGranted) { + ALProcess.verification(con); + } else { + boolean accessCoarseLocation = deniedList.contains("android.permission.ACCESS_FINE_LOCATION"); + boolean contains = deniedList.contains("android.permission.WRITE_EXTERNAL_STORAGE"); + boolean camear = deniedList.contains("android.permission.CAMERA"); + if (accessCoarseLocation | contains) { + new MessageUtils().showSimCenPop(con, "缺少定位权限或媒体和文件权限,会导致无法结算运费,去开启!", "取消", "确认", () -> { + Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); + Uri uri = Uri.fromParts("package", getPackageName(), null); + intent.setData(uri); + startActivity(intent); + }); + } else if (camear) { + new MessageUtils().showSimCenPop(con, "缺少相机权限,会导致无法实名认证,去开启!", "取消", "确认", () -> { + Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); + Uri uri = Uri.fromParts("package", getPackageName(), null); + intent.setData(uri); + startActivity(intent); + }); } - }); + + } + }); // } } else { diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/shangchuan/ShangChuangImgActivity.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/shangchuan/ShangChuangImgActivity.java index cf97540..7a68328 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/shangchuan/ShangChuangImgActivity.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/home/shangchuan/ShangChuangImgActivity.java @@ -484,10 +484,16 @@ public class ShangChuangImgActivity extends BaseAppCompatActivity { // up_image_z(); } } else { + if (!isFinishing() && customDialog != null && customDialog.isShowing()) { + customDialog.dismiss(); + } Toast.makeText(con, "定位异常,请重新定位", Toast.LENGTH_SHORT).show(); } } else { + if (!isFinishing() && customDialog != null && customDialog.isShowing()) { + customDialog.dismiss(); + } Toast.makeText(con, "图片上传异常,请重新上传", Toast.LENGTH_SHORT).show(); } break; @@ -505,11 +511,11 @@ public class ShangChuangImgActivity extends BaseAppCompatActivity { MDPLocationCollectionManager.getShipmentStatus(con, sob.getData().getShippingNoteNumber(), new OnDownloadResultListener() { @Override public void onSuccess(Object o) { - if (o.toString().equals("UNLOADED")){//安联装货,单平台未装货 + if (o.toString().equals("UNLOADED")) {//安联装货,单平台未装货 //卸货状态-平台 isFinish = true; hyr.dischargeCargo(lub); - }else{ + } else { nfc(); uploadInfo(); } @@ -528,10 +534,16 @@ public class ShangChuangImgActivity extends BaseAppCompatActivity { } } else { + if (!isFinishing() && customDialog != null && customDialog.isShowing()) { + customDialog.dismiss(); + } Toast.makeText(con, "定位异常,请重新定位", Toast.LENGTH_SHORT).show(); } } else { + if (!isFinishing() && customDialog != null && customDialog.isShowing()) { + customDialog.dismiss(); + } Toast.makeText(con, "图片上传异常,请重新上传", Toast.LENGTH_SHORT).show(); } break; @@ -556,9 +568,15 @@ public class ShangChuangImgActivity extends BaseAppCompatActivity { } hyr.receipt(urib); } else { + if (!isFinishing() && customDialog != null && customDialog.isShowing()) { + customDialog.dismiss(); + } Toast.makeText(con, "定位异常,请重新定位", Toast.LENGTH_SHORT).show(); } } else { + if (!isFinishing() && customDialog != null && customDialog.isShowing()) { + customDialog.dismiss(); + } Toast.makeText(con, "图片上传异常,请重新上传", Toast.LENGTH_SHORT).show(); } break; diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/wallet/UpBankActivity.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/wallet/UpBankActivity.java index 5cb6629..0cb3bc9 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/wallet/UpBankActivity.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/wallet/UpBankActivity.java @@ -13,8 +13,12 @@ import android.widget.Toast; import androidx.annotation.Nullable; +import com.arpa.hndahesudintocctmsdriver.bean.DriverAuthDataBean; +import com.arpa.hndahesudintocctmsdriver.request.UserRequset; import com.arpa.hndahesudintocctmsdriver.ui.auth.CertificatesActivity; +import com.arpa.hndahesudintocctmsdriver.ui.my.WoDeFragment; import com.arpa.hndahesudintocctmsdriver.util.MessageUtils; +import com.arpa.hndahesudintocctmsdriver.util.sp.SPUtil; import com.arpa.hndahesudintocctmsdriver.weight.OnLimitClickHelper; import com.arpa.hndahesudintocctmsdriver.weight.OnLimitClickListener; import com.bumptech.glide.Glide; @@ -35,6 +39,8 @@ import com.arpa.hndahesudintocctmsdriver.util.view.BaseAppCompatActivity; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; +import com.lxj.xpopup.XPopup; +import com.lxj.xpopup.util.SmartGlideImageLoader; import java.io.File; import java.util.List; @@ -54,6 +60,9 @@ public class UpBankActivity extends BaseAppCompatActivity implements OnLimitClic public GetImageAlert gia = new GetImageAlert(); String path; private OCRBankBean ib; + DriverAuthDataBean dad; + + boolean isAuth = false; private WalletRequest qr; private TextView tp; @@ -73,8 +82,27 @@ public class UpBankActivity extends BaseAppCompatActivity implements OnLimitClic } CacheGroup.cacheList.remove("OCR_BANK"); } + + if (CacheGroup.cacheList.get(WoDeFragment.AUTH_DATA) != null) { + dad = new Gson().fromJson(CacheGroup.cacheList.get(WoDeFragment.AUTH_DATA), DriverAuthDataBean.class); + if (dad.getCode() == 200) { + if (dad.getData() != null && !TextUtils.isEmpty(dad.getData().getCardNo())) { + isAuth = true; + skip.setVisibility(View.GONE); + submit.setBackgroundResource(R.drawable.bg_btn_grey); + bank_name.setText(dad.getData().getBankName()); + bank_number.setText(dad.getData().getCardNo()); + Glide.with(con).load(dad.getData().getBankImgUrl()).into(up_bank_img); + } + + } else { + Toast.makeText(con, dad.getMsg(), Toast.LENGTH_SHORT).show(); + } + CacheGroup.cacheList.remove(WoDeFragment.AUTH_DATA); + } + if (CacheGroup.cacheList.get("insBank") != null) { - if (customDialog!=null&&customDialog.isShowing()){ + if (customDialog != null && customDialog.isShowing()) { customDialog.dismiss(); } BaseBean bb = new Gson().fromJson(CacheGroup.cacheList.get("insBank"), BaseBean.class); @@ -129,7 +157,13 @@ public class UpBankActivity extends BaseAppCompatActivity implements OnLimitClic return_btn = findViewById(R.id.return_btn); qr = new WalletRequest(con, hd); up_bank_img.setOnClickListener(v -> { - gia.showPopueWindow(this); + if (isAuth) { + new XPopup.Builder(con) + .asImageViewer(up_bank_img, dad.getData().getBankImgUrl(), new SmartGlideImageLoader(R.mipmap.ic_launcher_round)) + .show(); + } else { + gia.showPopueWindow(this); + } }); submit.setOnClickListener(new OnLimitClickHelper(this)); skip.setOnClickListener(new OnLimitClickHelper(this)); @@ -142,6 +176,8 @@ public class UpBankActivity extends BaseAppCompatActivity implements OnLimitClic } else { skip.setVisibility(View.GONE); } + UserRequset ur = new UserRequset(con, hd); + ur.driverAuthData(); } @Override @@ -200,6 +236,13 @@ public class UpBankActivity extends BaseAppCompatActivity implements OnLimitClic public void onClick(View view) { switch (view.getId()) { case R.id.submit: + if (isAuth) { + Intent in = new Intent(con, CertificatesActivity.class); + in.putExtra("index", 1); + startActivity(in); + finish(); + return; + } if (ib != null) { submit(); } else { @@ -207,7 +250,7 @@ public class UpBankActivity extends BaseAppCompatActivity implements OnLimitClic } break; case R.id.skip: - new MessageUtils().showSimCenPop(con, "确定跳过银行卡?,可能会导致运费无法结算!","取消","确认", () -> { + new MessageUtils().showSimCenPop(con, "确定跳过银行卡?,可能会导致运费无法结算!", "取消", "确认", () -> { Intent in = new Intent(con, CertificatesActivity.class); in.putExtra("index", 1); startActivity(in); diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/util/MessageUtils.kt b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/util/MessageUtils.kt index 5899596..ccb3f0d 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/util/MessageUtils.kt +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/util/MessageUtils.kt @@ -50,6 +50,7 @@ class MessageUtils { fun showSimCenPop( ctx: Context, message: String, + titleRight:String = "去注册", onMyItemClickListener: SimCenterPop.OnMyItemClickListener ) { @@ -68,7 +69,7 @@ class MessageUtils { XPopup.Builder(ctx) // .hasNavigationBar(false) .isDestroyOnDismiss(true) //对于只使用一次的弹窗对象,推荐设置这个 - .asCustom(SimCenterPop(ctx, message).setOnMyItemClickListener(onMyItemClickListener)) + .asCustom(SimCenterPop(ctx, message, titleRight = titleRight).setOnMyItemClickListener(onMyItemClickListener)) .show() }