From 8ff90d87687b6d38158809aae776b6c709d7b60a Mon Sep 17 00:00:00 2001
From: weimingfei <fei_gaming@sina.com>
Date: 星期四, 04 十二月 2025 12:01:41 +0800
Subject: [PATCH] 指纹钥匙柜
---
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/KeyCabinetBean.java | 20
keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwen.png | 0
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationVM.java | 21
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/guide/TestActivity.java | 1
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/event/KeyResultEvent.java | 14
keyCabinet-android/facelibrary/build.gradle | 4
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationVM.java | 23
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/SyncGridDataParam.java | 61 +
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetActivity.java | 18
keyCabinet-android/app/src/main/res/layout/face_activity.xml | 301 ++++++++
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/OpenGridDriverParam.java | 31
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java | 92 +-
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java | 91 ++
keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenyanzheng.png | 0
keyCabinet-android/app/build.gradle | 5
keyCabinet-android/datalibrary/build.gradle | 4
keyCabinet-android/settinglibrary/build.gradle | 4
keyCabinet-android/versions.gradle | 9
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java | 332 ++++++---
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationActivity.java | 56 +
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetVM.java | 2
keyCabinet-android/lib_opensource/build.gradle | 4
keyCabinet-android/app/libs/enjoySDK.aar | 0
keyCabinet-android/app/src/main/res/layout/change_url_activity.xml | 291 +++++---
keyCabinet-android/app/src/main/res/layout/main_activity.xml | 5
keyCabinet-android/app/src/main/res/layout/key_cabinet_activity.xml | 13
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/update/FileUtil.java | 59 +
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java | 79 +
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/MCUtils.java | 23
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ChangeUrlActivity.java | 10
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetActivity.java | 28
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/BatchOpenGridAdminParam.java | 10
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/UserManagerActivity.java | 9
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/Apis.java | 9
keyCabinet-android/app/src/main/res/values/strings.xml | 7
keyCabinet-android/app/src/main/AndroidManifest.xml | 59
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetVM.java | 8
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageLoginActivity.java | 7
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/BraceletLogUtils.java | 4
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/i485/SportUtils.java | 26
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationActivity.java | 232 ++++++
keyCabinet-android/app/src/test/java/com/doumee/ticketmachine/ExampleUnitTest.java | 11
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/DevConfigBean.java | 20
keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenluru.png | 0
44 files changed, 1,590 insertions(+), 413 deletions(-)
diff --git a/keyCabinet-android/app/build.gradle b/keyCabinet-android/app/build.gradle
index ff276e1..ddeec78 100644
--- a/keyCabinet-android/app/build.gradle
+++ b/keyCabinet-android/app/build.gradle
@@ -10,8 +10,8 @@
applicationId "com.doumee.keyCabinet"
minSdkVersion build_versions.min_sdk
targetSdkVersion build_versions.target_sdk
- versionCode 2
- versionName "1.0.1"
+ versionCode 5
+ versionName "1.0.5"
//鏀寔vectorDrawables鐭㈤噺鍥�
vectorDrawables.useSupportLibrary = true
@@ -108,7 +108,6 @@
implementation project(path: ':settinglibrary')
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation files('libs\\simple-xml-2.7.1.jar')
- implementation files('libs\\API-20250310.jar')
testImplementation deps.test.junit
androidTestImplementation deps.test.ext_junit
androidTestImplementation deps.test.test_espresso
diff --git a/keyCabinet-android/app/libs/enjoySDK.aar b/keyCabinet-android/app/libs/enjoySDK.aar
new file mode 100644
index 0000000..cf7cc8e
--- /dev/null
+++ b/keyCabinet-android/app/libs/enjoySDK.aar
Binary files differ
diff --git a/keyCabinet-android/app/src/main/AndroidManifest.xml b/keyCabinet-android/app/src/main/AndroidManifest.xml
index 9b7b0e1..4658735 100644
--- a/keyCabinet-android/app/src/main/AndroidManifest.xml
+++ b/keyCabinet-android/app/src/main/AndroidManifest.xml
@@ -10,11 +10,16 @@
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:networkSecurityConfig="${network_security_config}"
- android:requestLegacyExternalStorage="true"
android:supportsRtl="true"
android:theme="@style/CustomAppTheme"
android:usesCleartextTraffic="true"
tools:replace="android:allowBackup">
+ <activity
+ android:name=".ui.face.ChoseActivationActivity"
+ android:exported="false" />
+ <activity
+ android:name=".ui.face.OfflineActivationActivity"
+ android:exported="false" />
<activity
android:name=".ui.keyCabinet.ChangeUrlActivity"
android:exported="false" />
@@ -27,31 +32,30 @@
<activity
android:name=".ui.keyCabinet.KeyCabinetActivity"
android:exported="false" />
- <activity android:name=".ui.guide.TestActivity">
-
- </activity>
+ <activity android:name=".ui.guide.TestActivity" />
<activity
- android:name="com.doumee.keyCabinet.ui.face.ErrActivity"
+ android:name=".ui.face.ErrActivity"
android:exported="false" />
<activity
- android:name="com.doumee.keyCabinet.ui.face.UserManagerActivity"
+ android:name=".ui.face.UserManagerActivity"
android:exported="false" />
<activity
- android:name="com.doumee.keyCabinet.ui.face.AddFaceActivity"
+ android:name=".ui.face.AddFaceActivity"
android:exported="false" />
<activity
- android:name="com.doumee.keyCabinet.ui.face.ActivationActivity"
+ android:name=".ui.face.ActivationActivity"
android:exported="false" />
<activity
- android:name="com.doumee.keyCabinet.ui.face.FaceActivity"
+ android:name=".ui.face.FaceActivity"
android:exported="false"
- android:windowSoftInputMode="stateAlwaysHidden|adjustPan"/>
+ android:windowSoftInputMode="stateAlwaysHidden|adjustPan" />
<activity
- android:name="com.doumee.keyCabinet.ui.main.MainActivity"
+ android:name=".ui.main.MainActivity"
android:exported="true"
- android:launchMode="singleTask" >
+ android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
+
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
@@ -75,8 +79,8 @@
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths" />
</provider>
-
- <!--<receiver
+ <!--
+<receiver
android:name="com.doumee.keyCabinet.ui.service.BootCompleteReceiver"
android:enabled="true"
android:exported="true">
@@ -85,22 +89,25 @@
<intent-filter android:priority="1000">
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
- </receiver>-->
-
- <!--<service android:name="com.doumee.keyCabinet.ui.service.HeartbeatService" />
- <service android:name="com.doumee.keyCabinet.ui.service.FaceUpdateService" />-->
-
+ </receiver>
+ -->
+ <!--
+<service android:name="com.doumee.keyCabinet.ui.service.HeartbeatService" />
+ <service android:name="com.doumee.keyCabinet.ui.service.FaceUpdateService" />
+ -->
+ <meta-data
+ android:name="android:requestLegacyExternalStorage"
+ android:value="true" />
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
</application>
- <uses-permission android:name="android.permission.ACCESS_SURERUSER" />
- <uses-permission android:name="android.permission.USB_PERMISSION"/>
- <uses-feature android:name="android.hardware.usb.host"/>
- <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
+ <uses-feature android:name="android.hardware.usb.host" />
<uses-feature android:name="android.hardware.nfc" />
+ <uses-permission android:name="android.permission.ACCESS_SURERUSER" />
+ <uses-permission android:name="android.permission.USB_PERMISSION" />
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
- <uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
@@ -109,7 +116,7 @@
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.CAMERA" />
- <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
+ <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission
android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS"
@@ -120,7 +127,6 @@
<uses-permission
android:name="android.permission.INTERACT_ACROSS_USERS"
tools:ignore="ProtectedPermissions" />
-
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
<uses-permission
android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
@@ -128,6 +134,7 @@
<uses-permission
android:name="android.permission.WRITE_SETTINGS"
tools:ignore="ProtectedPermissions" />
+ <uses-permission android:name="android.permission.ACCESS_USB_PERMISSION"/>
<uses-permission android:name="android.permission.NFC" />
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/DevConfigBean.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/DevConfigBean.java
index db00eab..77a4b5a 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/DevConfigBean.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/DevConfigBean.java
@@ -14,12 +14,16 @@
private String devId;
//鏄惁鍙岄噸楠岃瘉 0鍚� 1鏄�
private int doubleAuth;
+ //閰掔簿妫�娴嬪紑鍚細0=寮�鍚紱1=鍏抽棴
+ private int alcoholStatus;
//涓婚敭
private Integer id;
//澶囨敞
private String info;
//璁惧鍚嶇О
private String name;
+ //浜鸿劯璇嗗埆绂荤嚎婵�娲绘枃浠朵笅杞藉湴鍧�
+ private String activateFileUrl;
private CabinetConfigDataBean cabinetConfigDataVO;
private List<ManageKeyCabinetBean> cabinetGridInfoVOList;
@@ -103,4 +107,20 @@
public void setCabinetConfigDataVO(CabinetConfigDataBean cabinetConfigDataVO) {
this.cabinetConfigDataVO = cabinetConfigDataVO;
}
+
+ public String getActivateFileUrl() {
+ return activateFileUrl;
+ }
+
+ public void setActivateFileUrl(String activateFileUrl) {
+ this.activateFileUrl = activateFileUrl;
+ }
+
+ public int getAlcoholStatus() {
+ return alcoholStatus;
+ }
+
+ public void setAlcoholStatus(int alcoholStatus) {
+ this.alcoholStatus = alcoholStatus;
+ }
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/KeyCabinetBean.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/KeyCabinetBean.java
index d1b2017..b3a2b8d 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/KeyCabinetBean.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/bean/KeyCabinetBean.java
@@ -41,6 +41,10 @@
private Integer status;
//杩愯鐘舵�� 0姝e父 1鏁呴殰
private Integer workingStatus;
+ //娲捐溅鐢宠鍗曚富閿�
+ private Integer carUseBookId;
+ //鍙栭挜鍖欐柟寮忥細0=闅忚溅锛�1=娲捐溅鍗曪紱2=淇濇磥鎵撴壂
+ private Integer getKeyWay;
private ObservableField<Boolean> isSelected = new ObservableField<>(false);
private ObservableField<Integer> text1Color = new ObservableField<>(0xff111111);
@@ -185,4 +189,20 @@
public ObservableField<Integer> getText2Color() {
return text2Color;
}
+
+ public Integer getCarUseBookId() {
+ return carUseBookId;
+ }
+
+ public void setCarUseBookId(Integer carUseBookId) {
+ this.carUseBookId = carUseBookId;
+ }
+
+ public Integer getGetKeyWay() {
+ return getKeyWay;
+ }
+
+ public void setGetKeyWay(Integer getKeyWay) {
+ this.getKeyWay = getKeyWay;
+ }
}
\ No newline at end of file
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/event/KeyResultEvent.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/event/KeyResultEvent.java
index a344aa7..6414a1b 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/event/KeyResultEvent.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/event/KeyResultEvent.java
@@ -4,5 +4,19 @@
* 閽ュ寵鐩戝惉杩斿洖
*/
public class KeyResultEvent {
+ //1锛�1鍙锋澘锛�2:2鍙锋澘锛�3锛氫袱鍧楁澘
+ private String type;
+
+ public KeyResultEvent(String type) {
+ this.type = type;
+ }
+
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/Apis.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/Apis.java
index cecbf1b..a5d1e47 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/Apis.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/Apis.java
@@ -23,7 +23,7 @@
public interface Apis {
//娴嬭瘯鏈�
//String HTTP = "http://192.168.1.45:10010/";
- String HTTP = "http://192.168.0.212/system_gateway/";
+ String HTTP = "http://10.49.152.112/system_gateway/";
String HEAT_HTTP = "do?c=220301";
/**
* 鏌ヨ鐗堟湰淇℃伅
@@ -44,6 +44,12 @@
*/
@GET("visitsAdmin/cloudService/web/cabinet/updateRunStatusById")
Observable<BaseResponse> heart(@Query("id")Integer id);
+
+ /**
+ * 鍚屾鏌滄牸瀹為檯閽ュ寵鏁版嵁
+ */
+ @POST("visitsAdmin/cloudService/web/cabinet/syncGridData")
+ Observable<BaseResponse> syncGridData(@Body RequestBody requestBody);
/**
* 涓婁紶鎶ラ敊淇℃伅
@@ -128,6 +134,5 @@
*/
@POST("loginCabinet")
Observable<BaseResponse<String>> loginCabinet(@Body RequestBody requestBody);
-
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/BatchOpenGridAdminParam.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/BatchOpenGridAdminParam.java
index 9ae636c..07d582b 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/BatchOpenGridAdminParam.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/BatchOpenGridAdminParam.java
@@ -7,6 +7,8 @@
private Integer cabinetId;
//鏌滄牸涓婚敭鍒楄〃
private List<Integer> gridIdList;
+ //寮�鍚柟寮忥細0=绯荤粺寮�鍚紱1=鎵嬪姩寮�鍚�
+ private int openType;
public Integer getCabinetId() {
return cabinetId;
@@ -23,4 +25,12 @@
public void setGridIdList(List<Integer> gridIdList) {
this.gridIdList = gridIdList;
}
+
+ public int getOpenType() {
+ return openType;
+ }
+
+ public void setOpenType(int openType) {
+ this.openType = openType;
+ }
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/OpenGridDriverParam.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/OpenGridDriverParam.java
index 45696b6..d4261fd 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/OpenGridDriverParam.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/OpenGridDriverParam.java
@@ -12,6 +12,13 @@
private int cabinetId;
//鏌滄牸涓婚敭
private int gridId;
+ //寮�鍚柟寮忥細0=绯荤粺寮�鍚紱1=鎵嬪姩寮�鍚�
+ private int openType;
+
+ //娲捐溅鐢宠鍗曚富閿�
+ private Integer carUseBookId;
+ //鍙栭挜鍖欐柟寮忥細0=闅忚溅锛�1=娲捐溅鍗曪紱2=淇濇磥鎵撴壂
+ private Integer openWay;
public int getAuthType() {
return authType;
@@ -44,4 +51,28 @@
public void setGridId(int gridId) {
this.gridId = gridId;
}
+
+ public int getOpenType() {
+ return openType;
+ }
+
+ public void setOpenType(int openType) {
+ this.openType = openType;
+ }
+
+ public Integer getCarUseBookId() {
+ return carUseBookId;
+ }
+
+ public void setCarUseBookId(Integer carUseBookId) {
+ this.carUseBookId = carUseBookId;
+ }
+
+ public Integer getOpenWay() {
+ return openWay;
+ }
+
+ public void setOpenWay(Integer openWay) {
+ this.openWay = openWay;
+ }
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/SyncGridDataParam.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/SyncGridDataParam.java
new file mode 100644
index 0000000..53cfa2f
--- /dev/null
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/http/param/SyncGridDataParam.java
@@ -0,0 +1,61 @@
+package com.doumee.keyCabinet.http.param;
+
+import java.io.Serializable;
+import java.util.List;
+
+//鍚屾鏌滄牸瀹為檯閽ュ寵鏁版嵁
+public class SyncGridDataParam implements Serializable {
+ //閽ュ寵鏌滅紪鍙�
+ private String code;
+
+ private List<GridDTO> gridDTOList;
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public List<GridDTO> getGridDTOList() {
+ return gridDTOList;
+ }
+
+ public void setGridDTOList(List<GridDTO> gridDTOList) {
+ this.gridDTOList = gridDTOList;
+ }
+
+ public static class GridDTO{
+ //瀹為檯閽ュ寵缂栫爜
+ private String actualLable;
+ //鏉垮彿
+ private String boardCode;
+ //閫氶亾鍙�
+ private String channelCode;
+
+ public String getActualLable() {
+ return actualLable;
+ }
+
+ public void setActualLable(String actualLable) {
+ this.actualLable = actualLable;
+ }
+
+ public String getBoardCode() {
+ return boardCode;
+ }
+
+ public void setBoardCode(String boardCode) {
+ this.boardCode = boardCode;
+ }
+
+ public String getChannelCode() {
+ return channelCode;
+ }
+
+ public void setChannelCode(String channelCode) {
+ this.channelCode = channelCode;
+ }
+ }
+}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationActivity.java
new file mode 100644
index 0000000..b98595a
--- /dev/null
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationActivity.java
@@ -0,0 +1,56 @@
+package com.doumee.keyCabinet.ui.face;
+
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AppCompatActivity;
+
+import android.os.Bundle;
+
+import com.doumee.keyCabinet.R;
+import com.doumee.keyCabinet.base.MyBaseActivity;
+import com.doumee.keyCabinet.databinding.ChoseActivationActivityBinding;
+import com.doumee.keyCabinet.utils.MCUtils;
+import com.doumee.lib_coremodel.bean.event.ActionEventData;
+import com.mc.enjoysdk.McSystemUi;
+
+import dagger.hilt.android.AndroidEntryPoint;
+
+@AndroidEntryPoint
+public class ChoseActivationActivity extends MyBaseActivity<ChoseActivationVM, ChoseActivationActivityBinding> {
+
+
+ @Override
+ public int getLayoutId() {
+ return R.layout.chose_activation_activity;
+ }
+
+ @Override
+ public void initView(@Nullable Bundle savedInstanceState) {
+ isToGuild = false;
+ normalConfig();
+ getDB().setModel(getVM());
+
+ McSystemUi mcSystemUi = McSystemUi.getInstance(this);
+ MCUtils.show(mcSystemUi);
+ }
+
+ @Override
+ public void initData(@Nullable Bundle savedInstanceState) {
+
+ }
+
+ @Override
+ protected void doRegister(int type, ActionEventData data) {
+ switch (type){
+ case 1:
+ startActivity(ActivationActivity.class);
+ finish();
+ break;
+ case 2:
+ startActivity(OfflineActivationActivity.class);
+ finish();
+ break;
+ default:
+ break;
+ }
+ }
+}
\ No newline at end of file
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationVM.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationVM.java
new file mode 100644
index 0000000..9f436ec
--- /dev/null
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/ChoseActivationVM.java
@@ -0,0 +1,21 @@
+package com.doumee.keyCabinet.ui.face;
+
+import android.app.Application;
+
+import androidx.annotation.NonNull;
+import androidx.hilt.lifecycle.ViewModelInject;
+
+import com.doumee.lib_coremodel.base.BaseModel;
+import com.doumee.lib_coremodel.base.DataViewModel;
+
+public class ChoseActivationVM extends DataViewModel {
+ @ViewModelInject
+ public ChoseActivationVM(@NonNull Application application, BaseModel model) {
+ super(application, model);
+ }
+ @Override
+ protected void clickByTypeCommand(int type) {
+ doAction(type);
+ }
+
+}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java
index c4c3570..94257da 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/FaceActivity.java
@@ -121,6 +121,12 @@
private SpannableString getErrPhoneText(){
String phone = MApplication.getConfigBean().getLinkPhone();
+ if(phone==null){
+ String text = "濡傛湁闂璇疯仈绯荤鐞嗗憳";
+ SpannableString styledText = new SpannableString(text);
+ styledText.setSpan(new TextAppearanceSpan(this, R.style.style_tip3), 0, text.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ return styledText;
+ }
String text = "濡傛湁闂璇疯仈绯荤鐞嗗憳"+phone;
SpannableString styledText = new SpannableString(text);
styledText.setSpan(new TextAppearanceSpan(this, R.style.style_tip3), 0, text.length()-phone.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
@@ -137,14 +143,24 @@
//鍙�-绠$悊鍛樹汉鑴搁獙璇�
getDB().tvTitle.setText("绠$悊鍛樿韩浠介獙璇�");
getDB().clCard.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.GONE);
getDB().clFace.setVisibility(View.VISIBLE);
setFaceModel(0);
+ break;
+ case 10:
+ //鍙�-绠$悊鍛樻寚绾归獙璇�
+ getDB().tvTitle.setText("绠$悊鍛樿韩浠介獙璇�");
+ getDB().clCard.setVisibility(View.GONE);
+ getDB().clFace.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.VISIBLE);
+ setFaceModel(2);
break;
case 1:
//鍙�-绠$悊鍛樺埛鍗¢獙璇�
getDB().etEwm.setText("");
getDB().tvTitle.setText("绠$悊鍛樿韩浠介獙璇�");
getDB().clFace.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.GONE);
getDB().clCard.setVisibility(View.VISIBLE);
setFaceModel(2);
break;
@@ -152,6 +168,7 @@
//鍙�-鍙告満楠岃瘉鏂瑰紡閫夋嫨椤�
getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
getDB().clFace.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.GONE);
getDB().clCard.setVisibility(View.GONE);
getDB().clTip1.setVisibility(View.GONE);
getDB().clSjXuan.setVisibility(View.VISIBLE);
@@ -162,9 +179,19 @@
//鍙�-鍙告満浜鸿劯楠岃瘉
getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
getDB().clCard.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.GONE);
getDB().clSjXuan.setVisibility(View.GONE);
getDB().clFace.setVisibility(View.VISIBLE);
setFaceModel(1);
+ break;
+ case 11:
+ //鍙�-鍙告満鎸囩汗楠岃瘉
+ getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
+ getDB().clCard.setVisibility(View.GONE);
+ getDB().clFace.setVisibility(View.GONE);
+ getDB().clSjXuan.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.VISIBLE);
+ setFaceModel(2);
break;
case 3:
//鍙�-鍙告満鍒峰崱楠岃瘉
@@ -172,6 +199,7 @@
getDB().etEwm.requestFocus();
getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
getDB().clFace.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.GONE);
getDB().clSjXuan.setVisibility(View.GONE);
getDB().clCard.setVisibility(View.VISIBLE);
setFaceModel(2);
@@ -181,6 +209,7 @@
getDB().tvTitle.setText("閰掔簿妫�娴�");
getDB().clFace.setVisibility(View.GONE);
getDB().clCard.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.GONE);
getDB().clSjXuan.setVisibility(View.GONE);
getDB().clTip1.setVisibility(View.GONE);
getDB().clJiu.setVisibility(View.VISIBLE);
@@ -206,8 +235,17 @@
//杩�-鍙告満浜鸿劯楠岃瘉
getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
getDB().clCard.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.GONE);
getDB().clFace.setVisibility(View.VISIBLE);
setFaceModel(1);
+ break;
+ case 12:
+ //杩�-鍙告満浜鸿劯楠岃瘉
+ getDB().tvTitle.setText("鍙告満韬唤楠岃瘉");
+ getDB().clCard.setVisibility(View.GONE);
+ getDB().clFace.setVisibility(View.GONE);
+ getDB().clZw.setVisibility(View.VISIBLE);
+ setFaceModel(2);
break;
case 8:
//杩�-鍙告満鍒峰崱楠岃瘉
@@ -249,15 +287,37 @@
protected void doRegister(int type, ActionEventData data) {
switch (type){
case 1:
- //鍒囨崲鍒板埛鍗�
if(flag==0){
- if(status==0){
+ //鍒囨崲鍒扮鐞嗗憳鍒峰崱
+ if(status==0||status==10){
statusFsm(1);
- }else if(status==2){
+ }else if(status==2||status==11){
statusFsm(3);
}
}else {
+ //杩�-鍙告満鍒峰崱楠岃瘉
statusFsm(8);
+ }
+ break;
+ case 9:
+ //绠$悊鍛樻寚绾归獙璇�
+ statusFsm(10);
+ break;
+ case 10:
+ //鍙告満鎸囩汗楠岃瘉
+ statusFsm(11);
+ break;
+ case 11:
+ //鍒峰崱-->鎸囩汗楠岃瘉
+ if(flag==0){
+ if(status==1){
+ statusFsm(10);
+ }else {
+ statusFsm(11);
+ }
+ }else {
+ //杩�-鍙告満鎸囩汗
+ statusFsm(12);
}
break;
case 2:
@@ -271,9 +331,9 @@
case 4:
//鍒囨崲鍒颁汉鑴�
if(flag==0){
- if(status==1){
+ if(status==1||status==10){
statusFsm(0);
- }else if(status==3){
+ }else if(status==3||status==11){
statusFsm(2);
}
}else {
@@ -291,7 +351,14 @@
//鍙告満ic鍗℃垚鍔�
if(flag==0) {
//鍙�
- statusFsm(4);
+ if(MApplication.getConfigBean()!=null&&MApplication.getConfigBean().getAlcoholStatus()==1) {
+ //闈為厭绮炬娴�
+ startActivity(KeyCabinetActivity.class);
+ finish();
+ }else {
+ //閰掔簿妫�娴�
+ statusFsm(4);
+ }
}else {
//杩�
startActivity(KeyCabinetActivity.class);
@@ -306,6 +373,7 @@
getDB().message.requestLayout();
EventBus.getDefault().post(new HttpEvent("ic鍗�+++++++"+data.getData().get("type").toString()));
break;
+
default:
break;
}
@@ -503,6 +571,7 @@
if(new BigDecimal(MApplication.getConfigBean().getCabinetConfigDataVO().getConcentration())
.compareTo(resultEvent.getConcentration())>=0){
//閰掔簿閫氳繃
+ getVM().alcoholTestAlarm(resultEvent.getConcentration().toString());
getDB().clJiujinOk.setVisibility(View.VISIBLE);
handler.sendEmptyMessageDelayed(4,1000);
}else {
@@ -645,7 +714,15 @@
MApplication.getLoginBean().setMemberId(Integer.parseInt(user.getUserId()));
MApplication.getLoginBean().setAuthType(0);
//handler.sendEmptyMessageDelayed(8,0);
- EventBus.getDefault().post(new FaceStatusChangeEvent(4));
+ //Toast.makeText(mContext, "鏄惁閰掔簿妫�娴嬶細"+MApplication.getConfigBean().getAlcoholStatus(), Toast.LENGTH_SHORT).show();
+ if(MApplication.getConfigBean()!=null&&MApplication.getConfigBean().getAlcoholStatus()==1) {
+ //闈為厭绮炬娴�
+ startActivity(KeyCabinetActivity.class);
+ finish();
+ }else {
+ //閰掔簿妫�娴�
+ EventBus.getDefault().post(new FaceStatusChangeEvent(4));
+ }
}else if(status==7){
//杩�-鍙告満
MApplication.getLoginBean().setMemberId(Integer.parseInt(user.getUserId()));
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationActivity.java
new file mode 100644
index 0000000..0e31a52
--- /dev/null
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationActivity.java
@@ -0,0 +1,232 @@
+package com.doumee.keyCabinet.ui.face;
+
+import androidx.annotation.Nullable;
+
+import android.app.DownloadManager;
+import android.content.BroadcastReceiver;
+import android.content.ClipboardManager;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.net.Uri;
+import android.os.Bundle;
+import android.os.Environment;
+import android.text.TextUtils;
+import android.view.View;
+import android.widget.Toast;
+
+import com.baidu.idl.main.facesdk.FaceAuth;
+import com.baidu.idl.main.facesdk.callback.Callback;
+import com.doumee.keyCabinet.MApplication;
+import com.doumee.keyCabinet.R;
+import com.doumee.keyCabinet.base.MyBaseActivity;
+import com.doumee.keyCabinet.databinding.OfflineActivationActivityBinding;
+import com.doumee.keyCabinet.event.TimeClockEvent;
+import com.doumee.keyCabinet.utils.LMobileInfo;
+import com.doumee.keyCabinet.utils.update.FileUtil;
+import com.doumee.lib_coremodel.view.ToastView;
+import com.example.datalibrary.utils.FileUtils;
+import com.example.datalibrary.utils.ToastUtils;
+
+import org.greenrobot.eventbus.Subscribe;
+
+import dagger.hilt.android.AndroidEntryPoint;
+
+@AndroidEntryPoint
+public class OfflineActivationActivity extends MyBaseActivity<OfflineActivationVM, OfflineActivationActivityBinding> implements View.OnClickListener {
+ private FaceAuth faceAuth;
+ private boolean isDownLoad;
+ String filePath = Environment.getExternalStorageDirectory().getPath()+"/License.zip";
+
+ @Override
+ public int getLayoutId() {
+ return R.layout.offline_activation_activity;
+ }
+
+ @Override
+ public void initView(@Nullable Bundle savedInstanceState) {
+ isToGuild = false;
+ normalConfig();
+ getDB().setModel(getVM());
+ }
+
+ @Override
+ public void initData(@Nullable Bundle savedInstanceState) {
+ getDB().tvId.setText("NO锛�"+ LMobileInfo.getDeviceUniqueId());
+
+ // 澶嶅埗鎸夐挳
+ faceAuth = new FaceAuth();
+ String a = faceAuth.getDeviceId(this);
+ getDB().accreditDeviceTv.setText(a);
+
+ // 闀挎寜鐐瑰嚮澶嶅埗
+ getDB().accreditDeviceTv.setOnLongClickListener(new View.OnLongClickListener() {
+ @Override
+ public boolean onLongClick(View view) {
+ ClipboardManager clipboardManager = (ClipboardManager)
+ getSystemService(Context.CLIPBOARD_SERVICE);
+ clipboardManager.setText(getDB().accreditDeviceTv.getText());
+
+ ToastUtils.toast(OfflineActivationActivity.this, "deviceID 澶嶅埗鎴愬姛");
+ return false;
+ }
+ });
+
+ getDB().accreditOffBtn.setOnClickListener(this);
+ getDB().btnDown.setOnClickListener(this);
+ setupDownloadManager();
+ setupDownloadReceiver();
+ }
+
+ @Subscribe
+ public void TimeClockEvent(TimeClockEvent e){
+ if(!isFinishing()){
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ updateDownStatus();
+ }
+ });
+ }
+ }
+
+ private void updateDownStatus(){
+ if(isDownLoad){
+ return;
+ }
+ //鍏堟牎楠屾槸鍚︽湁涓嬭浇璺緞
+ if(!TextUtils.isEmpty(MApplication.getConfigBean().getActivateFileUrl())){
+ if(FileUtil.FileIsExist(filePath)) {
+ //鏂囦欢瀛樺湪
+ getDB().btnDown.setText("閲嶆柊涓嬭浇婵�娲绘枃浠�");
+ getDB().btnDown.setClickable(true);
+ getDB().btnDown.setBackgroundResource(R.mipmap.btn_main_normal);
+
+ getDB().accreditOffBtn.setClickable(true);
+ getDB().accreditOffBtn.setBackgroundResource(R.mipmap.btn_main_normal);
+ }else {
+ getDB().btnDown.setText("涓嬭浇婵�娲绘枃浠�");
+ getDB().btnDown.setClickable(true);
+ getDB().btnDown.setBackgroundResource(R.mipmap.btn_main_normal);
+
+ getDB().accreditOffBtn.setClickable(false);
+ getDB().accreditOffBtn.setBackgroundResource(R.mipmap.btn_less_normal);
+ }
+ }else {
+ //鍒犻櫎婵�娲绘枃浠�
+ FileUtils.deleteFile(filePath);
+ getDB().btnDown.setText("寰呭悗鍙颁笂浼犳縺娲绘枃浠�");
+ getDB().btnDown.setClickable(false);
+ getDB().btnDown.setBackgroundResource(R.mipmap.btn_less_normal);
+
+ getDB().accreditOffBtn.setClickable(false);
+ getDB().accreditOffBtn.setBackgroundResource(R.mipmap.btn_less_normal);
+ }
+ }
+
+ @Override
+ public void onClick(View v) {
+ switch (v.getId()) {
+ case R.id.btn_down:
+ //涓嬭浇鎸夐挳
+ if(isDownLoad){
+ ToastView.show(MApplication.mContext,"涓嬭浇涓�...");
+ return;
+ }
+ if(!TextUtils.isEmpty(MApplication.getConfigBean().getActivateFileUrl())){
+ isDownLoad = true;
+ startDownload(MApplication.getConfigBean().getActivateFileUrl());
+ }
+ break;
+ // 绂荤嚎婵�娲�
+ case R.id.accredit_offBtn:
+ faceAuth.initLicenseOffLine(this, new Callback() {
+ @Override
+ public void onResponse(final int code, final String response) {
+ if (code == 0) {
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ // 鎺堟潈鎴愬姛璺宠浆鍔熻兘鍏ュ彛椤甸潰
+ getDB().accreditHintTv.setText("");
+ finish();
+ }
+ });
+ } else {
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ if (code == 7) {
+ getDB().accreditHintTv.setText("婵�娲诲け璐ワ紝璁惧纭欢鎸囩汗涓嶭icense.zip涓嶇");
+ } else if (code == 11) {
+ getDB().accreditHintTv.setText("婵�娲诲け璐ワ紝License.zip鏂囦欢瀵瑰簲鐨勫簭鍒楀彿涓嶅湪鏈夋晥鏈熻寖鍥村唴");
+ } else if (code == -1) {
+ getDB().accreditHintTv.setText("鏈娴嬪埌License.zip鏂囦欢");
+ } else if (code == 14) {
+ getDB().accreditHintTv.setText("婵�娲诲け璐ワ紝License.zip鏂囦欢瀵瑰簲鐨勫簭鍒楀彿涓嶅湪鏈夋晥鏈熻寖鍥村唴");
+ } else if (code == 4) {
+ getDB().accreditHintTv.setText("婵�娲诲け璐ワ紝璁惧纭欢鎸囩汗涓嶭icense.zip涓嶇");
+ } else {
+ getDB().accreditHintTv.setText(code);
+ }
+ }
+ });
+
+ }
+ }
+ });
+ break;
+ }
+ }
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ if (downloadReceiver != null) {
+ unregisterReceiver(downloadReceiver);
+ }
+ }
+ private BroadcastReceiver downloadReceiver;
+ private DownloadManager downloadManager;
+ private long downloadId;
+
+ private void setupDownloadManager() {
+ downloadManager = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
+ }
+
+
+ private void startDownload(String url) {
+ try {
+ DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
+
+ // 璁剧疆涓嬭浇鍙傛暟
+ request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
+ request.setTitle("鏂囦欢涓嬭浇");
+ request.setDescription("姝e湪涓嬭浇鏂囦欢...");
+ request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
+ request.setDestinationInExternalPublicDir("", "License.zip");
+
+ // 寮�濮嬩笅杞�
+ downloadId = downloadManager.enqueue(request);
+ Toast.makeText(mContext, "涓嬭浇宸插紑濮�", Toast.LENGTH_SHORT).show();
+
+ } catch (Exception e) {
+ isDownLoad = false;
+ Toast.makeText(this, "涓嬭浇澶辫触: " + e.getMessage(), Toast.LENGTH_LONG).show();
+ }
+ }
+
+ private void setupDownloadReceiver() {
+ downloadReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive (Context context, Intent intent){
+ long id = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, -1);
+ if (id == downloadId) {
+ isDownLoad = false;
+ Toast.makeText(context, "鏂囦欢涓嬭浇瀹屾垚", Toast.LENGTH_LONG).show();
+ }
+ }
+ };
+ registerReceiver(downloadReceiver,new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
+ }
+}
\ No newline at end of file
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationVM.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationVM.java
new file mode 100644
index 0000000..d7da6e5
--- /dev/null
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationVM.java
@@ -0,0 +1,23 @@
+package com.doumee.keyCabinet.ui.face;
+
+import android.app.Application;
+
+import androidx.annotation.NonNull;
+import androidx.hilt.lifecycle.ViewModelInject;
+
+import com.android.internal.logging.AndroidConfig;
+import com.doumee.lib_coremodel.base.BaseModel;
+import com.doumee.lib_coremodel.base.DataViewModel;
+
+public class OfflineActivationVM extends DataViewModel {
+
+ @ViewModelInject
+ public OfflineActivationVM(@NonNull Application application, BaseModel model) {
+ super(application, model);
+ }
+
+ @Override
+ protected void clickByTypeCommand(int type) {
+ doAction(type);
+ }
+}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/UserManagerActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/UserManagerActivity.java
index d542ecf..fa4b656 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/UserManagerActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/UserManagerActivity.java
@@ -30,6 +30,7 @@
import com.doumee.keyCabinet.R;
import com.doumee.keyCabinet.base.MyBaseActivity;
import com.doumee.keyCabinet.databinding.UserManagerActivityBinding;
+import com.doumee.keyCabinet.event.HttpEvent;
import com.doumee.keyCabinet.ui.face.adapter.FaceUserAdapter;
import com.doumee.keyCabinet.ui.view.TipDialog;
import com.doumee.keyCabinet.utils.face.model.SingleBaseConfig;
@@ -41,6 +42,8 @@
import com.example.datalibrary.model.KeyboardsUtils;
import com.example.datalibrary.model.User;
import com.example.datalibrary.utils.DensityUtils;
+
+import org.greenrobot.eventbus.EventBus;
import java.util.List;
@@ -428,6 +431,12 @@
}
if (mSelectCount != 0) {
isDBLoad = false;
+ String info = "鏁伴噺锛�"+mUserInfoList.size();
+ for(User u:mUserInfoList){
+ String key = u.getUserName()+"-"+u.getGroupId();
+ info+="\n"+key+" :"+u.isChecked()+";";
+ }
+ EventBus.getDefault().post(new HttpEvent(info));
UserInfoManager.getInstance().deleteUserListInfo(mUserInfoList,
mEditTitleSearch.getText().toString() , mUserListListener,
loadListener);
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/guide/TestActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/guide/TestActivity.java
index c12cfb3..14d8dac 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/guide/TestActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/guide/TestActivity.java
@@ -8,7 +8,6 @@
import com.doumee.keyCabinet.R;
import com.doumee.keyCabinet.base.MyBaseActivity;
import com.doumee.keyCabinet.databinding.ActivityTestBinding;
-import com.innohi.YNHAPI;
import dagger.hilt.android.AndroidEntryPoint;
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ChangeUrlActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ChangeUrlActivity.java
index ad4c731..debb0ff 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ChangeUrlActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ChangeUrlActivity.java
@@ -46,6 +46,7 @@
public void initData(@Nullable Bundle savedInstanceState) {
getDB().etUrl.setText(SpUtil.getString("base_url", Apis.HTTP));
getDB().etTime.setText(SpUtil.getInt("loop_time",60)+"");
+ getDB().etXj.setText(SpUtil.getString("rbgCameraId","0"));
}
@Override
@@ -72,11 +73,18 @@
ToastView.show(MApplication.mContext,"鎺ュ彛璋冪敤闂撮殧閿欒");
return;
}
+ String xj = getDB().etXj.getText().toString();
+ if(!"0".equals(xj)&&!"1".equals(xj)){
+ ToastView.show(MApplication.mContext,"鎽勫儚澶寸紪鍙烽敊璇�");
+ return;
+ }
+ String oldCameraId = SpUtil.getString("rbgCameraId","0");
+ SpUtil.saveString("rbgCameraId",xj);
String oldUrl = SpUtil.getString("base_url", Apis.HTTP);
SpUtil.saveString("base_url",url);
SpUtil.saveInt("loop_time",time);
ToastView.show(MApplication.mContext,"淇濆瓨鎴愬姛");
- if(!oldUrl.equals(url)){
+ if(!oldUrl.equals(url)||!oldCameraId.equals(xj)){
//鎺ュ彛涓嶅悓锛岄噸鏂板惎鍔�
restartApp();
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetActivity.java
index 2377446..daaca99 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetActivity.java
@@ -167,6 +167,7 @@
//寮�鍚煖闂�
getVM().openGridDriver(selectBean);
downTime = 60;
+ getDB().tvTitle.setVisibility(View.GONE);
break;
case 2:
//getDB().clTip1.setVisibility(View.GONE);
@@ -281,6 +282,12 @@
private SpannableString getErrPhoneText(){
String phone = MApplication.getConfigBean().getLinkPhone();
+ if(phone==null){
+ String text = "濡傛湁闂璇疯仈绯荤鐞嗗憳";
+ SpannableString styledText = new SpannableString(text);
+ styledText.setSpan(new TextAppearanceSpan(this, R.style.style_tip3), 0, text.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ return styledText;
+ }
String text = "濡傛湁闂璇疯仈绯荤鐞嗗憳"+phone;
SpannableString styledText = new SpannableString(text);
styledText.setSpan(new TextAppearanceSpan(this, R.style.style_tip2), 0, text.length()-phone.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
@@ -473,6 +480,17 @@
if(handler.hasMessages(0)){
handler.removeMessages(0);
}
+ if("1".equals(e.getType())){
+ //1鍙锋澘
+ if(!"1".equals(selectBean.getBoardCode())){
+ return;
+ }
+ }else if("2".equals(e.getType())){
+ //2鍙锋澘
+ if(!"2".equals(selectBean.getBoardCode())){
+ return;
+ }
+ }
String key = SportUtils.intToHex(Integer.parseInt(selectBean.getBoardCode()))
+SportUtils.intToHex(Integer.parseInt(selectBean.getChannelCode()));
if(flag==0) {
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetVM.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetVM.java
index 188f7a9..6f09147 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetVM.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/KeyCabinetVM.java
@@ -100,17 +100,20 @@
OpenGridDriverParam param = new OpenGridDriverParam();
param.setCabinetId(selectBean.getCabinetId());
param.setGridId(selectBean.getId());
+ param.setOpenWay(selectBean.getGetKeyWay());
+ param.setCarUseBookId(selectBean.getCarUseBookId());
param.setMemberId(MApplication.getLoginBean().getMemberId());
param.setAuthType(MApplication.getLoginBean().getAuthType());
showLoading(true);
+ EventBus.getDefault().post(new HttpEvent("===>鍙告満寮�闂�-璇锋眰"));
getRetrofitService(Apis.class).openGridDriver(ParamsUtil.encodeRequestBody(param))
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
@Override
public void onNext(@NonNull BaseResponse response) {
+ EventBus.getDefault().post(new HttpEvent("===>鍙告満寮�闂�-杩斿洖"));
if(200==response.getCode()){
//寮�闂�
- EventBus.getDefault().post(new HttpEvent("寮�闂ㄦ帴鍙f垚鍔�"));
doAction(2);
}else {
toast(response.getMessage());
@@ -141,12 +144,13 @@
param.setMemberId(loginBean.getMemberId());
param.setGridId(gridDo.getGridId());
param.setKeyStatus(!TextUtils.isEmpty(gridDo.getCurKeyCode())?1:2);
+ EventBus.getDefault().post(new HttpEvent("===>鍙告満鍏抽棴鏌滄牸-璇锋眰"));
getRetrofitService(Apis.class).closeGrid(ParamsUtil.encodeRequestBody(param))
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
@Override
public void onNext(@NonNull BaseResponse response) {
- EventBus.getDefault().post(new HttpEvent("鍏抽棴鏌滄牸鎺ュ彛璋冪敤鎴愬姛"));
+ EventBus.getDefault().post(new HttpEvent("===>鍙告満鍏抽棴鏌滄牸-杩斿洖"));
}
@Override
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetActivity.java
index 7ab3232..4e6109c 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetActivity.java
@@ -37,12 +37,13 @@
import com.doumee.keyCabinet.event.OpenGridOneResultEvent;
import com.doumee.keyCabinet.event.TimeClockEvent;
import com.doumee.keyCabinet.ui.keyCabinet.adapter.ManageCabinetRcvAdapter;
+import com.doumee.keyCabinet.utils.MCUtils;
import com.doumee.keyCabinet.utils.i485.SportUtils;
import com.doumee.lib_coremodel.bean.event.ActionEventData;
import com.doumee.lib_coremodel.util.RecyclerHelp;
import com.doumee.lib_coremodel.util.StringUtil;
import com.example.datalibrary.db.DBManager;
-import com.innohi.YNHAPI;
+import com.mc.enjoysdk.McSystemUi;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
@@ -110,8 +111,8 @@
@Override
public boolean onLongClick(View v) {
//鍙互涓嬫媺
- YNHAPI mAPI = YNHAPI.getInstance();
- mAPI.setNavigationBarVisibility(YNHAPI.NavigationBarVisibility.VISIBLE);
+ McSystemUi mcSystemUi = McSystemUi.getInstance(ManageCabinetActivity.this);
+ MCUtils.show(mcSystemUi);
return true;
}
});
@@ -673,8 +674,25 @@
if(!isFail){
if(copyMap.containsKey(gridDo.getGridKey())){
//鍏抽棬鎴愬姛
- EventBus.getDefault().post(new HttpEvent(StringUtil.DateToStrSS(new Date())+"闂ㄥ叧闂垚鍔�***************************>鐩爣锛�"+gridDo.getKeyCode()+",褰撳墠锛�"+gridDo.getCurKeyCode()));
- getVM().closeGrid(gridDo);
+ boolean isSend = false;
+ String bh = gridDo.getGridKey().substring(0,2);
+ if("1".equals(e.getType())){
+ //1鍙锋澘
+ if("01".equals(bh)){
+ isSend = true;
+ }
+ }else if("2".equals(e.getType())){
+ //2鍙锋澘
+ if("02".equals(bh)){
+ isSend = true;
+ }
+ }else {
+ isSend = true;
+ }
+ if(isSend) {
+ EventBus.getDefault().post(new HttpEvent(StringUtil.DateToStrSS(new Date()) + "闂ㄥ叧闂垚鍔�***************************>鐩爣锛�" + gridDo.getKeyCode() + ",褰撳墠锛�" + gridDo.getCurKeyCode()));
+ getVM().closeGrid(gridDo);
+ }
}
}
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetVM.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetVM.java
index 780a18c..40d7828 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetVM.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageCabinetVM.java
@@ -289,7 +289,7 @@
param.setMemberId(loginBean.getMemberId());
param.setGridId(gridDo.getGridId());
param.setKeyStatus(!TextUtils.isEmpty(gridDo.getCurKeyCode())?1:2);
- toast(gridDo.getGridKey()+"鍏抽棴锛屽綋鍓嶉挜鍖欏彿锛�"+gridDo.getCurKeyCode());
+ //toast(gridDo.getGridKey()+"鍏抽棴锛屽綋鍓嶉挜鍖欏彿锛�"+gridDo.getCurKeyCode());
getRetrofitService(Apis.class).closeGrid(ParamsUtil.encodeRequestBody(param))
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageLoginActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageLoginActivity.java
index 2a1ffe1..0297682 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageLoginActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/keyCabinet/ManageLoginActivity.java
@@ -17,8 +17,9 @@
import com.doumee.keyCabinet.databinding.ManageLoginActivityBinding;
import com.doumee.keyCabinet.event.TimeClockEvent;
import com.doumee.keyCabinet.utils.LMobileInfo;
+import com.doumee.keyCabinet.utils.MCUtils;
import com.doumee.lib_coremodel.bean.event.ActionEventData;
-import com.innohi.YNHAPI;
+import com.mc.enjoysdk.McSystemUi;
import org.greenrobot.eventbus.Subscribe;
@@ -51,8 +52,8 @@
public boolean onLongClick(View v) {
if(MApplication.getConfigBean().getId()==null){
//鍙互涓嬫媺
- YNHAPI mAPI = YNHAPI.getInstance();
- mAPI.setNavigationBarVisibility(YNHAPI.NavigationBarVisibility.VISIBLE);
+ McSystemUi mcSystemUi = McSystemUi.getInstance(ManageLoginActivity.this);
+ MCUtils.show(mcSystemUi);
return true;
}
return false;
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java
index 2584140..52a2407 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java
@@ -14,6 +14,7 @@
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
+import android.serialport.SerialPortFinder;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
@@ -69,6 +70,7 @@
import com.doumee.keyCabinet.event.OpenGridOneResultEvent;
import com.doumee.keyCabinet.event.TimeClockEvent;
import com.doumee.keyCabinet.ui.face.ActivationActivity;
+import com.doumee.keyCabinet.ui.face.ChoseActivationActivity;
import com.doumee.keyCabinet.ui.face.FaceActivity;
import com.doumee.keyCabinet.ui.keyCabinet.ChangeUrlActivity;
import com.doumee.keyCabinet.ui.keyCabinet.KeyCabinetActivity;
@@ -84,6 +86,7 @@
import com.doumee.keyCabinet.utils.CircularQueue;
import com.doumee.keyCabinet.utils.CrashHandler;
import com.doumee.keyCabinet.utils.LMobileInfo;
+import com.doumee.keyCabinet.utils.MCUtils;
import com.doumee.keyCabinet.utils.TimeUtils;
import com.doumee.keyCabinet.utils.face.FaceSDKManager;
import com.doumee.keyCabinet.utils.face.FaceUtils;
@@ -107,13 +110,16 @@
import com.doumee.lib_coremodel.util.StringUtil;
import com.doumee.lib_coremodel.view.ToastView;
import com.example.datalibrary.api.FaceApi;
+import com.example.datalibrary.db.DBManager;
import com.example.datalibrary.listener.DBLoadListener;
import com.example.datalibrary.listener.SdkInitListener;
import com.example.datalibrary.model.ImportFeatureResult;
import com.example.datalibrary.model.User;
import com.example.datalibrary.utils.ToastUtils;
import com.example.datalibrary.view.PreviewTexture;
-import com.innohi.YNHAPI;
+import com.mc.enjoysdk.McHome;
+import com.mc.enjoysdk.McSystemUi;
+import com.mc.enjoysdk.transform.McSystemUiFlag;
import com.yanzhenjie.permission.runtime.Permission;
import org.greenrobot.eventbus.EventBus;
@@ -160,6 +166,8 @@
private int downCount = 0;
private Long lastDownTime;
private Long showTime;
+ private McSystemUi mcSystemUi;
+ private McHome mcHome;
private Handler handler = new Handler(){
@Override
@@ -219,6 +227,8 @@
startService(intent2);*/
getPermission();
Timber.tag("====>").d(LMobileInfo.getDeviceUniqueId());
+ mcSystemUi = McSystemUi.getInstance(this);
+ mcHome = McHome.getInstance(this);
}
private void initM(){
@@ -253,6 +263,7 @@
@Override
public void onChanged(List<FaceUserBean> beans) {
//鏇存柊浜鸿劯鏁版嵁
+ getVM().addInfo("鏇存柊浜鸿劯鏁版嵁======銆媌eans = "+beans);
if(beans!=null&&beans.size()>0){
initModel(beans);
}
@@ -324,8 +335,10 @@
}else {
getDB().nsv.setVisibility(View.VISIBLE);
}
- YNHAPI mAPI = YNHAPI.getInstance();
- mAPI.setNavigationBarVisibility(YNHAPI.NavigationBarVisibility.VISIBLE);
+ //鏄剧ず鐘舵�佹爮
+ mcSystemUi.temporarilySwitchStatusBar(true);
+ //鏄剧ず瀵艰埅鏍�
+ mcSystemUi.temporarilySwitchNavigation(true);
}
});
upErrInfo();
@@ -340,6 +353,7 @@
}
setJiuConfig();
initPort();
+ EventBus.getDefault().post(new GetFacesEvent());
}
}
});
@@ -458,6 +472,12 @@
private SpannableString getErrPhoneText(){
String phone = MApplication.getConfigBean().getLinkPhone();
+ if(phone==null){
+ String text = "濡傛湁闂璇疯仈绯荤鐞嗗憳";
+ SpannableString styledText = new SpannableString(text);
+ styledText.setSpan(new TextAppearanceSpan(this, R.style.style_tip3), 0, text.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ return styledText;
+ }
String text = "濡傛湁闂璇疯仈绯荤鐞嗗憳"+phone;
SpannableString styledText = new SpannableString(text);
styledText.setSpan(new TextAppearanceSpan(this, R.style.style_tip3), 0, text.length()-phone.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
@@ -470,9 +490,9 @@
protected void onResume() {
super.onResume();
isShowing = true;
- YNHAPI mAPI = YNHAPI.getInstance();
- mAPI.setNavigationBarVisibility(YNHAPI.NavigationBarVisibility.ALWAYS_INVISIBLE);
- mAPI.setBootLaunchApk("com.doumee.keyCabinet", true);
+ getVM().setSubmit(true);
+ MCUtils.hind(mcSystemUi);
+ mcHome.setHomePackage("com.doumee.keyCabinet");
showTime = System.currentTimeMillis();
if(!isFaceOk) {
initLicense();
@@ -512,7 +532,10 @@
if (future != null && !future.isDone()) {
future.cancel(true);
}
- FaceApi.getInstance().cleanRecords();
+ if(isFaceOk) {
+ //婵�娲讳簡鎵嶅鐞�
+ FaceApi.getInstance().cleanRecords();
+ }
handler.removeCallbacksAndMessages(null);
handler = null;
faceHandler.removeCallbacksAndMessages(null);
@@ -543,7 +566,9 @@
@Subscribe
public void GetFacesEvent(GetFacesEvent event){
+ getVM().addInfo("鏌ヨ浜鸿劯鏁版嵁======銆�");
if(!isFinishing()&&!isUpdatingFace){
+ getVM().addInfo("鏌ヨ浜鸿劯鏁版嵁======銆媔sDBLoad = "+isDBLoad);
if(isDBLoad){
isNeedUpdateFace = false;
//鏌ヨ浜鸿劯
@@ -577,7 +602,7 @@
/*
*瑕佹墽琛岀殑鎿嶄綔*/
- startActivity(new Intent(mContext, ActivationActivity.class));
+ startActivity(new Intent(mContext, ChoseActivationActivity.class));
}
};
Timer timer = new Timer();
@@ -639,10 +664,10 @@
@Override
public void run() {
FaceApi.getInstance().setUsers(users);
+ isDBLoad = true;
initFaceSDKManager(null);
if (successCount > 5000 || successCount == 0) {
getDB().progressGroup.setVisibility(View.GONE);
- isDBLoad = true;
isFaceOk = true;
}
}
@@ -688,8 +713,10 @@
private void initModel(List<FaceUserBean> userBeans) {
if (com.example.datalibrary.manager.FaceSDKManager.initStatus == com.example.datalibrary.manager.FaceSDKManager.SDK_MODEL_LOAD_SUCCESS) {
+ getVM().addInfo("鏇存柊浜鸿劯===銆嬪紑濮嬫洿鏂�");
waitUpdate(userBeans);
}else {
+ getVM().addInfo("鏇存柊浜鸿劯===銆嬪垵濮嬪寲");
initFaceSDKManager(userBeans);
}
}
@@ -745,6 +772,7 @@
super.onPause();
showTime = null;
isShowing = false;
+ getVM().setSubmit(false);
}
private int finishCount;
@@ -778,11 +806,9 @@
}
};
- private void waitUpdate(List<FaceUserBean> userBeans){
- if(isUpdatingFace){
- //姝e湪鏇存柊
- waitBeans.addAll(userBeans);
- }else {
+ private UserInfoManager.UserInfoListener mUserListListener = new UserInfoManager.UserInfoListener(){
+ @Override
+ public void userListQuerySuccess(String userName, List<User> listUserInfo) {
selectBeans.clear();
selectBeans.addAll(waitBeans);
waitBeans.clear();
@@ -800,25 +826,37 @@
//鍒犻櫎涓嶅瓨鍦ㄧ敤鎴�
List<User> users = FaceApi.getInstance().getAllUserList();
List<User> dels = new ArrayList<>();
+ StringBuilder sb = new StringBuilder();
for(User u:users){
String key = u.getUserId()+"_"+u.getGroupId();
if(!uMap.containsKey(key)){
+ u.setChecked(true);
dels.add(u);
+ if(sb.length()>0){
+ sb.append(",");
+ }
+ sb.append(u.getUserName());
}
}
+ getVM().addInfo("鏇存柊浜鸿劯銆嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨�嬨��");
if(dels.size()>0){
- UserInfoManager.getInstance().deleteUserListInfo(dels,
- "", new UserInfoManager.UserInfoListener() {
+ getVM().addInfo("鍑嗗鍒犻櫎鐢ㄦ埛锛�"+sb.toString());
+ UserInfoManager.getInstance().deleteUserListInfo(users,
+ "1", new UserInfoManager.UserInfoListener() {
@Override
public void userListDeleteSuccess() {
// 鐢ㄦ埛鍒楄〃鍒犻櫎鎴愬姛
faceHandler.sendEmptyMessage(0);
+ getVM().addInfo("鍒犻櫎鐢ㄦ埛鎴愬姛锛�");
}
@Override
public void userListDeleteFailure(String message) {
// 鐢ㄦ埛鍒楄〃鍒犻櫎澶辫触
faceHandler.sendEmptyMessage(0);
+ getVM().addInfo("鍒犻櫎鐢ㄦ埛澶辫触锛�"+message);
+
+ getVM().addInfo("鍒犻櫎鐢ㄦ埛鍒楄〃锛�"+sb.toString());
}
},
new DBLoadListener() {
@@ -846,11 +884,41 @@
faceHandler.sendEmptyMessage(0);
}
}
+
+ @Override
+ public void userListQueryFailure(String message) {
+
+ }
+
+ @Override
+ public void userListDeleteSuccess() {
+
+ }
+
+ @Override
+ public void userListDeleteFailure(String message) {
+
+ }
+ };
+
+ private List<FaceUserBean> userBeans = new ArrayList<>();
+ private void waitUpdate(List<FaceUserBean> userBeans){
+ if(isUpdatingFace){
+ //姝e湪鏇存柊
+ waitBeans.addAll(userBeans);
+ getVM().addInfo("姝e湪鏇存柊銆佺瓑寰� 銆娿�娿�娿�娿�娿�娿�娿��");
+ }else {
+ getVM().addInfo("鍒濆鍖栦汉鑴稿簱 銆娿�娿�娿�娿�娿�娿�娿��");
+ com.example.datalibrary.manager.FaceSDKManager.getInstance().initDataBases(MainActivity.this);
+ this.userBeans.clear();
+ this.userBeans.addAll(userBeans);
+ UserInfoManager.getInstance().getUserListInfo(null, mUserListListener);
+ }
}
private int repeatCount = 0;
private void updateFace(FaceUserBean bean){
- Timber.d("==UpdatingFace==>瀹屾垚鏁伴噺 "+finishCount);
+ //getVM().addInfo("==UpdatingFace==>瀹屾垚鏁伴噺 " + finishCount);
if (TextUtils.isEmpty(bean.getFaceImg())||bean.getFaceImg().endsWith("null")) {
finishCount++;
faceHandler.sendEmptyMessage(0);
@@ -959,12 +1027,14 @@
isSave = FaceApi.getInstance().registerUserIntoDBmanager(newDo.getGroupId(),
newDo.getUserId(), newDo.getUserName(), newDo.getImageName(), newDo.getUserInfo(), newDo.getFeature());
//System.out.println("==isOk==>淇濆瓨鎴愬姛");
+ //getVM().addInfo("鏂板浜鸿劯==銆�"+newDo.getUserName()+" 缁撴灉锛�"+isSave);
} else {
//鏇存柊
user.setUserName(newDo.getUserName());
user.setImageName(newDo.getImageName());
user.setFeature(newDo.getFeature());
isSave = FaceApi.getInstance().userUpdateOnly(user);
+ //getVM().addInfo("鏇存柊浜鸿劯==銆�"+newDo.getUserName()+" 缁撴灉锛�"+isSave);
//System.out.println("==isOk==>鏇存柊鎴愬姛");
}
@@ -1088,7 +1158,7 @@
SingleBaseConfig.getBaseConfig().setRBGCameraId(index);
SingleBaseConfig.getBaseConfig().setRgbRevert(true);
SingleBaseConfig.getBaseConfig().setRgbDetectDirection(90);
- SingleBaseConfig.getBaseConfig().setRgbVideoDirection(270);
+ SingleBaseConfig.getBaseConfig().setRgbVideoDirection(90);
GateConfigUtils.modityJson();
RegisterConfigUtils.modityJson();
}
@@ -1178,7 +1248,6 @@
getVM().devLogin();
getPermission();
getVM().devHeart();
- EventBus.getDefault().post(new GetFacesEvent());
}else {
loopDownCount--;
}
@@ -1546,7 +1615,7 @@
}
getVM().updateGrids(updateList);
- EventBus.getDefault().post(new KeyResultEvent());
+ EventBus.getDefault().post(new KeyResultEvent(bh+""));
}
private SerialPortModel jiuPort;
@@ -1610,20 +1679,28 @@
return;
}
runOnUiThread(() -> {
- getVM().addInfo("鑾峰彇鍒伴棬鏁版嵁:" + SportUtils.bytesToHexSimple(bytes));
+ getVM().addInfo("鑾峰彇鍒版暟鎹�:" + SportUtils.bytesToHexSimple(bytes));
});
+ String data = SportUtils.bytesToHexSimple(bytes);
if(startIndex==1){
- gridPath = path;
- getVM().addInfo("璁剧疆闂ㄤ覆鍙h矾寰�:" + path);
- SpUtil.saveString("port_grid",path);
+ if(data.toLowerCase().startsWith("80")){
+ gridPath = path;
+ getVM().addInfo("璁剧疆闂ㄤ覆鍙h矾寰�:=====XXXXX===>" + path);
+ SpUtil.saveString("port_grid",path);
+ }
}else if(startIndex==2){
- keyPath = path;
- getVM().addInfo("璁剧疆閽ュ寵涓插彛璺緞:" + path);
- SpUtil.saveString("port_key",path);
+ if(data.toLowerCase().startsWith("cc")){
+ keyPath = path;
+ getVM().addInfo("璁剧疆閽ュ寵涓插彛璺緞:====XXXX====>" + path);
+ SpUtil.saveString("port_key",path);
+ }
}else if(startIndex==3){
- jiuPath = path;
- getVM().addInfo("璁剧疆閰掔簿涓插彛璺緞:" + path);
- SpUtil.saveString("port_jiu",path);
+ String data2 = new String(bytes);
+ if(data2.toLowerCase().startsWith("mic")) {
+ jiuPath = path;
+ getVM().addInfo("璁剧疆閰掔簿涓插彛璺緞:====XXXX====>" + path);
+ SpUtil.saveString("port_jiu", path);
+ }
}
}
};
@@ -1642,8 +1719,8 @@
switch (msg.what){
case 0:
if(index>=1&&!checkEnd()){
- path = ports.get(index);
index--;
+ path = ports.get(index);
portHandler.sendEmptyMessage(4);
}else if(checkEnd()){
initPort();
@@ -1747,90 +1824,97 @@
private boolean isInitPort;
//鍒濆鍖栦覆鍙�
private void initPort(){
- //SpUtil.setString("port_grid","/dev/ttyS7");
- //SpUtil.setString("port_key","/dev/ttyS1");
- //SpUtil.setString("port_jiu","/dev/ttyS2");
- gridPath = SpUtil.getString("port_grid");
- getVM().addInfo("闂ㄤ覆鍙i摼鎺ワ細"+gridPath);
- keyPath = SpUtil.getString("port_key");
- getVM().addInfo("閽ュ寵涓插彛閾炬帴锛�"+keyPath);
- jiuPath = SpUtil.getString("port_jiu");
- getVM().addInfo("閰掔簿涓插彛閾炬帴锛�"+jiuPath);
- if(!TextUtils.isEmpty(SpUtil.getString("port_grid"))&&
- !TextUtils.isEmpty(SpUtil.getString("port_key"))&&
- !TextUtils.isEmpty(SpUtil.getString("port_jiu"))){
- if(isInitPort){
- return;
- }
- xhCount=0;
- closePort(chosePort);
- if(!TextUtils.isEmpty(SpUtil.getString("port_grid"))){
- String path = SpUtil.getString("port_grid");
- closePort(gridPort);
- getVM().addInfo("闂ㄤ覆鍙i摼鎺ワ細"+path);
- gridPort = new SerialPortModel(path,9600 ,8
- ,1 , 0,gridReadObserver);
- boolean isSucc = gridPort.open();
- if(isSucc) {
- isInitPort = true;
- getVM().addInfo("闂ㄤ覆鍙i摼鎺ユ垚鍔燂細"+path);
- String msg = isSucc ? "鎴愬姛" : "澶辫触";
- //getVM().append("涓插彛 "+ settingBean.getDevicePath() + " -杩炴帴"+msg);
- gridPort.startRead();
- //鏌ヨ鎵�鏈夋煖鏍奸棬淇℃伅
- checkGridStatus(300);
- }else {
- getVM().addInfo("闂ㄤ覆鍙i摼鎺ュけ璐ワ細"+path);
+ try {
+ /*SpUtil.setString("port_grid","/dev/ttyS0");
+ SpUtil.setString("port_key","/dev/ttyS4");
+ SpUtil.setString("port_jiu","/dev/ttyS9");*/
+
+ gridPath = SpUtil.getString("port_grid");
+ getVM().addInfo("闂ㄤ覆鍙i摼鎺ワ細"+gridPath);
+ keyPath = SpUtil.getString("port_key");
+ getVM().addInfo("閽ュ寵涓插彛閾炬帴锛�"+keyPath);
+ jiuPath = SpUtil.getString("port_jiu");
+ getVM().addInfo("閰掔簿涓插彛閾炬帴锛�"+jiuPath);
+ if(!TextUtils.isEmpty(SpUtil.getString("port_grid"))&&
+ !TextUtils.isEmpty(SpUtil.getString("port_key"))&&
+ !TextUtils.isEmpty(SpUtil.getString("port_jiu"))){
+ if(isInitPort){
+ return;
}
- }
- if(!TextUtils.isEmpty(SpUtil.getString("port_key"))){
- String path = SpUtil.getString("port_key");
- closePort(keyPort);
- keyPort = new SerialPortModel(path,115200 ,8
- ,1 , 0,keyReadObserver);
- boolean isSucc = keyPort.open();
- if(isSucc) {
- isInitPort = true;
- getVM().addInfo("閽ュ寵涓插彛閾炬帴鎴愬姛锛�"+path);
- String msg = isSucc ? "鎴愬姛" : "澶辫触";
- //getVM().append("涓插彛 "+ settingBean.getDevicePath() + " -杩炴帴"+msg);
- keyPort.startRead();
- checkKeyStatus(1500);
- }else {
- getVM().addInfo("閽ュ寵涓插彛閾炬帴澶辫触锛�"+path);
+ xhCount=0;
+ closePort(chosePort);
+ if(!TextUtils.isEmpty(SpUtil.getString("port_grid"))){
+ String path = SpUtil.getString("port_grid");
+ closePort(gridPort);
+ getVM().addInfo("闂ㄤ覆鍙i摼鎺ワ細"+path);
+ gridPort = new SerialPortModel(path,9600 ,8
+ ,1 , 0,gridReadObserver);
+ boolean isSucc = gridPort.open();
+ if(isSucc) {
+ isInitPort = true;
+ getVM().addInfo("闂ㄤ覆鍙i摼鎺ユ垚鍔燂細"+path);
+ String msg = isSucc ? "鎴愬姛" : "澶辫触";
+ //getVM().append("涓插彛 "+ settingBean.getDevicePath() + " -杩炴帴"+msg);
+ gridPort.startRead();
+ //鏌ヨ鎵�鏈夋煖鏍奸棬淇℃伅
+ checkGridStatus(300);
+ }else {
+ getVM().addInfo("闂ㄤ覆鍙i摼鎺ュけ璐ワ細"+path);
+ }
}
- }
- if(!TextUtils.isEmpty(SpUtil.getString("port_jiu"))){
- String path = SpUtil.getString("port_jiu");
- closePort(jiuPort);
- jiuPort = new SerialPortModel(path,9600 ,8
- ,1 , 0,jiuReadObserver);
- boolean isSucc = jiuPort.open();
- if(isSucc) {
- isInitPort = true;
- getVM().addInfo("閰掔簿涓插彛閾炬帴鎴愬姛锛�"+path);
- String msg = isSucc ? "鎴愬姛" : "澶辫触";
- //getVM().append("涓插彛 "+ settingBean.getDevicePath() + " -杩炴帴"+msg);
- jiuPort.startRead();
- }else {
- getVM().addInfo("閰掔簿涓插彛閾炬帴澶辫触锛�"+path);
+ if(!TextUtils.isEmpty(SpUtil.getString("port_key"))){
+ String path = SpUtil.getString("port_key");
+ closePort(keyPort);
+ keyPort = new SerialPortModel(path,115200 ,8
+ ,1 , 0,keyReadObserver);
+ boolean isSucc = keyPort.open();
+ if(isSucc) {
+ isInitPort = true;
+ getVM().addInfo("閽ュ寵涓插彛閾炬帴鎴愬姛锛�"+path);
+ String msg = isSucc ? "鎴愬姛" : "澶辫触";
+ //getVM().append("涓插彛 "+ settingBean.getDevicePath() + " -杩炴帴"+msg);
+ keyPort.startRead();
+ checkKeyStatus(1500);
+ }else {
+ getVM().addInfo("閽ュ寵涓插彛閾炬帴澶辫触锛�"+path);
+ }
}
- }
- }else {
- if(xhCount>2){
- return;
- }
- xhCount++;
- ports = SportUtils.getSerialPortPaths(this);
- if(ports==null){
- getVM().addInfo("鏈煡璇㈠埌涓插彛鍒楄〃");
+ if(!TextUtils.isEmpty(SpUtil.getString("port_jiu"))){
+ String path = SpUtil.getString("port_jiu");
+ closePort(jiuPort);
+ jiuPort = new SerialPortModel(path,9600 ,8
+ ,1 , 0,jiuReadObserver);
+ boolean isSucc = jiuPort.open();
+ if(isSucc) {
+ isInitPort = true;
+ getVM().addInfo("閰掔簿涓插彛閾炬帴鎴愬姛锛�"+path);
+ String msg = isSucc ? "鎴愬姛" : "澶辫触";
+ //getVM().append("涓插彛 "+ settingBean.getDevicePath() + " -杩炴帴"+msg);
+ jiuPort.startRead();
+ }else {
+ getVM().addInfo("閰掔簿涓插彛閾炬帴澶辫触锛�"+path);
+ }
+ }
}else {
- getVM().addInfo("涓插彛鍒楄〃锛�"+ports.size());
+ if(xhCount>2){
+ return;
+ }
+ xhCount++;
+ ports = SportUtils.getSerialPortPaths(this);
+ if(ports==null){
+ getVM().addInfo("鏈煡璇㈠埌涓插彛鍒楄〃");
+ }else {
+ getVM().addInfo("涓插彛鍒楄〃锛�"+ports.size());
+ }
+ if(ports.size()>0){
+ index = ports.size();
+ portHandler.sendEmptyMessage(0);
+ }
}
- if(ports.size()>0){
- index = ports.size()-1;
- portHandler.sendEmptyMessage(0);
- }
+ }catch (RuntimeException e){
+ Toast.makeText(mContext, e.getMessage(), Toast.LENGTH_SHORT).show();
+ }catch (Exception e){
+ Toast.makeText(mContext, e.getMessage(), Toast.LENGTH_SHORT).show();
}
}
@@ -1948,17 +2032,17 @@
private boolean checkEnd(){
if(TextUtils.isEmpty(gridPath)){
- getVM().addInfo("闂ㄩ敊璇�");
+ getVM().addInfo("闂ㄩ敊璇�<<<<<<<<<<<<<<<<<<<");
startIndex=0;
return false;
}
if(TextUtils.isEmpty(keyPath)){
- getVM().addInfo("閽ュ寵閿欒");
+ getVM().addInfo("閽ュ寵閿欒<<<<<<<<<<<<<<<<<<<");
startIndex=1;
return false;
}
if(TextUtils.isEmpty(jiuPath)){
- getVM().addInfo("閰掔簿閿欒");
+ getVM().addInfo("閰掔簿閿欒<<<<<<<<<<<<<<<<<<<");
startIndex=2;
return false;
}
@@ -2034,7 +2118,6 @@
if(handler.hasMessages(2)){
handler.removeMessages(2);
}
-
HashMap<String,String> copyMap = new HashMap<>();
copyMap.putAll(closeMap);
closeMap.clear();
@@ -2071,8 +2154,25 @@
}
if(!isFail){
//鍏抽棬鎴愬姛
- EventBus.getDefault().post(new HttpEvent(StringUtil.DateToStrSS(new Date())+"闂ㄥ叧闂垚鍔�***************************>鐩爣锛�"+gridDo.getKeyCode()+",褰撳墠锛�"+gridDo.getCurKeyCode()));
- getVM().closeGrid(gridDo);
+ boolean isSend = false;
+ String bh = gridDo.getGridKey().substring(0,2);
+ if("1".equals(e.getType())){
+ //1鍙锋澘
+ if("01".equals(bh)){
+ isSend = true;
+ }
+ }else if("2".equals(e.getType())){
+ //2鍙锋澘
+ if("02".equals(bh)){
+ isSend = true;
+ }
+ }else {
+ isSend = true;
+ }
+ if(isSend) {
+ EventBus.getDefault().post(new HttpEvent(StringUtil.DateToStrSS(new Date()) + "闂ㄥ叧闂垚鍔�***************************>鐩爣锛�" + gridDo.getKeyCode() + ",褰撳墠锛�" + gridDo.getCurKeyCode()));
+ getVM().closeGrid(gridDo);
+ }
}
}
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java
index 40f82bc..39ca636 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java
@@ -13,30 +13,24 @@
import com.doumee.keyCabinet.bean.CabinetFaceBean;
import com.doumee.keyCabinet.bean.DevConfigBean;
import com.doumee.keyCabinet.bean.FaceUserBean;
-import com.doumee.keyCabinet.bean.KeyCabinetBean;
import com.doumee.keyCabinet.bean.LoginBean;
import com.doumee.keyCabinet.bean.ManageKeyCabinetBean;
import com.doumee.keyCabinet.dao.CabinetGridDo;
import com.doumee.keyCabinet.dao.DaoManager;
-import com.doumee.keyCabinet.event.DevConfigEvent;
import com.doumee.keyCabinet.event.HttpEvent;
import com.doumee.keyCabinet.http.Apis;
import com.doumee.keyCabinet.http.param.BaseResponse;
import com.doumee.keyCabinet.http.param.CloseGridParam;
import com.doumee.keyCabinet.http.param.DevErrInfoParam;
-import com.doumee.keyCabinet.http.param.DevLoginParam;
-import com.doumee.keyCabinet.http.param.FaceUserParam;
import com.doumee.keyCabinet.http.param.RequestBaseObject;
+import com.doumee.keyCabinet.http.param.SyncGridDataParam;
import com.doumee.keyCabinet.http.param.TimeOutUnCloseAlarmParam;
-import com.doumee.keyCabinet.utils.BraceletLogUtils;
import com.doumee.keyCabinet.utils.LMobileInfo;
-import com.doumee.keyCabinet.utils.LanguageUtil;
import com.doumee.keyCabinet.utils.ParamsUtil;
import com.doumee.keyCabinet.utils.i485.SportUtils;
import com.doumee.lib_coremodel.base.BaseModel;
import com.doumee.lib_coremodel.base.DataViewModel;
import com.doumee.lib_coremodel.http.rxJava.SimpleObserver;
-import com.doumee.lib_coremodel.http.utils.GsonTools;
import com.doumee.lib_coremodel.http.utils.RxUtils;
import com.doumee.lib_coremodel.util.SpUtil;
import com.doumee.lib_coremodel.util.StringUtil;
@@ -48,9 +42,6 @@
import java.util.HashMap;
import java.util.List;
-import okhttp3.Headers;
-import retrofit2.Response;
-
public class MainVM extends DataViewModel {
public ObservableField<String> dayObs = new ObservableField<>("");
public ObservableField<String> timeObs = new ObservableField<>("");
@@ -58,6 +49,12 @@
private MutableLiveData<List<FaceUserBean>> faceLD = new MutableLiveData<>();
private MutableLiveData<DevConfigBean> confidLD = new MutableLiveData<>();
+
+ private boolean isSubmit = false;
+
+ public void setSubmit(boolean submit) {
+ isSubmit = submit;
+ }
@ViewModelInject
public MainVM(@NonNull Application application, BaseModel model) {
@@ -80,6 +77,7 @@
if(200==response.getCode()){
if(response.getData()!=null){
MApplication.saveConfigBean(response.getData());
+ EventBus.getDefault().post(new HttpEvent("閰掔簿妫�娴嬪紑鍏筹細"+response.getData().getAlcoholStatus()));
confidLD.setValue(response.getData());
if(response.getData().getCabinetGridInfoVOList()!=null){
updateDao(response.getData().getCabinetGridInfoVOList());
@@ -114,6 +112,7 @@
}
List<CabinetGridDo> addList = new ArrayList<>();
List<CabinetGridDo> updateList = new ArrayList<>();
+ List<SyncGridDataParam.GridDTO> errList = new ArrayList<>();
for(ManageKeyCabinetBean bean:beans){
String key = SportUtils.intToHex(Integer.parseInt(bean.getBoardCode()))+SportUtils.intToHex(Integer.parseInt(bean.getChannelCode()));
if(oldMap.containsKey(key)){
@@ -129,6 +128,13 @@
gridDo.setWorkingStatus(bean.getWorkingStatus());
updateList.add(gridDo);
oldMap.remove(key);
+ if(isSubmit&&!isCheck(gridDo.getKeyCode(),gridDo.getCurKeyCode())){
+ SyncGridDataParam.GridDTO errDo = new SyncGridDataParam.GridDTO();
+ errDo.setActualLable(gridDo.getCurKeyCode());
+ errDo.setBoardCode(bean.getBoardCode());
+ errDo.setChannelCode(bean.getChannelCode());
+ errList.add(errDo);
+ }
}else {
//鏂板
CabinetGridDo gridDo = new CabinetGridDo();
@@ -165,6 +171,20 @@
}
DaoManager.getCabinetGridDao().update(upList);
}
+ if(errList.size()>0){
+ syncGridData(errList);
+ }
+ }
+
+ private boolean isCheck(String v1,String v2){
+ if(TextUtils.isEmpty(v1)&&TextUtils.isEmpty(v2)){
+ return true;
+ }else if(TextUtils.isEmpty(v1)&&!TextUtils.isEmpty(v2)){
+ return false;
+ }else if(!TextUtils.isEmpty(v1)&&TextUtils.isEmpty(v2)){
+ return false;
+ }
+ return v1.equals(v2);
}
public void devHeart(){
@@ -191,12 +211,45 @@
});
}
+ public void syncGridData(List<SyncGridDataParam.GridDTO> errList){
+ SyncGridDataParam param = new SyncGridDataParam();
+ param.setCode(LMobileInfo.getDeviceUniqueId());
+ param.setGridDTOList(errList);
+ StringBuilder sb = new StringBuilder();
+ for(SyncGridDataParam.GridDTO d:errList){
+ if(sb.length()>0){
+ sb.append(",");
+ }
+ sb.append(d.getBoardCode()+"_"+d.getChannelCode()+":"+d.getActualLable());
+ }
+ EventBus.getDefault().post(new HttpEvent("涓婃姤閿欒閽ュ寵淇℃伅===銆�"+sb.toString()));
+ getRetrofitService(Apis.class).syncGridData(ParamsUtil.encodeRequestBody(param))
+ .compose(RxUtils.schedulersTransformer())
+ .subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
+ @Override
+ public void onNext(@NonNull BaseResponse response) {
+
+ }
+
+ @Override
+ public void onError(@NonNull Throwable e) {
+
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+
public MutableLiveData<List<FaceUserBean>> getFaceLD() {
return faceLD;
}
public void getFaceDatas() {
//showLoading(true);
+ addInfo("鏌ヨ浜鸿劯鏁版嵁======銆嬭皟鐢ㄦ帴鍙�");
getRetrofitService(Apis.class).allFaceList( LMobileInfo.getDeviceUniqueId())
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse<CabinetFaceBean>>(rxJavaGcManager) {
@@ -291,12 +344,13 @@
param.setCabinetId(MApplication.getConfigBean().getId());
param.setMemberId(loginBean.getMemberId());
param.setGridId(gridDo.getGridId());
+ EventBus.getDefault().post(new HttpEvent("===>瓒呮椂鏈叧闂�-璇锋眰"));
getRetrofitService(Apis.class).timeOutUnCloseAlarm(ParamsUtil.encodeRequestBody(param))
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
@Override
public void onNext(@NonNull BaseResponse response) {
- toast("瓒呮椂鏈叧闂ㄦ帴鍙h皟鐢ㄦ垚鍔�");
+ toast("===>瓒呮椂鏈叧闂�-杩斿洖");
}
@Override
@@ -319,12 +373,13 @@
param.setMemberId(loginBean.getMemberId());
param.setGridId(gridDo.getGridId());
param.setKeyStatus(!TextUtils.isEmpty(gridDo.getCurKeyCode())?1:2);
+ EventBus.getDefault().post(new HttpEvent("===>棣栭〉鍏抽棴鏌滄牸-璇锋眰"));
getRetrofitService(Apis.class).closeGrid(ParamsUtil.encodeRequestBody(param))
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
@Override
public void onNext(@NonNull BaseResponse response) {
-
+ EventBus.getDefault().post(new HttpEvent("===>棣栭〉鍏抽棴鏌滄牸-杩斿洖"));
}
@Override
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/BraceletLogUtils.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/BraceletLogUtils.java
index a2716c6..070bf0a 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/BraceletLogUtils.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/BraceletLogUtils.java
@@ -14,14 +14,14 @@
public static Long lastTime = 0L;
public static void saveLog(String msg){
- String time = TimeUtils.getNowDate();
+ /*String time = TimeUtils.getNowDate();
String text = SpUtil.getString(LOG_KEY);
if(TextUtils.isEmpty(text)){
text = "";
}
text+= time + "锛�"+msg+" #";
COUNT++;
- SpUtil.saveString(LOG_KEY,text);
+ SpUtil.saveString(LOG_KEY,text);*/
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java
index 2eb455d..dbe30e2 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/CrashHandler.java
@@ -11,10 +11,12 @@
import android.os.Environment;
import android.os.Looper;
+import com.doumee.keyCabinet.MApplication;
import com.doumee.keyCabinet.ui.guide.GuideActivity;
import com.doumee.keyCabinet.ui.main.MainActivity;
+import com.doumee.keyCabinet.utils.update.FileUtil;
import com.doumee.lib_coremodel.util.SpUtil;
-import com.innohi.YNHAPI;
+import com.mc.enjoysdk.McSystemUi;
import java.io.BufferedWriter;
import java.io.ByteArrayOutputStream;
@@ -28,6 +30,7 @@
import java.lang.Thread.UncaughtExceptionHandler;
import java.text.SimpleDateFormat;
import java.util.Date;
+import java.util.List;
import java.util.Properties;
/**
@@ -40,7 +43,7 @@
*/
public class CrashHandler implements UncaughtExceptionHandler {
private static final String TAG = "CrashHandler";
- private static String PATH = Environment.getExternalStorageDirectory().getPath() + "/log/";
+ private static String PATH = "/log/";
public static final String FILE_NAME = "crash";
//log鏂囦欢鐨勫悗缂�鍚�
private static final String FILE_NAME_SUFFIX = ".txt";
@@ -87,9 +90,8 @@
public void uncaughtException(Thread thread, Throwable ex) {
try {
//瀵煎嚭寮傚父淇℃伅鍒癝D鍗′腑
- YNHAPI mAPI = YNHAPI.getInstance();
- mAPI.setNavigationBarVisibility(YNHAPI.NavigationBarVisibility.VISIBLE);
- dumpExceptionToSDCard(ex);
+ McSystemUi mcSystemUi = McSystemUi.getInstance(mContext);
+ MCUtils.show(mcSystemUi);
long time = SpUtil.getLong("err_app");
SpUtil.saveLong("err_app",System.currentTimeMillis());
if(System.currentTimeMillis()-time>60000){
@@ -111,50 +113,40 @@
}
//杩欓噷鍙互閫氳繃缃戠粶涓婁紶寮傚父淇℃伅鍒版湇鍔″櫒锛屼究浜庡紑鍙戜汉鍛樺垎鏋愭棩蹇椾粠鑰岃В鍐砨ug
- } catch (IOException e) {
- e.printStackTrace();
- System.out.println("閿欒鏃ュ織1"+e.getMessage());
- }
- //鎵撳嵃鍑哄綋鍓嶈皟鐢ㄦ爤淇℃伅
- ex.printStackTrace();
- //濡傛灉绯荤粺鎻愪緵浜嗛粯璁ょ殑寮傚父澶勭悊鍣紝鍒欎氦缁欑郴缁熷幓缁撴潫鎴戜滑鐨勭▼搴忥紝鍚﹀垯灏辩敱鎴戜滑鑷繁缁撴潫鑷繁
- if (mDefaultHandler != null) {
- mDefaultHandler.uncaughtException(thread, ex);
- } else {
- android.os.Process.killProcess(android.os.Process.myPid());
- }
-
- if (!handleException(ex) && mDefaultHandler != null) {
- // 濡傛灉鐢ㄦ埛娌℃湁澶勭悊鍒欒绯荤粺榛樿鐨勫紓甯稿鐞嗗櫒鏉ュ鐞�
- mDefaultHandler.uncaughtException(thread, ex);
- } else {
- /*try {
- Thread.sleep(500);
- } catch (InterruptedException e) {
- Log.e(TAG, "error : ", e);
- }*/
- /*System.out.println("閲嶅惎搴旂敤");
- // 鍒涘缓涓�涓柊鐨勫惎鍔ㄦ剰鍥�
- Intent intent = new Intent(mContext, GuideActivity.class);
- // 璁剧疆FLAG_ACTIVITY_CLEAR_TASK鏍囧織浣�
- intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
- // 浣跨敤PendingIntent鍖呰鍚姩鎰忓浘
- PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, PendingIntent.FLAG_ONE_SHOT);
- // 鑾峰彇AlarmManager瀹炰緥
- AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
- // 鍦�500姣鍚庤Е鍙戦噸鍚搷浣�
- alarmManager.set(AlarmManager.RTC, System.currentTimeMillis() + 10, pendingIntent);
-
- android.os.Process.killProcess(android.os.Process.myPid());
- System.exit(1);*/
- /*// 鏈崟鑾峰紓甯稿啓鏂囦欢
- writeCrashInfoToFile(ex);
- // 閫�鍑烘暣涓簲鐢�
+ //鎵撳嵃鍑哄綋鍓嶈皟鐢ㄦ爤淇℃伅
+ ex.printStackTrace();
+ //濡傛灉绯荤粺鎻愪緵浜嗛粯璁ょ殑寮傚父澶勭悊鍣紝鍒欎氦缁欑郴缁熷幓缁撴潫鎴戜滑鐨勭▼搴忥紝鍚﹀垯灏辩敱鎴戜滑鑷繁缁撴潫鑷繁
if (mDefaultHandler != null) {
mDefaultHandler.uncaughtException(thread, ex);
} else {
- System.exit(0);
- }*/
+ android.os.Process.killProcess(android.os.Process.myPid());
+ }
+
+ if (!handleException(ex) && mDefaultHandler != null) {
+ // 濡傛灉鐢ㄦ埛娌℃湁澶勭悊鍒欒绯荤粺榛樿鐨勫紓甯稿鐞嗗櫒鏉ュ鐞�
+ mDefaultHandler.uncaughtException(thread, ex);
+ }
+ long current = System.currentTimeMillis();
+ String time2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(current));
+ try {
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ PrintStream print = new PrintStream(out);
+ //瀵煎嚭鍙戠敓寮傚父鐨勬椂闂�
+ print.println(time2);
+ //瀵煎嚭鎵嬫満淇℃伅
+ dumpPhoneInfo(print);
+ print.println();
+ ex.printStackTrace(print);
+ SpUtil.saveString(FILE_NAME+time2,new String(out.toByteArray()));
+
+ print.close();
+ } catch (Exception e) {
+ e.printStackTrace();
+ System.out.println("閿欒鏃ュ織2"+e.getMessage());
+ //LogUtils.e(TAG, "dump crash info failed");
+ }
+ }catch (Exception e){
+ e.printStackTrace();
}
}
@@ -200,6 +192,8 @@
} catch (NameNotFoundException e) {
e.printStackTrace();
System.out.println("閿欒鏃ュ織3"+e.getMessage());
+ }catch (Exception e){
+ e.printStackTrace();
}
}
@@ -244,7 +238,6 @@
Build.BRAND,
// android SDK鐗堟湰
Build.VERSION.RELEASE);
- //sp.setString(Constants.SP_CRASH_EXCEPTION, errorLog);
return null;
}
@@ -272,7 +265,8 @@
dumpPhoneInfo(print);
print.println();
ex.printStackTrace(print);
- //SpUtil.saveString(FILE_NAME+time,new String(out.toByteArray()));
+ SpUtil.saveString(FILE_NAME+time,new String(out.toByteArray()));
+
print.close();
} catch (Exception e) {
e.printStackTrace();
@@ -280,7 +274,7 @@
//LogUtils.e(TAG, "dump crash info failed");
}
//浠ュ綋鍓嶆椂闂村垱寤簂og鏂囦欢
- File file = new File(PATH , FILE_NAME + time + FILE_NAME_SUFFIX);
+ File file = new File(FileUtil.getFile(mContext)+PATH , FILE_NAME + time + FILE_NAME_SUFFIX);
try {
PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(file)));
//瀵煎嚭鍙戠敓寮傚父鐨勬椂闂�
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/MCUtils.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/MCUtils.java
new file mode 100644
index 0000000..67d78b4
--- /dev/null
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/MCUtils.java
@@ -0,0 +1,23 @@
+package com.doumee.keyCabinet.utils;
+
+import com.mc.enjoysdk.McSystemUi;
+import com.mc.enjoysdk.transform.McSystemUiFlag;
+
+public class MCUtils {
+ public static void hind(McSystemUi mcSystemUi){
+ mcSystemUi.temporarilySwitchStatusBar(false);
+ mcSystemUi.temporarilySwitchNavigation(false);
+ /*//闅愯棌鐘舵�佹爮淇℃伅
+ mcSystemUi.disableStatusBarItem(McSystemUiFlag.DISABLE_SYSTEM_INFO);
+ //绂佹鐘舵�佹爮寮瑰嚭
+ mcSystemUi.disableStatusBarItem(McSystemUiFlag.DISABLE_NOTIFICATION_ALERTS);
+ //绂佹鐘舵�佹爮涓嬫媺
+ mcSystemUi.disableStatusBarItem(McSystemUiFlag.DISABLE_EXPAND);*/
+ }
+
+ public static void show(McSystemUi mcSystemUi){
+ //mcSystemUi.disableStatusBarItem(McSystemUiFlag.DISABLE_NONE);
+ mcSystemUi.temporarilySwitchStatusBar(true);
+ mcSystemUi.temporarilySwitchNavigation(true);
+ }
+}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/i485/SportUtils.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/i485/SportUtils.java
index d68579e..11f64e6 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/i485/SportUtils.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/i485/SportUtils.java
@@ -5,34 +5,20 @@
import android.hardware.usb.UsbDevice;
import android.hardware.usb.UsbInterface;
import android.hardware.usb.UsbManager;
+import android.serialport.SerialPortFinder;
import java.util.ArrayList;
import java.util.List;
public class SportUtils {
public static List<String> getSerialPortPaths(Context context) {
- UsbManager usbManager = (UsbManager) context.getSystemService(Context.USB_SERVICE);
- List<UsbDevice> devices = new ArrayList<>(usbManager.getDeviceList().values());
+ // 鑾峰彇鎵�鏈変覆鍙h澶囪矾寰�
+ String[] devices = new SerialPortFinder().getAllDevicesPath();
List<String> serialPaths = new ArrayList<>();
-
- for (UsbDevice device : devices) {
- for (int i = 0; i < device.getInterfaceCount(); i++) {
- UsbInterface intf = device.getInterface(i);
- if (intf.getInterfaceClass() == UsbConstants.USB_CLASS_CDC_DATA) {
- serialPaths.add(device.getDeviceName());
- break;
- }
+ if(devices!=null){
+ for(String key:devices){
+ serialPaths.add(key);
}
- }
- if(serialPaths.size()==0){
- serialPaths.add("/dev/ttyS0");
- serialPaths.add("/dev/ttyS1");
- serialPaths.add("/dev/ttyS2");
- serialPaths.add("/dev/ttyS3");
- serialPaths.add("/dev/ttyS4");
- serialPaths.add("/dev/ttyS5");
- serialPaths.add("/dev/ttyS6");
- serialPaths.add("/dev/ttyS7");
}
return serialPaths;
}
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/update/FileUtil.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/update/FileUtil.java
index 596cbae..42bd3b6 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/update/FileUtil.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/utils/update/FileUtil.java
@@ -10,6 +10,9 @@
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
+import java.io.InputStream;
+import java.net.HttpURLConnection;
+import java.net.URL;
import java.sql.Timestamp;
import java.text.DecimalFormat;
@@ -236,4 +239,60 @@
}
return file;
}
+
+ public static interface DownLoadCallBack{
+ void sucess();
+ void err(String e);
+ }
+
+ public static void downLoadFile(String filePath,String url,DownLoadCallBack callBack){
+ try {
+ URL u = new URL(url);
+ HttpURLConnection conn = (HttpURLConnection) u.openConnection();
+ conn.setConnectTimeout(10000);
+ int responeCode = conn.getResponseCode();
+ InputStream is;
+ if (responeCode == 200) {
+ is = conn.getInputStream();
+ } else {
+ //杩炴帴澶辫触
+ if(callBack!=null){
+ callBack.err("涓嬭浇鍦板潃閿欒");
+ }
+ return;
+ }
+
+ int fileSize = conn.getContentLength();
+ if (fileSize < 1 || is == null) {
+ //鏂囦欢澶у皬涓嶅
+ if(callBack!=null){
+ callBack.err("鏂囦欢澶у皬涓嶅");
+ }
+ return;
+ } else {
+ //涓嬭浇
+ if (FileUtil.deleteFile(filePath)) {// 鍒犻櫎鍘熸潵鐨勫畨瑁呮枃浠跺啀涓嬭浇
+ FileOutputStream fos = new FileOutputStream(filePath);
+ byte[] bytes = new byte[1024];
+ int len = -1;
+ while ((len = is.read(bytes)) != -1) {
+ fos.write(bytes, 0, len);
+ fos.flush();
+ }
+ //涓嬭浇瀹屾垚
+ if(callBack!=null){
+ callBack.sucess();
+ }
+ is.close();
+ fos.close();
+ }
+ }
+ } catch (Exception e) {
+ //涓嬭浇鎶ラ敊
+ if(callBack!=null){
+ callBack.err(e.getMessage());
+ }
+ e.printStackTrace();
+ }
+ }
}
\ No newline at end of file
diff --git a/keyCabinet-android/app/src/main/res/layout/change_url_activity.xml b/keyCabinet-android/app/src/main/res/layout/change_url_activity.xml
index 10cb068..38f938b 100644
--- a/keyCabinet-android/app/src/main/res/layout/change_url_activity.xml
+++ b/keyCabinet-android/app/src/main/res/layout/change_url_activity.xml
@@ -60,131 +60,188 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"/>
- <TextView
- android:id="@+id/tv2"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="璁惧缂栧彿"
- android:textColor="#ff111111"
- android:textSize="27sp"
- android:textStyle="bold"
- app:layout_constraintTop_toBottomOf="@+id/viewBack"
- app:layout_constraintStart_toStartOf="parent"
- android:layout_marginTop="30dp"
- android:layout_marginLeft="30dp"/>
+ <androidx.core.widget.NestedScrollView
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ app:layout_constraintTop_toBottomOf="@+id/viewBack"
+ app:layout_constraintBottom_toTopOf="@+id/tv_bc"
+ android:fillViewport="true">
- <View
- android:id="@+id/v_1"
- android:layout_width="match_parent"
- android:layout_height="75dp"
- app:layout_constraintTop_toBottomOf="@+id/tv2"
- android:layout_marginTop="18dp"
- android:background="@drawable/shape_et_bg"
- android:layout_marginLeft="30dp"
- android:layout_marginRight="30dp"/>
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
- <EditText
- android:id="@+id/et_no"
- android:layout_width="0dp"
- android:layout_height="75dp"
- android:background="@null"
- android:text=""
- android:textColor="#111111"
- android:hint="璇疯緭鍏ヨ澶囩紪鍙�"
- android:textColorHint="#999999"
- android:textSize="24sp"
- android:inputType="text"
- app:layout_constraintTop_toTopOf="@+id/v_1"
- app:layout_constraintStart_toStartOf="@+id/v_1"
- app:layout_constraintEnd_toEndOf="@+id/v_1"
- android:layout_marginLeft="18dp"
- android:layout_marginRight="18dp"
- android:gravity="center_vertical"
- android:lines="1"/>
+ <TextView
+ android:id="@+id/tv2"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="璁惧缂栧彿"
+ android:textColor="#ff111111"
+ android:textSize="27sp"
+ android:textStyle="bold"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ android:layout_marginTop="30dp"
+ android:layout_marginLeft="30dp"/>
- <TextView
- android:id="@+id/tv3"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="鎺ュ彛鍦板潃"
- android:textColor="#ff111111"
- android:textSize="27sp"
- android:textStyle="bold"
- app:layout_constraintTop_toBottomOf="@+id/v_1"
- app:layout_constraintStart_toStartOf="parent"
- android:layout_marginTop="30dp"
- android:layout_marginLeft="30dp"/>
+ <View
+ android:id="@+id/v_1"
+ android:layout_width="match_parent"
+ android:layout_height="75dp"
+ app:layout_constraintTop_toBottomOf="@+id/tv2"
+ android:layout_marginTop="18dp"
+ android:background="@drawable/shape_et_bg"
+ android:layout_marginLeft="30dp"
+ android:layout_marginRight="30dp"/>
- <View
- android:id="@+id/v_2"
- android:layout_width="match_parent"
- android:layout_height="75dp"
- app:layout_constraintTop_toBottomOf="@+id/tv3"
- android:layout_marginTop="18dp"
- android:background="@drawable/shape_et_bg"
- android:layout_marginLeft="30dp"
- android:layout_marginRight="30dp"/>
+ <EditText
+ android:id="@+id/et_no"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:background="@null"
+ android:text=""
+ android:textColor="#111111"
+ android:hint="璇疯緭鍏ヨ澶囩紪鍙�"
+ android:textColorHint="#999999"
+ android:textSize="24sp"
+ android:inputType="text"
+ app:layout_constraintTop_toTopOf="@+id/v_1"
+ app:layout_constraintStart_toStartOf="@+id/v_1"
+ app:layout_constraintEnd_toEndOf="@+id/v_1"
+ android:layout_marginLeft="18dp"
+ android:layout_marginRight="18dp"
+ android:gravity="center_vertical"
+ android:lines="1"/>
- <EditText
- android:id="@+id/et_url"
- android:layout_width="0dp"
- android:layout_height="75dp"
- android:background="@null"
- android:text=""
- android:textColor="#111111"
- android:hint="璇疯緭鍏ユ帴鍙e湴鍧�"
- android:textColorHint="#999999"
- android:textSize="24sp"
- android:inputType="text"
- app:layout_constraintTop_toTopOf="@+id/v_2"
- app:layout_constraintStart_toStartOf="@+id/v_2"
- app:layout_constraintEnd_toEndOf="@+id/v_2"
- android:layout_marginLeft="18dp"
- android:layout_marginRight="18dp"
- android:gravity="center_vertical"
- android:lines="1"/>
+ <TextView
+ android:id="@+id/tv3"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="鎺ュ彛鍦板潃"
+ android:textColor="#ff111111"
+ android:textSize="27sp"
+ android:textStyle="bold"
+ app:layout_constraintTop_toBottomOf="@+id/v_1"
+ app:layout_constraintStart_toStartOf="parent"
+ android:layout_marginTop="30dp"
+ android:layout_marginLeft="30dp"/>
- <TextView
- android:id="@+id/tv4"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="鎺ュ彛璋冪敤闂撮殧(绉�)"
- android:textColor="#ff111111"
- android:textSize="27sp"
- android:textStyle="bold"
- app:layout_constraintTop_toBottomOf="@+id/v_2"
- app:layout_constraintStart_toStartOf="parent"
- android:layout_marginTop="30dp"
- android:layout_marginLeft="30dp"/>
+ <View
+ android:id="@+id/v_2"
+ android:layout_width="match_parent"
+ android:layout_height="75dp"
+ app:layout_constraintTop_toBottomOf="@+id/tv3"
+ android:layout_marginTop="18dp"
+ android:background="@drawable/shape_et_bg"
+ android:layout_marginLeft="30dp"
+ android:layout_marginRight="30dp"/>
- <View
- android:id="@+id/v_3"
- android:layout_width="match_parent"
- android:layout_height="75dp"
- app:layout_constraintTop_toBottomOf="@+id/tv4"
- android:layout_marginTop="18dp"
- android:background="@drawable/shape_et_bg"
- android:layout_marginLeft="30dp"
- android:layout_marginRight="30dp"/>
+ <EditText
+ android:id="@+id/et_url"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:background="@null"
+ android:text=""
+ android:textColor="#111111"
+ android:hint="璇疯緭鍏ユ帴鍙e湴鍧�"
+ android:textColorHint="#999999"
+ android:textSize="24sp"
+ android:inputType="text"
+ app:layout_constraintTop_toTopOf="@+id/v_2"
+ app:layout_constraintStart_toStartOf="@+id/v_2"
+ app:layout_constraintEnd_toEndOf="@+id/v_2"
+ android:layout_marginLeft="18dp"
+ android:layout_marginRight="18dp"
+ android:gravity="center_vertical"
+ android:lines="1"/>
- <EditText
- android:id="@+id/et_time"
- android:layout_width="0dp"
- android:layout_height="75dp"
- android:background="@null"
- android:text=""
- android:textColor="#111111"
- android:hint="璇疯緭鍏ユ帴鍙h皟鐢ㄩ棿闅�(绉�)"
- android:textColorHint="#999999"
- android:textSize="24sp"
- android:inputType="number"
- app:layout_constraintTop_toTopOf="@+id/v_3"
- app:layout_constraintStart_toStartOf="@+id/v_3"
- app:layout_constraintEnd_toEndOf="@+id/v_3"
- android:layout_marginLeft="18dp"
- android:layout_marginRight="18dp"
- android:gravity="center_vertical"
- android:lines="1"/>
+ <TextView
+ android:id="@+id/tv4"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="鎺ュ彛璋冪敤闂撮殧(绉�)"
+ android:textColor="#ff111111"
+ android:textSize="27sp"
+ android:textStyle="bold"
+ app:layout_constraintTop_toBottomOf="@+id/v_2"
+ app:layout_constraintStart_toStartOf="parent"
+ android:layout_marginTop="30dp"
+ android:layout_marginLeft="30dp"/>
+
+ <View
+ android:id="@+id/v_3"
+ android:layout_width="match_parent"
+ android:layout_height="75dp"
+ app:layout_constraintTop_toBottomOf="@+id/tv4"
+ android:layout_marginTop="18dp"
+ android:background="@drawable/shape_et_bg"
+ android:layout_marginLeft="30dp"
+ android:layout_marginRight="30dp"/>
+
+ <EditText
+ android:id="@+id/et_time"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:background="@null"
+ android:text=""
+ android:textColor="#111111"
+ android:hint="璇疯緭鍏ユ帴鍙h皟鐢ㄩ棿闅�(绉�)"
+ android:textColorHint="#999999"
+ android:textSize="24sp"
+ android:inputType="number"
+ app:layout_constraintTop_toTopOf="@+id/v_3"
+ app:layout_constraintStart_toStartOf="@+id/v_3"
+ app:layout_constraintEnd_toEndOf="@+id/v_3"
+ android:layout_marginLeft="18dp"
+ android:layout_marginRight="18dp"
+ android:gravity="center_vertical"
+ android:lines="1"/>
+
+ <TextView
+ android:id="@+id/tv5"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="閫夋嫨鎽勫儚澶�(0鎴�1)"
+ android:textColor="#ff111111"
+ android:textSize="27sp"
+ android:textStyle="bold"
+ app:layout_constraintTop_toBottomOf="@+id/v_3"
+ app:layout_constraintStart_toStartOf="parent"
+ android:layout_marginTop="30dp"
+ android:layout_marginLeft="30dp"/>
+
+ <View
+ android:id="@+id/v_4"
+ android:layout_width="match_parent"
+ android:layout_height="75dp"
+ app:layout_constraintTop_toBottomOf="@+id/tv5"
+ android:layout_marginTop="18dp"
+ android:background="@drawable/shape_et_bg"
+ android:layout_marginLeft="30dp"
+ android:layout_marginRight="30dp"/>
+
+ <EditText
+ android:id="@+id/et_xj"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:background="@null"
+ android:text=""
+ android:textColor="#111111"
+ android:hint="璇疯緭鍏ユ憚鍍忓ご缂栧彿(0鎴�1)"
+ android:textColorHint="#999999"
+ android:textSize="24sp"
+ android:inputType="number"
+ app:layout_constraintTop_toTopOf="@+id/v_4"
+ app:layout_constraintStart_toStartOf="@+id/v_4"
+ app:layout_constraintEnd_toEndOf="@+id/v_4"
+ android:layout_marginLeft="18dp"
+ android:layout_marginRight="18dp"
+ android:gravity="center_vertical"
+ android:lines="1"/>
+
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ </androidx.core.widget.NestedScrollView>
<TextView
android:id="@+id/tv_bc"
diff --git a/keyCabinet-android/app/src/main/res/layout/face_activity.xml b/keyCabinet-android/app/src/main/res/layout/face_activity.xml
index bd91c0e..a3c6e6d 100644
--- a/keyCabinet-android/app/src/main/res/layout/face_activity.xml
+++ b/keyCabinet-android/app/src/main/res/layout/face_activity.xml
@@ -220,13 +220,57 @@
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
- android:layout_width="match_parent"
+ android:id="@+id/cl_zw_gl"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:layout_marginLeft="30dp"
+ app:layout_constraintBottom_toBottomOf="parent"
+ android:layout_marginBottom="30dp"
+ android:background="@drawable/shape_r30_face_bg"
+ app:layout_constraintLeft_toLeftOf="parent"
+ app:layout_constraintRight_toLeftOf="@+id/cl_sk_gl"
+ app:commandType="@{9}"
+ app:onClickCommand="@{model.myTypeCommand}"
+ >
+
+ <LinearLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ >
+
+ <ImageView
+ android:layout_width="28dp"
+ android:layout_height="28dp"
+ android:src="@mipmap/ic_zhiwen"
+ android:layout_gravity="center_vertical"/>
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="鎸囩汗楠岃瘉"
+ android:textColor="#ff279baa"
+ android:textSize="24sp"
+ android:textStyle="bold"
+ android:layout_marginLeft="12dp"/>
+
+ </LinearLayout>
+
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:id="@+id/cl_sk_gl"
+ android:layout_width="0dp"
android:layout_height="75dp"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="30dp"
android:background="@drawable/shape_r30_face_bg"
+ app:layout_constraintLeft_toRightOf="@+id/cl_zw_gl"
+ app:layout_constraintRight_toRightOf="parent"
app:commandType="@{1}"
app:onClickCommand="@{model.myTypeCommand}"
>
@@ -252,14 +296,15 @@
android:textColor="#ff279baa"
android:textSize="24sp"
android:textStyle="bold"
- android:layout_marginLeft="7dp"/>
+ android:layout_marginLeft="12dp"/>
</LinearLayout>
+
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
-
+ <!--浜鸿劯楠岃瘉-->
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_fail"
android:layout_width="wrap_content"
@@ -308,6 +353,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
+ <!-- 鍙告満閫夐獙璇佹柟寮� -->
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_sj_xuan"
android:layout_width="match_parent"
@@ -424,35 +470,86 @@
android:layout_marginBottom="30dp"
android:visibility="visible">
- <LinearLayout
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:id="@+id/cl_zw_sj"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ app:layout_constraintBottom_toBottomOf="parent"
+ android:background="@drawable/shape_r30_face_bg"
+ app:layout_constraintLeft_toLeftOf="parent"
+ app:layout_constraintRight_toLeftOf="@+id/ll_01"
+ android:layout_marginRight="20dp"
+ app:commandType="@{10}"
+ app:onClickCommand="@{model.myTypeCommand}"
+ >
+
+ <LinearLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ >
+
+ <ImageView
+ android:layout_width="28dp"
+ android:layout_height="28dp"
+ android:src="@mipmap/ic_zhiwen"
+ android:layout_gravity="center_vertical"/>
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="鎸囩汗"
+ android:textColor="#ff279baa"
+ android:textSize="24sp"
+ android:textStyle="bold"
+ android:layout_marginLeft="12dp"/>
+
+ </LinearLayout>
+
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/ll_01"
- android:layout_width="wrap_content"
+ android:layout_width="0dp"
android:layout_height="match_parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintLeft_toRightOf="@+id/cl_zw_sj"
+ app:layout_constraintRight_toLeftOf="@+id/ll_02"
android:background="@drawable/shape_r30_face_bg"
android:paddingLeft="30dp"
android:paddingRight="30dp"
app:commandType="@{2}"
app:onClickCommand="@{model.myTypeCommand}">
- <ImageView
- android:layout_width="28dp"
- android:layout_height="28dp"
- android:src="@mipmap/ic_shuaka"
- android:layout_gravity="center_vertical"/>
- <TextView
+ <LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="鍒峰崱楠岃瘉"
- android:textColor="#ff279baa"
- android:textSize="24sp"
- android:layout_marginLeft="7dp"
- android:textStyle="bold"
- android:layout_gravity="center_vertical"/>
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ >
- </LinearLayout>
+ <ImageView
+ android:layout_width="28dp"
+ android:layout_height="28dp"
+ android:src="@mipmap/ic_shuaka"
+ android:layout_gravity="center_vertical"/>
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="鍒峰崱"
+ android:textColor="#ff279baa"
+ android:textSize="24sp"
+ android:textStyle="bold"
+ android:layout_marginLeft="12dp"/>
+
+ </LinearLayout>
+
+ </androidx.constraintlayout.widget.ConstraintLayout>
<LinearLayout
android:id="@+id/ll_02"
@@ -484,7 +581,125 @@
</androidx.constraintlayout.widget.ConstraintLayout>
+ <!--鎸囩汗楠岃瘉-->
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:id="@+id/cl_zw"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ app:layout_constraintTop_toTopOf="@+id/camera_textureview"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ android:background="@color/white"
+ android:visibility="gone">
+ <View
+ android:id="@+id/v_c_zw"
+ android:layout_width="340dp"
+ android:layout_height="340dp"
+ android:background="@mipmap/ic_zhiwenyanzheng"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ />
+
+ <TextView
+ android:id="@+id/tv_zw_tip"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:text="璇峰皢鎵嬫寚鏀剧疆鍦ㄦ寚绾归噰闆嗗櫒涓�"
+ android:textColor="#ff666666"
+ android:textSize="24sp"
+ android:gravity="center"
+ app:layout_constraintTop_toBottomOf="@+id/v_c_zw"
+ android:layout_marginTop="42dp"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"/>
+
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:id="@+id/cl_sk_zw"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:layout_marginLeft="30dp"
+ app:layout_constraintBottom_toBottomOf="parent"
+ android:layout_marginBottom="30dp"
+ android:background="@drawable/shape_r30_face_bg"
+ app:layout_constraintLeft_toLeftOf="parent"
+ app:layout_constraintRight_toLeftOf="@+id/cl_rl_zw"
+ app:commandType="@{1}"
+ app:onClickCommand="@{model.myTypeCommand}"
+ >
+
+ <LinearLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ >
+
+ <ImageView
+ android:layout_width="28dp"
+ android:layout_height="28dp"
+ android:src="@mipmap/ic_shuaka"
+ android:layout_gravity="center_vertical"/>
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="鍒峰崱楠岃瘉"
+ android:textColor="#ff279baa"
+ android:textSize="24sp"
+ android:textStyle="bold"
+ android:layout_marginLeft="12dp"/>
+
+ </LinearLayout>
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:id="@+id/cl_rl_zw"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:layout_marginLeft="30dp"
+ android:layout_marginRight="30dp"
+ app:layout_constraintBottom_toBottomOf="parent"
+ android:layout_marginBottom="30dp"
+ app:layout_constraintLeft_toRightOf="@+id/cl_sk_zw"
+ app:layout_constraintRight_toRightOf="parent"
+ android:background="@drawable/shape_r30_face_bg"
+ app:commandType="@{4}"
+ app:onClickCommand="@{model.myTypeCommand}"
+ >
+
+ <LinearLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ >
+
+ <ImageView
+ android:layout_width="28dp"
+ android:layout_height="28dp"
+ android:src="@mipmap/ic_renlian"
+ android:layout_gravity="center_vertical"/>
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="浜鸿劯楠岃瘉"
+ android:textColor="#ff279baa"
+ android:textSize="24sp"
+ android:textStyle="bold"
+ android:layout_marginLeft="12dp"/>
+
+ </LinearLayout>
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ <!--鍒峰崱楠岃瘉-->
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_card"
android:layout_width="match_parent"
@@ -520,12 +735,55 @@
app:layout_constraintEnd_toEndOf="parent"/>
<androidx.constraintlayout.widget.ConstraintLayout
- android:layout_width="match_parent"
+ android:id="@+id/cl_zw_sk"
+ android:layout_width="0dp"
+ android:layout_height="75dp"
+ android:layout_marginLeft="30dp"
+ app:layout_constraintBottom_toBottomOf="parent"
+ android:layout_marginBottom="30dp"
+ android:background="@drawable/shape_r30_face_bg"
+ app:layout_constraintLeft_toLeftOf="parent"
+ app:layout_constraintRight_toLeftOf="@+id/cl_rl_sk"
+ app:commandType="@{11}"
+ app:onClickCommand="@{model.myTypeCommand}"
+ >
+
+ <LinearLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ >
+
+ <ImageView
+ android:layout_width="28dp"
+ android:layout_height="28dp"
+ android:src="@mipmap/ic_zhiwen"
+ android:layout_gravity="center_vertical"/>
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="鎸囩汗楠岃瘉"
+ android:textColor="#ff279baa"
+ android:textSize="24sp"
+ android:textStyle="bold"
+ android:layout_marginLeft="12dp"/>
+
+ </LinearLayout>
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:id="@+id/cl_rl_sk"
+ android:layout_width="0dp"
android:layout_height="75dp"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="30dp"
+ app:layout_constraintLeft_toRightOf="@+id/cl_zw_sk"
+ app:layout_constraintRight_toRightOf="parent"
android:background="@drawable/shape_r30_face_bg"
app:commandType="@{4}"
app:onClickCommand="@{model.myTypeCommand}"
@@ -552,13 +810,14 @@
android:textColor="#ff279baa"
android:textSize="24sp"
android:textStyle="bold"
- android:layout_marginLeft="7dp"/>
+ android:layout_marginLeft="12dp"/>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
+ <!--閰掔簿妫�娴�-->
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_jiu"
android:layout_width="match_parent"
diff --git a/keyCabinet-android/app/src/main/res/layout/key_cabinet_activity.xml b/keyCabinet-android/app/src/main/res/layout/key_cabinet_activity.xml
index a32a5b2..fc9932d 100644
--- a/keyCabinet-android/app/src/main/res/layout/key_cabinet_activity.xml
+++ b/keyCabinet-android/app/src/main/res/layout/key_cabinet_activity.xml
@@ -61,6 +61,19 @@
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginRight="30dp"/>
+ <TextView
+ android:id="@+id/tv_title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="閫夋嫨鏌滈棬"
+ android:textColor="#ff111111"
+ android:textSize="33sp"
+ android:textStyle="bold"
+ app:layout_constraintTop_toTopOf="@+id/viewBack"
+ app:layout_constraintBottom_toBottomOf="@+id/viewBack"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"/>
+
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_km"
android:layout_width="match_parent"
diff --git a/keyCabinet-android/app/src/main/res/layout/main_activity.xml b/keyCabinet-android/app/src/main/res/layout/main_activity.xml
index 4b4fc50..7268c54 100644
--- a/keyCabinet-android/app/src/main/res/layout/main_activity.xml
+++ b/keyCabinet-android/app/src/main/res/layout/main_activity.xml
@@ -14,13 +14,14 @@
android:layout_height="match_parent"
tools:context=".ui.main.MainActivity"
>
+
<TextureView
android:id="@+id/checkNirTexture"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alpha="0"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintStart_toStartOf="parent"/>
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent" />
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/img1"
diff --git a/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwen.png b/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwen.png
new file mode 100644
index 0000000..29bb560
--- /dev/null
+++ b/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwen.png
Binary files differ
diff --git a/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenluru.png b/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenluru.png
new file mode 100644
index 0000000..abbb62b
--- /dev/null
+++ b/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenluru.png
Binary files differ
diff --git a/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenyanzheng.png b/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenyanzheng.png
new file mode 100644
index 0000000..b2d2c8e
--- /dev/null
+++ b/keyCabinet-android/app/src/main/res/mipmap-xxhdpi/ic_zhiwenyanzheng.png
Binary files differ
diff --git a/keyCabinet-android/app/src/main/res/values/strings.xml b/keyCabinet-android/app/src/main/res/values/strings.xml
index 65190e7..9a89d5f 100644
--- a/keyCabinet-android/app/src/main/res/values/strings.xml
+++ b/keyCabinet-android/app/src/main/res/values/strings.xml
@@ -73,6 +73,13 @@
<string name="on_number">璇疯緭鍏�16浣嶅簭鍒楀彿</string>
<string name="accredit_use">搴旂敤婵�娲�</string>
<string name="filter_vcode">0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ</string>
+ <string name="accredit_off">绂荤嚎婵�娲�</string>
+ <string name="off_technological_process">绂荤嚎婵�娲绘祦绋�: </string>
+ <string name="off_technological_process_three">鍦ㄧ櫨搴︽櫤鑳戒簯骞冲彴杈撳叆璁惧纭欢鎸囩汗骞惰幏鍙栫绾挎縺娲绘枃浠讹紙License.zip锛�</string>
+ <string name="off_technological_process_four">灏嗙绾挎縺娲绘枃浠舵嫹璐濊嚦鍐呯疆SD鍗℃牴鐩綍涓�</string>
+ <string name="off_technological_process_five">鍦⊿DK鐣岄潰涓Е鍙戠绾挎縺娲�</string>
+ <string name="off_local_hardware">鏈満纭欢鎸囩汗</string>
+ <string name="off_problem">婵�娲婚亣鍒伴棶棰�?</string>
<string name="home_face">浜鸿劯瀵煎叆</string>
<string name="home_faceLibrary">浜鸿劯搴撶鐞�</string>
<string name="home_camra">鍒囨崲鎽勫儚澶�</string>
diff --git a/keyCabinet-android/app/src/test/java/com/doumee/ticketmachine/ExampleUnitTest.java b/keyCabinet-android/app/src/test/java/com/doumee/ticketmachine/ExampleUnitTest.java
index f2ea06b..8d799f8 100644
--- a/keyCabinet-android/app/src/test/java/com/doumee/ticketmachine/ExampleUnitTest.java
+++ b/keyCabinet-android/app/src/test/java/com/doumee/ticketmachine/ExampleUnitTest.java
@@ -15,14 +15,9 @@
public class ExampleUnitTest {
@Test
public void addition_isCorrect() {
- CircularQueue queue = new CircularQueue();
- for(int i=0;i<3;i++){
- queue.enqueue(i+"");
- }
- System.out.println(queue.dequeue());
- System.out.println(queue.dequeue());
- System.out.println(queue.dequeue());
- System.out.println(queue.dequeue());
+ String code = "EF 01 FF FF FF FF 01 00 03 1D 00";
+ String x = SportUtils.getBCC(code);
+ System.out.println(x);
}
diff --git a/keyCabinet-android/datalibrary/build.gradle b/keyCabinet-android/datalibrary/build.gradle
index 9600979..1261ee8 100644
--- a/keyCabinet-android/datalibrary/build.gradle
+++ b/keyCabinet-android/datalibrary/build.gradle
@@ -3,12 +3,12 @@
}
android {
- compileSdkVersion 29
+ compileSdkVersion 28
buildToolsVersion "29.0.3"
defaultConfig {
minSdkVersion 22
- targetSdkVersion 29
+ targetSdkVersion 28
versionCode 5
versionName "5.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
diff --git a/keyCabinet-android/facelibrary/build.gradle b/keyCabinet-android/facelibrary/build.gradle
index 82e58bb..331755b 100644
--- a/keyCabinet-android/facelibrary/build.gradle
+++ b/keyCabinet-android/facelibrary/build.gradle
@@ -1,12 +1,12 @@
apply plugin: 'com.android.library'
android {
- compileSdkVersion 29
+ compileSdkVersion 28
// buildToolsVersion '26.0.2'
publishNonDefault true
defaultConfig {
minSdkVersion 22
- targetSdkVersion 29
+ targetSdkVersion 28
versionCode 5
versionName "5.0"
diff --git a/keyCabinet-android/lib_opensource/build.gradle b/keyCabinet-android/lib_opensource/build.gradle
index a2b1529..1a51f33 100644
--- a/keyCabinet-android/lib_opensource/build.gradle
+++ b/keyCabinet-android/lib_opensource/build.gradle
@@ -53,12 +53,12 @@
annotationProcessor deps.lifecycle.compiler
//work
- api(deps.work.work_runtime){
+ /*api(deps.work.work_runtime){
exclude group:"com.google.guava",module:"listenablefuture"
}
api (deps.work.work_rxjava2){
exclude group:"com.google.guava",module:"listenablefuture"
- }
+ }*/
//瀵艰埅 nav
api deps.nav.navigation_runtime
diff --git a/keyCabinet-android/settinglibrary/build.gradle b/keyCabinet-android/settinglibrary/build.gradle
index 9ff6c1c..db76a13 100644
--- a/keyCabinet-android/settinglibrary/build.gradle
+++ b/keyCabinet-android/settinglibrary/build.gradle
@@ -1,12 +1,12 @@
apply plugin: 'com.android.library'
android {
- compileSdkVersion 29
+ compileSdkVersion 28
buildToolsVersion "29.0.3"
defaultConfig {
minSdkVersion 22
- targetSdkVersion 29
+ targetSdkVersion 28
versionCode 1
versionName "1.0"
diff --git a/keyCabinet-android/versions.gradle b/keyCabinet-android/versions.gradle
index b47c6e1..256b6f7 100644
--- a/keyCabinet-android/versions.gradle
+++ b/keyCabinet-android/versions.gradle
@@ -1,8 +1,8 @@
def build_versions = [:]
build_versions.min_sdk = 22
-build_versions.target_sdk = 30
-build_versions.compile_sdk = 30
+build_versions.target_sdk = 28
+build_versions.compile_sdk = 28
build_versions.build_tools = "30.0.2"
ext.build_versions = build_versions
@@ -64,11 +64,6 @@
jetpack.datastore_preferences_rxjava2 = "androidx.datastore:datastore-preferences-rxjava2:1.0.0"
deps.jetpack = jetpack
-//workManager
-def work = [:]
-work.work_runtime = "androidx.work:work-runtime:2.6.0"
-work.work_rxjava2 = "androidx.work:work-rxjava2:2.6.0"
-deps.work = work
def nav=[:]
nav.navigation_runtime = "androidx.navigation:navigation-runtime:2.3.5"
--
Gitblit v1.9.3