package com.hanghui.senic.activity; import android.app.Activity; import android.content.Intent; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; import androidx.core.app.ActivityCompat; import com.bumptech.glide.Glide; import com.bumptech.glide.request.target.SimpleTarget; import com.bumptech.glide.request.transition.Transition; import com.hanghui.senic.MyAppliction; import com.hanghui.senic.R; import com.hanghui.senic.activity.view.ClickButtonFloatView; import com.hanghui.senic.bean.FederatedPlatformsRequestBean; import com.hanghui.senic.bean.IDCARD; import com.hanghui.senic.common.AppHandler; import com.hanghui.senic.common.BroadcastManager; import com.hanghui.senic.common.CommonUtil; import com.hanghui.senic.common.Constants; import com.hanghui.senic.common.DevelopUtil; import com.hanghui.senic.common.DeviceInitManager; import com.hanghui.senic.common.MTTSManager; import com.hanghui.senic.common.PosManager; import com.hanghui.senic.common.TaskStatus; import com.hanghui.senic.common.UiAdaptionManager; import com.hanghui.senic.controller.IDCardControllerManager; import com.hanghui.senic.controller.LiJiangIDCardController; import com.hanghui.senic.controller.PassportController; import com.hanghui.senic.controller.QRCodeController; import com.hanghui.senic.controller.SerialController; import com.hanghui.senic.controller.SmileCallback; import com.hanghui.senic.controller.SmileController; import com.hanghui.senic.model.BaseViewData; import com.hanghui.senic.network.HttpRequest; import com.hanghui.senic.receiver.NetBroadcastReceiver; import com.hanghui.senic.receiver.USBroadcastReceiver; import com.hanghui.senic.service.ClearDataService; import com.hanghui.senic.service.InternetCheckService; import com.hanghui.senic.service.RegularReportingService; import com.hanghui.senic.service.usbserialdemo.utile.ConfigManager; import com.hanghui.senic.service.usbserialdemo.utile.DateUtil; import com.hanghui.senic.service.usbserialdemo.utile.NetWorkUtils; import com.hanghui.senic.service.usbserialdemo.utile.PopupWindowManager; import com.hanghui.senic.service.usbserialdemo.utile.SharedPreferencesUtils; import com.hanghui.senic.service.usbserialdemo.utile.StringIsNull; import com.hanghui.senic.service.usbserialdemo.utile.StringUtils; import com.hanghui.senic.service.usbserialdemo.utile.X1.RelaysAndLedUtile; import com.hanghui.senic.service.usbserialdemo.utile.devicesUI.BaseDeviceUI; import com.hanghui.senic.service.usbserialdemo.utile.devicesUI.IDeviceUI; import com.hanghui.senic.service.usbserialdemo.utile.loacat.AppLogUtils; import java.util.Date; public class MainActivity extends BaseActivity implements InternetCheckService.InternetCheckServiceCallback { private LinearLayout topRightClickConfigTV;//点击设置 private TextView topLeftTimeTV;//时间 private TextView topRightVersionTV;//版本号 private TextView topRightSNTV;//sn号 private static TextView appStatusTextView; private TextView bottomIsDebugShow; private RelativeLayout mainActivity_bg; private ImageView main_networkStatus;//internet的连接状态 private ImageView network_icon_no; private ImageView network_icon_start;//网络类型 private static ImageView hardwareIcon_IDCard;//硬件连接状态-身份证阅读器 private static ImageView hardwareIcon_QRCode;//硬件连接状态-二维码读头 private static ImageView hardwareIcon_Passport;//硬件连接状态-护照机 private static ImageView hardwareIcon_IcCard;//硬件连接状态-IC卡 private IDeviceUI iDeviceUI; private boolean networkStatus = true;//网络状态 private final int REQUEST_EXTERNAL_STORAGE = 1; private String[] PERMISSIONS_STORAGE = { "android.permission.READ_EXTERNAL_STORAGE", "android.permission.WRITE_EXTERNAL_STORAGE", "android.permission.MOUNT_UNMOUNT_FILESYSTEMS"}; private final SmileCallback smileCallback = new SmileCallback() { @Override public void updateView(int code, String msg, BaseViewData viewData) { switch (code) { case Constants.Code_AppStatusTextView: appStatusTextView.setText(msg); break; case Constants.Code_StartFaceOrManualClickButton: AppHandler.getHandler().removeCallbacks(startFaceOrManualBtnShowRunnable); AppHandler.getHandler().postDelayed(startFaceOrManualBtnShowRunnable, 1000); break; } } }; private final HttpRequest.HttpResponseCallback httpResponseCallback = new HttpRequest.HttpResponseCallback() { @Override public void updateView(int code, String msg) { switch (code) { case Constants.Code_HttpResponseCallback_BottomTextPrompt://设置底部文字提示 appStatusTextView.setText(msg); break; case Constants.Code_HttpResponseCallback_NetworkNormalIcon://设置网络正常图标 main_networkStatus.setImageResource(R.mipmap.network_available); int networkType = NetWorkUtils.getNetworkType(MainActivity.this); if (networkType != -1){ network_icon_no.setVisibility(View.GONE); network_icon_start.setVisibility(View.VISIBLE); network_icon_start.setImageResource(NetWorkUtils.getNetworkType(MainActivity.this)); } else {//无网络 network_icon_no.setVisibility(View.VISIBLE); network_icon_start.setVisibility(View.GONE); } break; case Constants.Code_HttpResponseCallback_BottomTextType://判断底部文字文字显示(如果硬件没有开启,则直接初始化smile) if (DeviceInitManager.getInstance().totalOpenHardwareNum == 0){//没有需要打开的硬件直接smile初始化 HttpRequest.getInstance().setStartSmileService(); }else { appStatusTextView.setText("硬件启动中"); } // AppHandler.getHandler().postDelayed(startHardwareRunnable,2 * 1000); break; case Constants.Code_HttpResponseCallback_HomeBackgroundImage://主页背景图片 if (!StringIsNull.IsStringNull(ConfigManager.getAuthenticationBean().getData().get(0).getHomePageUrl())) { //首页背景替换 Glide.with(MainActivity.this) .asBitmap() .load(ConfigManager.getAuthenticationBean().getData().get(0).getHomePageUrl()) .into(new SimpleTarget() { @Override public void onResourceReady(Bitmap resource, Transition transition) { Drawable drawable = new BitmapDrawable(resource); mainActivity_bg.setBackground(drawable); } }); } break; case Constants.Code_HttpResponseCallback_HideBottomTextView://检测到设备已到期隐藏底部文字 appStatusTextView.setVisibility(View.GONE); break; case Constants.Code_HttpResponseCallback_ShowBottomTextView://显示底部文字 appStatusTextView.setVisibility(View.VISIBLE); break; case Constants.Code_HttpResponseCallback_ShowIDCardIcon://身份证阅读器打开,显示顶部身份证阅读器图标 hardwareIcon_IDCard.setVisibility(View.VISIBLE); break; case Constants.Code_HttpResponseCallback_ShowQRCodeIcon://二维码读头开启,显示顶部二维码读头图标 hardwareIcon_QRCode.setVisibility(View.VISIBLE); break; case Constants.Code_HttpResponseCallback_ShowPassportIcon://护照机开启,显示顶部护照机图标 hardwareIcon_Passport.setVisibility(View.VISIBLE); break; case Constants.Code_HttpResponseCallback_ShowICCardIcon://IC卡开启,显示顶部IC卡开启图标 hardwareIcon_IcCard.setVisibility(View.VISIBLE); break; } } }; private final SerialController.SerialPortCallback serialPortCallback = new SerialController.SerialPortCallback() { @Override public void updateView(int code, String msg) { if (code == 0){ hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_succeed); }else { hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_fail); } } }; private final PassportController.PassportCallback passportCallback = new PassportController.PassportCallback() { @Override public void updateView(int code, String msg) { appStatusTextView.setText(msg); } }; private final NetBroadcastReceiver.NetNetworkCallback netNetworkCallback = new NetBroadcastReceiver.NetNetworkCallback() { @Override public void updateView(int code, String msg) { switch (code) { case Constants.Code_NetNetworkCallback_NetworkNormal: Glide.with(CommonUtil.getCurrentActivity()) .load(R.mipmap.network_available) .into(main_networkStatus); int networkState = NetWorkUtils.getNetworkType(MainActivity.this); if (networkState != -1){ network_icon_no.setVisibility(View.GONE); network_icon_start.setVisibility(View.VISIBLE); network_icon_start.setImageResource(NetWorkUtils.getNetworkType(MainActivity.this)); } else {//无网络 network_icon_no.setVisibility(View.VISIBLE); network_icon_start.setVisibility(View.GONE); } break; case Constants.Code_NetNetworkCallback_NetworkAnomaly: Glide.with(CommonUtil.getCurrentActivity()) .load(R.mipmap.no_network) .into(main_networkStatus); network_icon_no.setVisibility(View.VISIBLE); network_icon_start.setVisibility(View.GONE); break; } } }; private final USBroadcastReceiver.USBroadcastCallback usBroadcastCallback = new USBroadcastReceiver.USBroadcastCallback() { @Override public void updateView(int code, String msg) { switch (code){ case Constants.Code_USBroadcastCallback_USBIDCardSucceed://身份证USB连接成功 hardwareIcon_IDCard.setImageResource(R.mipmap.hardware_icon_idcard_succeed); break; case Constants.Code_USBroadcastCallback_USBIDCardFail://身份证USB连接断开 hardwareIcon_IDCard.setImageResource(R.mipmap.hardware_icon_idcard_fail); break; case Constants.Code_USBroadcastCallback_USBQRCodeSucceed://二维码USB连接成功 hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_succeed); break; case Constants.Code_USBroadcastCallback_USBQRCodeFail://二维码USB连接断开 hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_fail); break; case Constants.Code_USBroadcastCallback_USBAllInOneIDCardSucceed://东信多合一USB连接成功 if (ConfigManager.getAuthenticationBeanListBean().isUseIdcard() && ConfigManager.getAuthenticationBeanListBean().getIdCardReaderBrand() == 9){ hardwareIcon_IDCard.setImageResource(R.mipmap.hardware_icon_idcard_succeed); } if (ConfigManager.getAuthenticationBeanListBean().isUseQrcode() && ConfigManager.getAuthenticationBeanListBean().getQrCodeReaderBrand() == 6){ hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_succeed); } if (ConfigManager.isOpenICCard()){ hardwareIcon_IcCard.setImageResource(R.mipmap.hardware_icon_iccard_succeed); } break; case Constants.Code_USBroadcastCallback_USBAllInOneIDCardFail://东信多合一USB连接断开 if (ConfigManager.getAuthenticationBeanListBean().isUseIdcard() && ConfigManager.getAuthenticationBeanListBean().getIdCardReaderBrand() == 9){ hardwareIcon_IDCard.setImageResource(R.mipmap.hardware_icon_idcard_fail); } if (ConfigManager.getAuthenticationBeanListBean().isUseQrcode() && ConfigManager.getAuthenticationBeanListBean().getQrCodeReaderBrand() == 6){ hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_fail); } if (ConfigManager.isOpenICCard()){ hardwareIcon_IcCard.setImageResource(R.mipmap.hardware_icon_iccard_fail); } break; } } }; //首页时间计时 Runnable mainCountDownRunnable = new Runnable() { @Override public void run() { topLeftTimeTV.setText(DateUtil.getTime("yyyy.MM.dd HH:mm:ss") + " " + DateUtil.getWeekOfDate(new Date())); AppHandler.getHandler().postDelayed(this, 1000); } }; /** * 硬件初始化结果展示在底部文字显示 */ static boolean isStartSmile = false; public static Runnable startHardwareRunnable = new Runnable() { @Override public void run() { if (isStartSmile){ isStartSmile = false; DeviceInitManager.getInstance().totalOpenHardwareNum = -1; //smile服务 HttpRequest.getInstance().setStartSmileService(); } if (DeviceInitManager.getInstance().totalOpenHardwareNum == DeviceInitManager.getInstance().getAlreadyInitHardwareNum()){ isStartSmile = true; AppHandler.getHandler().postDelayed(this, DeviceInitManager.getInstance().getAlreadyInitHardwareNum() * 2000); } //顶部图标显示 switch (DeviceInitManager.getInstance().getSelectHardwareToInt()){ case 0: hardwareIcon_IDCard.setImageResource(R.mipmap.hardware_icon_idcard_succeed); break; case 1: hardwareIcon_IDCard.setImageResource(R.mipmap.hardware_icon_idcard_fail); break; case 2: hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_succeed); break; case 3: hardwareIcon_QRCode.setImageResource(R.mipmap.hardware_icon_qrcode_fail); break; case 4: hardwareIcon_Passport.setImageResource(R.mipmap.hardware_icon_passport_succeed); break; case 5: hardwareIcon_Passport.setImageResource(R.mipmap.hardware_icon_passport_fail); break; case 6: hardwareIcon_IcCard.setImageResource(R.mipmap.hardware_icon_iccard_succeed); break; case 7: hardwareIcon_IcCard.setImageResource(R.mipmap.hardware_icon_iccard_fail); break; } appStatusTextView.setText(DeviceInitManager.getInstance().getSelectHardwareToString()); } }; //ABCPService服务启动成功后执行, 根据配置文件展示或者隐藏 点击开始刷脸核验按钮 和 点击手输证件号按钮 public Runnable startFaceOrManualBtnShowRunnable = new Runnable() { @Override public void run() { appStatusTextView.setVisibility(View.GONE); //根据配置文件展示或者隐藏 点击开始刷脸核验按钮 和 点击手输证件号按钮 ConfigManager.ShowClickButton(); } }; @Override public int getLayout() { return R.layout.activity_main; } //判断activity是否在最上层 @Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (!hasFocus) { if (ConfigManager.getAuthenticationBean() != null) { RelaysAndLedUtile.getInstance().setLedLight(ConfigManager.getAuthenticationBean().getData().get(0).getLightMode(), true); } } else { if (ConfigManager.getAuthenticationBean() != null) { RelaysAndLedUtile.getInstance().setLedLight(ConfigManager.getAuthenticationBean().getData().get(0).getLightMode(), false); } } } @Override public void setOnCreate() { AppLogUtils.e(false, "", "MainActivity生命周期 setOnCreate(), MainActivity.this=" + MainActivity.this); ConfigManager.isConfigRequestSuccess = false; iDeviceUI = BaseDeviceUI.getInstance().getDeviceUI(); initViews(); //语音播报 MTTSManager.getInstance().init(); //二维码需要的权限申请 qRcodeNeededPermissionRequest(this); //护照机权限申请 PassportController.getInstance().PermissionRequests(); //代码中动态注册广播 BroadcastManager.getInstance().registerNetworkChangeReceiver(netNetworkCallback); BroadcastManager.getInstance().registerUSBroadcastReceiver(usBroadcastCallback); PosManager.getInstance().init(); //启动应用状态定时上报服务 RegularReportingService.start(this); //ping百度,判断网络连接是否正常 InternetCheckService.start(this); InternetCheckService.setInternetCheckServiceCallback(this); //清除上一天数据 ClearDataService.start(this); //首页时间 startCountDown(); //注册回调接口 SmileController.getInstance().setSmileCallback(smileCallback); HttpRequest.getInstance().setHttpResponseCallback(httpResponseCallback); PassportController.getInstance().setPassportCallback(passportCallback); SerialController.getInstance().setSerialPortCallback(serialPortCallback); //点击按钮是否显示 ClickButtonFloatView.getInstance().setShowView(true); //请求在线配置接口 requestConfiguration(); //dimens资源的读取位置 UiAdaptionManager.resourceReadLocation(); //testPersoncard(); LiJiangIDCardController.isMainActivityDestroyed = false; initLog(); } private void initLog() { boolean isScreenLogOpen = (boolean) SharedPreferencesUtils.getParam(MyAppliction.getContext(), "is_screen_log_open", DevelopUtil.isScreenLogOpen); DevelopUtil.setScreenLogOpen(isScreenLogOpen); } private void testPersoncard() { topRightSNTV.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String base64 = "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\\u003d\\u003d"; AppHandler.getHandler().postDelayed(new Runnable() { @Override public void run() { TaskStatus.taskStatus = "personCard"; IDCARD idCard = new IDCARD(); idCard.setIdNumber("410922199611150054"); idCard.setName("尚义鹏"); idCard.setPhotoBase64(base64); FederatedPlatformsRequestBean.ExtInfoDTO exInfoDTO = new FederatedPlatformsRequestBean.ExtInfoDTO(); exInfoDTO.setPassRes(""); exInfoDTO.setSmileParams(""); exInfoDTO.setIdcardContent(ConfigManager.getGson().toJson(idCard)); ConfigManager.setFederatedPlatformsRequestBean(ConfigManager.SN, 1, "410922199611150054", "尚义鹏", "", "check", "", "", "", exInfoDTO, "", ""); SmileController.getInstance().invokePersonCard("尚义鹏", "410922199611150054", base64); HttpRequest.getInstance().requestFederatedPlatformsCheck(true); } }, 800); AppHandler.getHandler().postDelayed(new Runnable() { @Override public void run() { SmileController.getInstance().invokeResume(ConfigManager.mSessionId); } }, 810); } }); } /** * 请求在线配置 */ private void requestConfiguration() { networkStatus = NetWorkUtils.isNetworkConnected(this); if (networkStatus) { appStatusTextView.setText("网络状态正常"); appStatusTextView.setText("获取在线配置中……"); Glide.with(this) .load(R.mipmap.network_available) .into(main_networkStatus); int networkState = NetWorkUtils.getNetworkType(MainActivity.this); if (networkState != -1){ network_icon_no.setVisibility(View.GONE); network_icon_start.setVisibility(View.VISIBLE); network_icon_start.setImageResource(NetWorkUtils.getNetworkType(MainActivity.this)); } else {//无网络 network_icon_no.setVisibility(View.VISIBLE); network_icon_start.setVisibility(View.GONE); } HttpRequest.getInstance().requestAuthentication(); } else { if (ConfigManager.isForTheFirstTime()) {//首次打开 DeviceInitManager.getInstance().setConfigRequestSuccess(false); appStatusTextView.setText("在线配置获取失败"); } else { AppHandler.getHandler().post(new Runnable() { @Override public void run() { String promptMessage = ConfigManager.localConfiguration(); appStatusTextView.setText(promptMessage); } }); } } } /** * 首页时间计时 */ private void startCountDown() { AppHandler.getHandler().removeCallbacks(mainCountDownRunnable); AppHandler.getHandler().postDelayed(mainCountDownRunnable, 1000); } private static long lastClickTime; // 上次点击的时间 private static final int THRESHOLD_TIME = 500; //设置的阈值,单位为毫秒 private int clickCount = 0; private View.OnClickListener mainConfigOnClickListener = new View.OnClickListener() { @Override public void onClick(View v) { long currentTime = System.currentTimeMillis(); if (currentTime - lastClickTime > THRESHOLD_TIME) { // 非连续点击处理逻辑 } else { clickCount++; // 点击次数 // 连续点击处理逻 if (clickCount == 10) { // 连续点击了10次,执行相关操作 // 重置点击计数器 clickCount = 0; Intent intent = new Intent(MainActivity.this, PassWordActivity.class); startActivity(intent); finish(); } } lastClickTime = currentTime; } }; //初始化页面 private void initViews() { main_networkStatus = findViewById(R.id.main_NetWorkStatus); topLeftTimeTV = findViewById(R.id.main_Time); appStatusTextView = findViewById(R.id.main_APPStuter); topRightVersionTV = findViewById(R.id.main_Version); topRightSNTV = findViewById(R.id.main_SN); mainActivity_bg = findViewById(R.id.mainActivityRelativeLayout); topRightClickConfigTV = findViewById(R.id.main_Config); bottomIsDebugShow = findViewById(R.id.bottomIsDebugShow); network_icon_no = findViewById(R.id.network_icon_no); network_icon_start = findViewById(R.id.network_icon_start); topRightClickConfigTV.setOnClickListener(mainConfigOnClickListener); hardwareIcon_IDCard = findViewById(R.id.hardwareIcon_IDCard); hardwareIcon_QRCode = findViewById(R.id.hardwareIcon_QRCode); hardwareIcon_Passport = findViewById(R.id.hardwareIcon_Passport); hardwareIcon_IcCard = findViewById(R.id.hardwareIcon_IcCard); topLeftTimeTV.setText(DateUtil.getTime("yyyy.MM.dd HH:mm:ss") + " " + DateUtil.getWeekOfDate(new Date())); if (!(com.hanghui.senic.BuildConfig.BUILD_TYPE).equals("release")) {//debug版本 bottomIsDebugShow.setVisibility(View.VISIBLE); bottomIsDebugShow.setText("DEBUG"); bottomIsDebugShow.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(mContext, DevelopActivity.class); startActivity(intent); } }); } topRightVersionTV.setText("版本:v" + ConfigManager.getVersionName(this)); topRightSNTV.setText("SN:" + ConfigManager.getDeviceSN()); appStatusTextView.setVisibility(View.VISIBLE); AppLogUtils.e(false, "", "----版本尺寸 " + getResources().getString(R.string.resource_location)); } @Override public void onResume() { super.onResume(); AppLogUtils.e(false, "", "MainActivity生命周期 onResume "); try { if (!StringUtils.isEmpty(ConfigManager.mSessionId)) { RelaysAndLedUtile.getInstance().setLedLight(ConfigManager.getAuthenticationBean().getData().get(0).getLightMode(), false); } } catch (Exception e) { e.printStackTrace(); } PopupWindowManager.showFloatIfNoNetwork(); } @Override public void onPause() { super.onPause(); AppLogUtils.e(false, "", "MainActivity生命周期 onPause "); if (ConfigManager.getAuthenticationBean() != null && ConfigManager.getAuthenticationBean().getData() != null) { RelaysAndLedUtile.getInstance().setLedLight(ConfigManager.getAuthenticationBean().getData().get(0).getLightMode(), true); } PopupWindowManager.getInstance().dismissNetWorkpopupWindow(); LiJiangIDCardController.getInstance().dismissAbnormalPopupWindow(); } @Override protected void onDestroy() { super.onDestroy(); AppLogUtils.e(false, "", "MainActivity生命周期 onDestroy "); BroadcastManager.getInstance().unRegisterNetworkChangeReceiver(); BroadcastManager.getInstance().unRegisterUSBroadcastReceiver(); PopupWindowManager.getInstance().dismissNetWorkpopupWindow(); //销毁smile刷脸 SmileController.getInstance().destroy(); //关闭身份证阅读器 IDCardControllerManager.destroy(); PosManager.getInstance().destroy(); //关闭二维码 QRCodeController.getInstance().destroy(); //关闭串口 SerialController.getInstance().CloseComPort(); RelaysAndLedUtile.getInstance().setLedLight(ConfigManager.getAuthenticationBean().getData().get(0).getLightMode(), false); //将硬件状态恢复 DeviceInitManager.getInstance().setHardwareStart(); try { ConfigManager.closePassport = true; //关闭护照 if (ConfigManager.getAuthenticationBean().getData().get(0).isOpenPassport()) { PassportController.getInstance().closePassport(); } } catch (Exception e) { e.printStackTrace(); } //关闭定时器 AppHandler.getHandler().removeCallbacks(startFaceOrManualBtnShowRunnable); AppHandler.getHandler().removeCallbacksAndMessages(null); MTTSManager.getInstance().destroy(); LiJiangIDCardController.isMainActivityDestroyed = true; } /** * 二维码sdk需要的权限 * * @param activity */ public void qRcodeNeededPermissionRequest(Activity activity) { try { //检测是否有写的权限 int permission = ActivityCompat.checkSelfPermission(activity, "android.permission.WRITE_EXTERNAL_STORAGE"); if (permission != PackageManager.PERMISSION_GRANTED) { // 没有写的权限,去申请写的权限,会弹出对话框 ActivityCompat.requestPermissions(activity, PERMISSIONS_STORAGE, REQUEST_EXTERNAL_STORAGE); } ActivityCompat.requestPermissions(activity, PERMISSIONS_STORAGE, REQUEST_EXTERNAL_STORAGE); } catch (Exception e) { e.printStackTrace(); } QRCodeController.getInstance().requestUSBPermission(); QRCodeController.getInstance().requestOverlayPersmission(); } @Override public void updateView(int code, String msg) { AppHandler.getHandler().post(new Runnable() { @Override public void run() { if(code == 0){ main_networkStatus.setImageResource(R.mipmap.network_available); int networkState = NetWorkUtils.getNetworkType(MainActivity.this); if (networkState != -1){ network_icon_no.setVisibility(View.GONE); network_icon_start.setVisibility(View.VISIBLE); network_icon_start.setImageResource(NetWorkUtils.getNetworkType(MainActivity.this)); } else {//无网络 network_icon_no.setVisibility(View.VISIBLE); network_icon_start.setVisibility(View.GONE); } } else { main_networkStatus.setImageResource(R.mipmap.no_network); network_icon_no.setVisibility(View.VISIBLE); network_icon_start.setVisibility(View.GONE); } } }); } }