123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763 |
- package com.telpo.facenormal.utile;
- import android.app.Activity;
- import android.app.ActivityManager;
- import android.content.Context;
- import android.content.pm.PackageInfo;
- import android.content.pm.PackageManager;
- import android.graphics.Bitmap;
- import android.graphics.BitmapFactory;
- import android.hardware.Camera;
- import android.net.ConnectivityManager;
- import android.net.NetworkInfo;
- import android.os.Build;
- import android.os.Bundle;
- import android.os.Environment;
- import android.text.TextUtils;
- import android.util.Base64;
- import android.util.Log;
- import android.util.TypedValue;
- import android.widget.Toast;
- import com.alipay.iot.bpaas.api.BPaaSApi;
- import com.alipay.iot.bpaas.api.service.BPaaSCallback;
- import com.alipay.iot.bpaas.api.service.BPaaSResponse;
- import com.blankj.utilcode.util.FileUtils;
- import com.blankj.utilcode.util.ToastUtils;
- import com.common.pos.api.util.PosUtil;
- import com.telpo.facenormal.bean.AuthenticationBean;
- import com.telpo.facenormal.bean.CheckNumBean;
- import com.telpo.facenormal.bean.GetFederatedPlatformsBean;
- import com.telpo.facenormal.bean.SetFederatedPlatformsBean;
- import com.telpo.facenormal.bean.ZoloConfigBean;
- import com.telpo.facenormal.contract.ContractInterface;
- import com.telpo.facenormal.utile.Serial.SerialManage;
- import com.telpo.facenormal.utile.loacat.AppLogUtils;
- import com.zkteco.android.biometric.module.idcard.meta.IDCardInfo;
- import java.io.ByteArrayOutputStream;
- import java.io.File;
- import java.lang.reflect.Method;
- import java.util.ArrayList;
- import java.util.Calendar;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import java.util.concurrent.ScheduledExecutorService;
- import static android.content.Context.ACTIVITY_SERVICE;
- /**
- * 数据配置
- */
- public class Config {
- public static boolean doorStatus=false;//门磁信号状态 短接-true false-断开
- public static String[] DevicesPath=new String[0];
- public static String taskStatus = ""; //wait-等待 doing-执行对应操作 complete-得到结果并开始执行商户或联动平台接口请求
- public static ScheduledExecutorService scheduledExecutor;
- public static int openTimes=0;//开门次数hen
- public static int PassableOpenTimes=0;//可通行人数
- public static String taskFlag="noInfo";//noInfo or existInfo
- public static String SN= getDeviceSN();//设备sn号 getDeviceSN()
- public static String token="e69dade5b79ee888aae6b187";
- public static String App_ID = "";//支付宝⽤⼾库ID
- public static String machineAppId = "";//设备appId
- public static String serviceAddress = "";//商户地址
- public static String serviceAppId = "";//商户appid
- public static String trade = "";//场景参数(TRAFFIC)
- public static String userLibName = "";//⽤⼾库名称 --填写 A/B/C
- public static String sceneName = "";//场景名称(出⾏)
- public static String mode = "";//模式 mode: public/close/elasticity 三个参数分别代表 开放/封闭/弹性
- public static String logicGroupID = "";// elasticity 时 逻辑⽤⼾库ID
- public static String GroupID = "";// elasticity 时 逻辑⽤⼾库ID
- public static String passWay="normal";//判断是否为机场
- public static String APP_VERION = "1.0";
- public static String mSessionId = "";
- public static boolean bRepeatRead = true;//是否开始读卡
- public static boolean checkBoxRepeatRead = true;//是否连续读卡
- public static String linkageAds="";//联动平台地址
- public static boolean isNavigationBarVisibility = false;
- public static boolean isNotificationBarVisibility = false;
- public static String checkWay="";
- public static String name="";//姓名
- public static String licid="";//身份证号
- public static String QrData="";//二维码返回
- public static Bitmap avatarBitmap=null;//身份证头像或者商户平台返回头像
- public static AuthenticationBean authenticationBean;
- public static AuthenticationBean getAuthenticationBean() {
- if (authenticationBean==null){
- authenticationBean=AuthenticationBeans();
- }
- return authenticationBean;
- }
- public static AuthenticationBean AuthenticationBeans() {
- AuthenticationBean authenticationBean=new AuthenticationBean();
- authenticationBean.setMsg("本地配置");
- List<AuthenticationBean.DataDTO> dataDTOS=new ArrayList<>();
- AuthenticationBean.DataDTO dataDTO=new AuthenticationBean.DataDTO();
- dataDTO.setName("");
- dataDTO.setMachineAppId("");
- dataDTO.setServiceAppId("");
- dataDTO.setServiceAddress("");
- dataDTO.setThirdAuth(false);
- dataDTO.setSceneName("");
- dataDTO.setTrade("");
- dataDTO.setUserLibName("");
- dataDTO.setGroupId("");
- dataDTO.setLogicGroupID("");
- dataDTO.setMode("close");
- dataDTO.setUseAlipayFace(false);
- dataDTO.setLinkageAds("");
- dataDTO.setSuccessPageTime(2);
- dataDTO.setFailPageTime(5);
- AuthenticationBean.DataDTO.ZoloConfigDTO zoloConfigBean=new AuthenticationBean.DataDTO.ZoloConfigDTO();
- zoloConfigBean.setSupAlgorithmAngle(90);
- zoloConfigBean.setAlgorithmAngle(270);
- zoloConfigBean.setDisplayAngle(270);
- zoloConfigBean.setIsMirror(true);
- zoloConfigBean.setIsDisplayMirror(false);
- dataDTO.setZoloConfig(zoloConfigBean);
- dataDTO.setUseIdcard(true);
- dataDTO.setUsePersonCard(false);
- dataDTO.setUseQrcode(true);
- dataDTO.setUseLinkage(true);
- dataDTO.setFaceMode("auto");
- dataDTO.setClickButtonText("点击开始刷脸核验");
- dataDTO.setIsCaptureFace(false);
- dataDTO.setUseSerialPort("default");
- dataDTO.setSignalNo("");
- dataDTO.setLightMode("auto");
- dataDTO.setVolume(80);
- dataDTO.setSucVoice("请通行");
- dataDTO.setSucText("请通行");
- dataDTO.setFailText("⽐对失败,请联系现场⼯作⼈员");
- dataDTO.setFailVoice("⽐对失败,请联系现场⼯作⼈员");
- dataDTO.setHideNavigationBar(false);
- dataDTO.setForbidPullDown(false);
- dataDTO.setHomePageUrl("");
- dataDTO.setTransitionPageUrl("");
- dataDTO.setIsNeed1V1(true);
- dataDTO.setHeartTrackingUrl("");
- dataDTO.setTransitPushUrl("");
- dataDTO.setShowTopBar(false);
- dataDTO.setLeftTopBarText("");
- dataDTO.setRightTopBarText("");
- dataDTO.setPassWay("normal");
- dataDTO.setOpenAgeLimit(false);
- dataDTO.setLimitSectionEnd(0);
- dataDTO.setLimitSectionStart(1);
- dataDTO.setAgeForbidText("禁止进入");
- dataDTO.setMpassword("142536");
- dataDTO.setPushGm(false);
- dataDTO.setGMAddress("");
- dataDTO.setGMFrequency(1000);
- dataDTO.setAutoLaunch(true);
- dataDTO.setEntryFaceMode("zero");
- dataDTO.setCameraBrand("IR");
- dataDTO.setCameraType("Normal");
- dataDTOS.add(dataDTO);
- authenticationBean.setData(dataDTOS);
- return authenticationBean;
- }
- public static void setAuthenticationBean(AuthenticationBean authenticationBean) {
- Config.authenticationBean = authenticationBean;
- }
- public static GetFederatedPlatformsBean getFederatedPlatformsBean;
- public static GetFederatedPlatformsBean getGetFederatedPlatformsBean() {
- return getFederatedPlatformsBean;
- }
- public static void setGetFederatedPlatformsBean(GetFederatedPlatformsBean getFederatedPlatformsBean) {
- Config.getFederatedPlatformsBean = getFederatedPlatformsBean;
- }
- public static SetFederatedPlatformsBean setFederatedPlatformsBean;
- public static SetFederatedPlatformsBean getSetFederatedPlatformsBean() {
- return setFederatedPlatformsBean;
- }
- public static void setSetFederatedPlatformsBean(SetFederatedPlatformsBean setFederatedPlatformsBean) {
- Config.setFederatedPlatformsBean = setFederatedPlatformsBean;
- }
- public static String Url = "https://tx.hz-hanghui.com:8088/hanghui-server-platform/";
- //申请三要素
- public static String Urls = "https://tx.hz-hanghui.com:8088/hanghui-server-platform/";
- //根据三要素返回最终结果url http://115.227.34.58:1832/ http://192.168.11.3:1832/
- public static String FederatedPlatformsUrl1 = "";//115.227.34.58:1832
- public static String FederatedPlatformsUrl = "http://"+FederatedPlatformsUrl1+"/";
- //通用
- public static String DeviceStateReportUrl = "https://tx.hz-hanghui.com:8088/";
- //设备定时上报
- public static String trackingUrl = "";
- //设备记录上报
- public static String EventRecordsUrl = "";
- //将选中数据添加到数组中
- public static List<CheckNumBean> CheckList=new ArrayList<>();
- //门磁信号地址
- public static String GMAddress = "http://192.168.11.117:8080/index/test";
- //门磁信号发送频率
- public static int GMFrequency = 1000;//默认1s
- /**
- * 身份证阅读器
- * @param bitmap
- * @return
- */
- public static IDCardInfo setIDCardInfo;
- public static IDCardInfo getIDCardInfo() {
- return setIDCardInfo;
- }
- public static void setIDCardInfo(IDCardInfo setIDCardInfo) {
- Config.setIDCardInfo = setIDCardInfo;
- }
- public static String bitmapToString(Bitmap bitmap) {
- //将Bitmap转换成字符串
- try {
- String string = null;
- ByteArrayOutputStream bStream = new ByteArrayOutputStream();
- bitmap.compress(Bitmap.CompressFormat.PNG, 100, bStream);
- byte[] bytes = bStream.toByteArray();
- string = Base64.encodeToString(bytes, Base64.DEFAULT);
- return string;
- } catch (Exception e) {
- e.printStackTrace();
- return "";
- }
- }
- public static Bitmap stringToBitmap(String string) {
- // 将字符串转换成Bitmap类型
- Bitmap bitmap = null;
- try {
- byte[] bitmapArray;
- bitmapArray = Base64.decode(string, Base64.DEFAULT);
- bitmap = BitmapFactory.decodeByteArray(bitmapArray, 0,
- bitmapArray.length);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return bitmap;
- }
- /**
- * Base64转Bitmap
- *
- * @return Bitmap 图片
- */
- public static Bitmap base642Bitmap(String base64String) {
- if (null == base64String) throw new NullPointerException();
- byte[] decode = Base64.decode(base64String.split(",")[1], Base64.DEFAULT);
- Bitmap mBitmap = BitmapFactory.decodeByteArray(decode, 0, decode.length);
- return mBitmap;
- }
- //获取设备SN码
- public static String getDeviceSN(){
- String serial = null;
- try {
- Class<?> c =Class.forName("android.os.SystemProperties");
- Method get =c.getMethod("get", String.class);
- if(Build.VERSION.SDK_INT < 28){//28 is andoird 9.0 24-7.0 22-5.1
- serial = (String)get.invoke(c, "ro.serialno");
- } else{
- serial = (String)get.invoke(c, "persist.sys.hrSerial");//vendor.gsm.serial
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- //紫鹏设备
- if (TextUtils.isEmpty(serial)) {
- serial = Build.SERIAL;
- }
- return serial;
- }
- //获取版本号
- public static String getVersionName(Context activity){
- PackageInfo packageInfo = null;
- try {
- packageInfo = activity.getPackageManager()
- .getPackageInfo(activity.getPackageName(), 0);
- } catch (PackageManager.NameNotFoundException e) {
- e.printStackTrace();
- }
- //获取APP版本versionName
- String versionName = packageInfo.versionName;
- //获取APP版本versionCode
- int versionCode = packageInfo.versionCode;
- return versionName;
- }
- //获取版本code
- public static int getVersionCode(Activity activity){
- PackageInfo packageInfo = null;
- try {
- packageInfo = activity.getPackageManager()
- .getPackageInfo(activity.getPackageName(), 0);
- } catch (PackageManager.NameNotFoundException e) {
- e.printStackTrace();
- }
- //获取APP版本versionName
- String versionName = packageInfo.versionName;
- //获取APP版本versionCode
- int versionCode = packageInfo.versionCode;
- return versionCode;
- }
- //判断是否有网络连接
- public static boolean isNetworkConnected(Context context) {
- if (context != null) {
- ConnectivityManager mConnectivityManager = (ConnectivityManager) context
- .getSystemService(Context.CONNECTIVITY_SERVICE);
- NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();
- if (mNetworkInfo != null) {
- return mNetworkInfo.isAvailable();
- }
- }
- return false;
- }
- public static int getNumberOfTicketChecks(Activity activity) {
- Config.openTimes= (int) SharedPreferencesUtils.getParam(activity,"openTimesNum",0);
- Config.PassableOpenTimes= (int) SharedPreferencesUtils.getParam(activity, "PassableOpenTimes", 0);
- int NumberOfTicketChecks= (int) SharedPreferencesUtils.getParam(activity,"NumberOfTicketChecks",0);
- return NumberOfTicketChecks;
- }
- // 停止刷脸服务
- public static void stopBpaasService(String mSessionId,FaceScenicUtile faceScenicUtile,Context context) {
- if (mSessionId == null || mSessionId.equals("")) {
- return;
- }
- BPaaSApi.getInstance().stopBPaaSService(Config.machineAppId, "BPaasVerifyID", new Bundle(), mSessionId, new BPaaSCallback() {
- @Override
- public void onResponse(BPaaSResponse bPaaSResponse) {
- if (bPaaSResponse == null || bPaaSResponse.getCode() == BPaaSResponse.RESULT_CODE_FAIL) {
- AppLogUtils.w(true,"停止刷脸服务失败 stopBPaaSService bPaaSResponse=" + bPaaSResponse);
- return;
- }
- String subCode = bPaaSResponse.getSubCode();
- int code = bPaaSResponse.getCode();
- setFaceScenicUtile(Config.getAuthenticationBean().getData().get(0).getLightMode(),faceScenicUtile,false,context);
- AppLogUtils.d(true,"成功 stopBPaaSService subCode=" + subCode + "code:" + code);
- }
- @Override
- public void onEvent(String s, String s1, Bundle bundle) {
- }
- });
- mSessionId = null;
- Config.mSessionId="";
- }
- public static void getToast(Activity activity){
- Toast.makeText(activity,"配置更新成功",Toast.LENGTH_SHORT).show();
- }
- // 服务是否运行
- public static boolean isServiceRunning(Context context, String serviceName) {
- ActivityManager manager = (ActivityManager) context.getSystemService(ACTIVITY_SERVICE);
- for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
- if (serviceName.equals(service.service.getClassName())) {
- return true;
- }
- }
- return false;
- }
- /**
- * 判断相机是否占用
- */
- public static boolean isCameraCanUse() {
- boolean canUse = false;
- Camera mCamera = null;
- try {
- mCamera = Camera.open(0);
- Camera.Parameters mParameters = mCamera.getParameters();
- mCamera.setParameters(mParameters);
- } catch (Exception e) {
- canUse = false;
- }
- if (mCamera != null) {
- mCamera.release();
- canUse = true;
- }
- return canUse;
- }
- /**
- * 删除文件夹及文件夹下所有内容
- */
- //删除文件夹和文件夹里面的文件
- public static void deleteDirWihtFile(File dir) {
- if (dir == null || !dir.exists() || !dir.isDirectory())
- return;
- for (File file : dir.listFiles()) {
- if (file.isFile())
- file.delete(); // 删除所有文件
- else if (file.isDirectory())
- deleteDirWihtFile(file); // 递规的方式删除文件夹
- }
- dir.delete();// 删除目录本身
- }
- /**
- * 判断指定目录是否存在
- */
- public static void ExistsFile(){
- String sdPath = Environment.getExternalStorageDirectory() + "/";
- // 文件保存路径
- String mSavePath = sdPath + "oil";
- File file = new File(mSavePath);
- if (!file.exists()){// 判断当前目录是否存在,存在返回true,否则返回false
- deleteDirWihtFile(file);
- }
- }
- /**
- * 判断版本号更新
- */
- /**
- * 判断版本更新
- * @param localVersion 本地app 版本号
- * @param newVersion 最新版本号
- * @return true 需要更新 false 不用
- */
- public static boolean updateApp(String localVersion, String newVersion) {
- String[] localVersionArray = localVersion.split("\\.");
- String[] newVersionArray = newVersion.split("\\.");
- if (localVersionArray.length < newVersionArray.length) {
- int cha = newVersionArray.length - localVersionArray.length;
- for (int i = 0; i < cha; i++) {
- localVersion = localVersion + ".0";
- }
- localVersionArray = localVersion.split("\\.");
- }
- try {
- for (int i = 0; i < newVersionArray.length; i++) {
- int temp = Integer.parseInt(newVersionArray[i]);
- int compar = Integer.parseInt(localVersionArray[i]);
- if (temp > compar) {
- return true;
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- return false;
- }
- /**
- * 判断刷脸utile是否存在
- * @param faceScenicUtile
- * @param isLedLight
- */
- public static void setFaceScenicUtile(String Type,FaceScenicUtile faceScenicUtile, boolean isLedLight,Context context){
- if (faceScenicUtile!=null){
- switch (Type){
- case "open":
- faceScenicUtile.setLedLight(true);
- break;
- case "auto":
- faceScenicUtile.setLedLight(isLedLight);
- break;
- case "close":
- faceScenicUtile.setLedLight(false);
- break;
- }
- }
- }
- /**
- * 判断设备为f2
- */
- public static boolean IsF2(){
- if (Build.MODEL.indexOf("F2")!=-1){
- return true;
- }else {
- return false;
- }
- }
- /**
- * 非空判断
- */
- public static boolean IsStringNull(String string){
- string=string+"";
- if (string.equals("")||string.equals("null")){
- return true;
- }else {
- return false;
- }
- }
- public static SetFederatedPlatformsBean setFederatedPlatformsBeans(String sn, int Action, int Verifytype, String Cardid,
- String Name, String Phone) {
- SetFederatedPlatformsBean setFederatedPlatformsBean = new SetFederatedPlatformsBean();
- setFederatedPlatformsBean.setSN(sn);
- setFederatedPlatformsBean.setAction(Action);
- SetFederatedPlatformsBean.DataDTO dataDTO = new SetFederatedPlatformsBean.DataDTO();
- dataDTO.setExtend3("");
- dataDTO.setExtend6("");
- dataDTO.setExtend7("");
- dataDTO.setHsStatus("");
- dataDTO.setJkmStatus("");
- dataDTO.setJkmType("0");
- dataDTO.setVerifytype(Verifytype);
- dataDTO.setCardid(Cardid);
- dataDTO.setName(Name);
- dataDTO.setPhone(Phone);
- dataDTO.setTime(DateUtil.getTime("yyyy年MM月dd日 HH:mm:ss"));
- List<SetFederatedPlatformsBean.DataDTO> list = new ArrayList<>();
- list.add(dataDTO);
- setFederatedPlatformsBean.setData(list);
- Config.setSetFederatedPlatformsBean(setFederatedPlatformsBean);
- return setFederatedPlatformsBean;
- }
- /**
- * 根据身份证获取年龄
- * @param idCard 身份证号码
- * @return 年龄
- */
- /**
- *根据身份证号码计算年龄
- * @param idNumber 考虑到了15位身份证,但不一定存在
- */
- /**
- * 通过身份证号码获取出生日期、性别、年龄
- * @param certificateNo
- * @return 返回的出生日期格式:1990-01-01 性别格式:F-女,M-男
- */
- public static Map<String, String> getBirAgeSex(String certificateNo) {
- String birthday = "";
- String age = "";
- String sexCode = "";
- int year = Calendar.getInstance().get(Calendar.YEAR);
- char[] number = certificateNo.toCharArray();
- boolean flag = true;
- if (number.length == 15) {
- for (int x = 0; x < number.length; x++) {
- if (!flag) return new HashMap<String, String>();
- flag = Character.isDigit(number[x]);
- }
- } else if (number.length == 18) {
- for (int x = 0; x < number.length - 1; x++) {
- if (!flag) return new HashMap<String, String>();
- flag = Character.isDigit(number[x]);
- }
- }
- if (flag && certificateNo.length() == 15) {
- birthday = "19" + certificateNo.substring(6, 8);
- sexCode = Integer.parseInt(certificateNo.substring(certificateNo.length() - 3, certificateNo.length())) % 2 == 0 ? "F" : "M";
- age = (year - Integer.parseInt("19" + certificateNo.substring(6, 8))) + "";
- } else if (flag && certificateNo.length() == 18) {
- birthday = certificateNo.substring(6, 10) ;
- sexCode = Integer.parseInt(certificateNo.substring(certificateNo.length() - 4, certificateNo.length() - 1)) % 2 == 0 ? "F" : "M";
- age = (year - Integer.parseInt(certificateNo.substring(6, 10))) + "";
- }
- Map<String, String> map = new HashMap<String, String>();
- map.put("birthday", birthday);
- map.put("age", age);
- map.put("sexCode",sexCode);
- return map;
- }
- public static int getAge(String certificateNo){
- if (IsStringNull(certificateNo)){
- return -1;
- }
- Map<String ,String > map=getBirAgeSex(certificateNo);
- String age=map.get("age");
- return Integer.parseInt(age);
- }
- /**
- * 更新配置项
- */
- public static AuthenticationBean UpdateConfiguration(AuthenticationBean o,Activity activity){
- Config.App_ID = o.getData().get(0).getGroupId();
- Config.machineAppId = o.getData().get(0).getMachineAppId();
- Config.serviceAddress = o.getData().get(0).getServiceAddress();
- Config.serviceAppId = o.getData().get(0).getServiceAppId();
- Config.trade = o.getData().get(0).getTrade();
- Config.userLibName = o.getData().get(0).getUserLibName();
- Config.sceneName = o.getData().get(0).getSceneName();
- Config.mode = o.getData().get(0).getMode();
- Config.logicGroupID = o.getData().get(0).getLogicGroupID();
- Config.linkageAds = "https://"+o.getData().get(0).getLinkageAds()+"/";
- Config.trackingUrl=o.getData().get(0).getHeartTrackingUrl() ;
- Config.EventRecordsUrl=o.getData().get(0).getTransitPushUrl()+"/";
- Config.FederatedPlatformsUrl1=o.getData().get(0).getLinkageAds();
- Config.FederatedPlatformsUrl = "http://"+Config.FederatedPlatformsUrl1+"/";
- Config.passWay=o.getData().get(0).getPassWay()+"";
- if (Config.passWay.equals("")||Config.passWay.equals("null")){
- Config.passWay="normal";
- }
- if (o.getData().get(0).getMode().equals("elasticity")) {//mode = elasticity 时用logicGroupID
- Config.GroupID = o.getData().get(0).getLogicGroupID();
- } else {
- Config.GroupID = o.getData().get(0).getGroupId();
- }
- Config.setAuthenticationBean(o);
- Config.Urls = o.getData().get(0).getServiceAddress();
- if (Config.getAuthenticationBean().getData().get(0).isUsePersonCard()) {//人证一体
- Config.checkWay = "personCard";
- } else {//刷脸
- Config.checkWay = "scanFace";
- }
- if (o.getData().get(0).isUseIdcard()){
- SharedPreferencesUtils.setParam(activity,"isIDCard",true);
- IDCardUtile.getInstance(activity).check_idcard();
- }else {
- SharedPreferencesUtils.setParam(activity,"isIDCard",false);
- }
- PosUtil.setRs485Status(1);
- SerialManage.getInstance().open(activity);
- return o;
- }
- /**
- * 数据处理(剔除\r\n的情况)
- */
- public static byte[] DeleteElement(byte[] arg0){
- List<Byte> list=new ArrayList<>();
- for (int i = 0; i < arg0.length; i++) {
- if (arg0[i]!=13&&arg0[i]!=10){
- list.add(arg0[i]);
- }
- }
- byte[] bytes=new byte[list.size()];
- for (int i = 0; i < list.size(); i++) {
- bytes[i]=list.get(i);
- }
- return bytes;
- }
- /**
- * dp转px
- */
- public static int dp2px(int dpValues, Context context) {
- return (int) TypedValue.applyDimension(
- TypedValue.COMPLEX_UNIT_DIP, dpValues,
- context.getResources().getDisplayMetrics());
- }
- /**
- * 判断网络状态是否可用
- */
- public static boolean ping(){
- Runtime runtime=Runtime.getRuntime();
- try {
- Process process=runtime.exec("ping -c 3 www.baidu.com");
- int ret=process.waitFor();
- return ret==0;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return false;
- }
- /**
- * 在线配置更新
- */
- public static Map<String ,Object> InternetUpdateConfiguration(){
- AuthenticationBean.DataDTO dataDTO=getAuthenticationBean().getData().get(0);
- Map<String ,Object> map=new HashMap<>();
- map.put("clickButtonText",dataDTO.getClickButtonText()+"");
- map.put("faceMode",dataDTO.getFaceMode()+"");
- map.put("failPageTime",dataDTO.getFailPageTime());
- map.put("failText",dataDTO.getFailText()+"");
- map.put("failVoice",dataDTO.getFailVoice()+"");
- map.put("forbidPullDown",dataDTO.isForbidPullDown());
- map.put("hideNavigationBar",dataDTO.isHideNavigationBar());
- map.put("homePageUrl",dataDTO.getHomePageUrl()+"");
- map.put("isCaptureFace",dataDTO.isIsCaptureFace());
- map.put("isNeed1V1",dataDTO.isIsNeed1V1());
- map.put("lightMode",dataDTO.getLightMode()+"");
- map.put("linkageAds",dataDTO.getLinkageAds()+"");
- map.put("signalNo",dataDTO.getSignalNo()+"");
- map.put("sucText",dataDTO.getSucText()+"");
- map.put("sucVoice",dataDTO.getSucVoice()+"");
- map.put("successPageTime",dataDTO.getSuccessPageTime());
- map.put("sn", Config.SN);
- map.put("token",Config.token);
- map.put("transitionPageUrl",dataDTO.getTransitionPageUrl());
- map.put("useAlipayFace",dataDTO.isUseAlipayFace());
- map.put("useIdcard",dataDTO.isUseIdcard());
- map.put("useLinkage",dataDTO.isUseLinkage());
- map.put("usePersonCard",dataDTO.isUsePersonCard());
- map.put("useQrcode",dataDTO.isUseQrcode());
- map.put("useSerialPort",dataDTO.getUseSerialPort()+"");
- map.put("volume",dataDTO.getVolume());
- ZoloConfigBean zoloConfigBean=new ZoloConfigBean();
- zoloConfigBean.setMirror(dataDTO.getZoloConfig().isIsMirror());
- zoloConfigBean.setDisplayMirror(dataDTO.getZoloConfig().isIsDisplayMirror());
- zoloConfigBean.setAlgorithmAngle(dataDTO.getZoloConfig().getAlgorithmAngle());
- zoloConfigBean.setDisplayAngle(dataDTO.getZoloConfig().getDisplayAngle());
- zoloConfigBean.setSupAlgorithmAngle(dataDTO.getZoloConfig().getSupAlgorithmAngle());
- map.put("zoloConfig",zoloConfigBean);
- map.put("isOpenAgeLimit",dataDTO.isOpenAgeLimit());
- map.put("limitSectionStart",dataDTO.getLimitSectionStart());
- map.put("limitSectionEnd",dataDTO.getLimitSectionEnd());
- map.put("ageForbidText",dataDTO.getAgeForbidText());
- map.put("mpassword",dataDTO.getMpassword());
- map.put("autoLaunch",dataDTO.isAutoLaunch());
- map.put("isPushGM",dataDTO.isPushGm());
- map.put("GMAddress",dataDTO.getGMAddress());
- map.put("GMFrequency",dataDTO.getGMFrequency());
- map.put("entryFaceMode",dataDTO.getEntryFaceMode()+"");
- map.put("logPushUrl",dataDTO.getLogPushUrl());
- map.put("cameraType",dataDTO.getCameraType()+"");
- map.put("cameraBrand",dataDTO.getCameraBrand());
- return map;
- }
- /**
- * 日志上报
- * @param pLogUploads
- * @param logType ⽇志类型Logcat/Error/Crash
- * @param logTag ⽇志标签
- * @param logContent ⽇志内容
- */
- public static void setLogUploads(ContractInterface.PLogUploads pLogUploads, String logType,
- String logTag, String logContent){
- Map<String ,Object> map=new HashMap<>();
- map.put("logContent",logContent);
- map.put("logTag",logTag);
- map.put("logType",logType);
- map.put("sn",getDeviceSN());
- map.put("token","728a6f4f91d23c601d85906129a1647ca110f20f");
- String LogPushUrl="";
- if (getAuthenticationBean().getData()!=null||IsStringNull(getAuthenticationBean().getData().get(0).getLogPushUrl())){
- LogPushUrl="https://hhomc.hz-hanghui.com:8096/middle-management/api/v1/app/log/push";
- }else {
- LogPushUrl=getAuthenticationBean().getData().get(0).getLogPushUrl();
- }
- pLogUploads.PLogUploads(map,LogPushUrl);
- }
- /**
- * 删除过期日志
- */
- /**
- * 根据日志类型删除day天前的日志
- */
- public static void deleteFileLog(String logType, int day) {
- String logcatDir = AppLogUtils.getLogcatDir(logType);
- if (TextUtils.isEmpty(logcatDir)) {
- ToastUtils.showShort("未查询到日志");
- return;
- }
- int base = day * 86400000;//7天毫秒数
- Calendar calendar = Calendar.getInstance();
- File file = new File(logcatDir);
- File[] files = file.listFiles();
- if (files != null) {
- for (File logFile : files) {
- //判断创建时间是否大于7天
- long lastModified = logFile.lastModified();
- long time = calendar.getTime().getTime();
- long dif = time - lastModified;
- if (dif >= base) {
- FileUtils.delete(logFile);
- }
- }
- } else {
- Log.e("Config 830","未找到本地日志");
- }
- }
- }
|