From b634530fd3b230139fd3527c1a9fa8293c4e2acf Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期一, 20 十月 2025 08:53:38 +0800
Subject: [PATCH] 最新版本541200007
---
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainActivity.java | 191 +++++++++++++++++++++++++++++++++--------------
1 files changed, 133 insertions(+), 58 deletions(-)
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 e1e7a17..54fcdac 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
@@ -11,7 +11,10 @@
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
+import android.text.SpannableString;
+import android.text.Spanned;
import android.text.TextUtils;
+import android.text.style.TextAppearanceSpan;
import android.util.DisplayMetrics;
import android.view.Gravity;
import android.view.LayoutInflater;
@@ -19,6 +22,7 @@
import android.view.ViewGroup;
import android.widget.PopupWindow;
import android.widget.RelativeLayout;
+import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
@@ -38,14 +42,21 @@
import com.doumee.keyCabinet.BuildConfig;
import com.doumee.keyCabinet.base.BannerPicResponsePara;
import com.doumee.keyCabinet.bean.FaceUserBean;
+import com.doumee.keyCabinet.bean.LoginBean;
import com.doumee.keyCabinet.databinding.MainActivityBinding;
import com.doumee.keyCabinet.event.GetFacesEvent;
+import com.doumee.keyCabinet.event.HeartEvent;
+import com.doumee.keyCabinet.event.KeyDoorEvent;
+import com.doumee.keyCabinet.event.KeyResultEvent;
+import com.doumee.keyCabinet.event.KeyStatusListener;
+import com.doumee.keyCabinet.event.OpenGridEvent;
import com.doumee.keyCabinet.event.ReLoginEvent;
import com.doumee.keyCabinet.event.TimeClockEvent;
import com.doumee.keyCabinet.ui.face.ActivationActivity;
import com.doumee.keyCabinet.ui.face.FaceActivity;
import com.doumee.keyCabinet.ui.guide.GuideActivity;
import com.doumee.keyCabinet.ui.keyCabinet.ChangeUrlActivity;
+import com.doumee.keyCabinet.ui.keyCabinet.KeyCabinetActivity;
import com.doumee.keyCabinet.ui.keyCabinet.ManageLoginActivity;
import com.doumee.keyCabinet.ui.service.FaceUpdateService;
import com.doumee.keyCabinet.ui.service.HeartbeatService;
@@ -84,12 +95,14 @@
import com.example.datalibrary.view.PreviewTexture;
import com.yanzhenjie.permission.runtime.Permission;
import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Logger;
import org.greenrobot.eventbus.Subscribe;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
+import java.util.Random;
import java.util.Timer;
import java.util.TimerTask;
import java.util.concurrent.Executors;
@@ -130,15 +143,15 @@
if(!isFinishing()){
switch (msg.what) {
case 0:
- initM();
+ //initM();
TimeUtils.updateTimeUi(getVM().dayObs, getVM().timeObs);
handler.sendEmptyMessageDelayed(0, 1000);
EventBus.getDefault().post(new TimeClockEvent());
- if (isDBLoad && isNeedUpdateFace && !isUpdatingFace) {
+ /*if (isDBLoad && isNeedUpdateFace && !isUpdatingFace) {
isNeedUpdateFace = false;
getVM().getFaceLD();
}
- getVM().upBraceletLog();
+ getVM().upBraceletLog();*/
case 2:
getVM().resetReq();
break;
@@ -155,19 +168,20 @@
@Override
public void initView(@Nullable Bundle savedInstanceState) {
- //isToGuild = true;
+ isAddCountTimer = false;
SpUtil.initWH(this);
normalConfig();
getDB().setModel(getVM());
//initRGBCheck();
+ handler.sendEmptyMessageDelayed(0, 1000);
//鍚姩蹇冭烦
Intent intent = new Intent(MainActivity.this, HeartbeatService.class);
startService(intent);
//鍚姩鏇存柊浜鸿劯
Intent intent2 = new Intent(MainActivity.this, FaceUpdateService.class);
startService(intent2);
- //getPermission();
- //getDB().tvName.setText(String.format(getString(R.string.main_name),MApplication.getConfigBean().getName(), LMobileInfo.getDeviceUniqueId()));
+ getPermission();
+ Timber.tag("====>").d(LMobileInfo.getDeviceUniqueId());
}
private void initM(){
@@ -225,6 +239,44 @@
}
}
});
+ getDB().tv1.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ //绠$悊鍛樼櫥褰�
+ if(lastDownTime1!=null){
+ if(System.currentTimeMillis()-lastDownTime1>1000){
+ downCount1=0;
+ }
+ }
+ lastDownTime1 = System.currentTimeMillis();
+ downCount1++;
+ System.out.println();
+ Timber.tag("==>").d(""+downCount1);
+ if(downCount1>4) {
+ downCount1=0;
+ lastDownTime1=null;
+ startActivity(ManageLoginActivity.class);
+ }
+ }
+ });
+ getDB().tvId.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ //鏇存敼url
+ if(lastDownTime2!=null){
+ if(System.currentTimeMillis()-lastDownTime2>1000){
+ downCount2=0;
+ }
+ }
+ lastDownTime2 = System.currentTimeMillis();
+ downCount2++;
+ if(downCount2>4) {
+ downCount2=0;
+ lastDownTime2=null;
+ startActivity(ChangeUrlActivity.class);
+ }
+ }
+ });
upErrInfo();
getVM().devHeart();
BraceletLogUtils.saveLog("app鎵撳紑");
@@ -273,45 +325,26 @@
@Override
protected void doRegister(int type, ActionEventData data) {
switch (type){
- case 1:
- {
- //绠$悊鍛樼櫥褰�
- if(lastDownTime1!=null){
- if(System.currentTimeMillis()-lastDownTime1>1000){
- downCount1=0;
- }
- }
- lastDownTime1 = System.currentTimeMillis();
- downCount1++;
- if(downCount1>4) {
- downCount1=0;
- lastDownTime1=null;
- startActivity(ManageLoginActivity.class);
- }
- }
- break;
case 2:
case 3:
- Bundle b = new Bundle();
- b.putString("flag",type==2?"0":"1");
- startActivity(FaceActivity.class,b);
+ /*tipDownCount = 10;
+ isShowTip = true;
+ getDB().tvDjs.setText(tipDownCount+"s");
+ getDB().tvTip21.setText(getTipText("AC101"), TextView.BufferType.SPANNABLE);
+ getDB().clTip.setVisibility(View.VISIBLE);*/
+ //鏍¢獙鏄惁鐧诲綍
+ if(MApplication.getConfigBean().getId()==null){
+ Toast.makeText(mContext, "璁惧鏈坊鍔狅紝鏃犳硶鎿嶄綔", Toast.LENGTH_SHORT).show();
+ getVM().devLogin();
+ return;
+ }
+ MApplication.getLoginBean().setFlag(type==2?0:1);
+ startActivity(FaceActivity.class);
+ //startActivity(KeyCabinetActivity.class,b);
break;
case 4:
- {
- //鏇存敼url
- if(lastDownTime2!=null){
- if(System.currentTimeMillis()-lastDownTime2>1000){
- downCount2=0;
- }
- }
- lastDownTime2 = System.currentTimeMillis();
- downCount2++;
- if(downCount2>4) {
- downCount2=0;
- lastDownTime2=null;
- startActivity(ChangeUrlActivity.class);
- }
- }
+ isShowTip = false;
+ getDB().clTip.setVisibility(View.GONE);
break;
default:
break;
@@ -322,7 +355,7 @@
protected void onResume() {
super.onResume();
showTime = System.currentTimeMillis();
- MApplication.saveMemberBean(new MemberBean());
+ MApplication.setLoginBean(new LoginBean());
if(!isFaceOk) {
//initLicense();
}
@@ -606,14 +639,6 @@
//缁撴潫
isUpdatingFace = false;
//System.out.println("==UpdatingFace==>鏇存柊缁撴潫锛�");
- FaceUserBean bean = selectBeans.get(selectBeans.size()-1);
- if(!TextUtils.isEmpty(bean.getEditTime())){
- Date date = StringUtil.StrToDate(bean.getEditTime());
- Calendar cal = Calendar.getInstance();
- cal.setTime(date);
- cal.add(Calendar.SECOND,1);
- SpUtil.saveString("LastTime",StringUtil.DateToStr(cal.getTime()));
- }
// 娓呴櫎鍐呭瓨缂撳瓨
Glide.get(MainActivity.this).clearMemory();
}
@@ -642,7 +667,7 @@
private int repeatCount = 0;
private void updateFace(FaceUserBean bean){
Timber.d("==UpdatingFace==>瀹屾垚鏁伴噺 "+finishCount);
- if (TextUtils.isEmpty(bean.getFaceUrl())||bean.getFaceUrl().endsWith("null")) {
+ if (TextUtils.isEmpty(bean.getFaceImg())||bean.getFaceImg().endsWith("null")) {
finishCount++;
faceHandler.sendEmptyMessage(0);
return;
@@ -651,7 +676,7 @@
//System.out.println("==UpdatingFace==>寮�濮嬶細" + bean.getName());
Glide.with(this)
.asBitmap()
- .load(bean.getFaceUrl())
+ .load(bean.getFaceImg())
.addListener(new RequestListener<Bitmap>() {
@Override
public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Bitmap> target, boolean isFirstResource) {
@@ -695,10 +720,10 @@
if (ret == 128) {
Timber.d("==UpdatingFace==>鍥剧墖鐗瑰緛鎶藉彇鎴愬姛: %s", JSON.toJSONString(bean));
User user = new User();
- user.setUserId(bean.getId());
- user.setGroupId(bean.getType());
- user.setUserName(bean.getName());
- user.setImageName(bean.getFaceUrl());
+ user.setUserId(bean.getMemberId());
+ user.setGroupId(bean.getGroupId());
+ user.setUserName(bean.getMemberName());
+ user.setImageName(bean.getFaceImg());
user.setUserInfo(GsonTools.changeGsonToJson(bean));
user.setFeature(secondFeature);
insertOrUpdate(user);
@@ -952,12 +977,57 @@
}
}
+ private int tipDownCount = 10;
+ private boolean isShowTip;
@Subscribe
public void TimeClockEvent(TimeClockEvent e){
-
+ if(isShowTip){
+ if(tipDownCount==0){
+ isShowTip = false;
+ getDB().clTip.setVisibility(View.GONE);
+ }else {
+ tipDownCount--;
+ getDB().tvDjs.setText(tipDownCount+"s");
+ }
+ }
}
+ /**
+ * 鐩戝惉寮�闂�
+ * @param e
+ */
+ @Subscribe
+ public void OpenGridEvent(OpenGridEvent e){
+ if(!isFinishing()){
+ EventBus.getDefault().post(new KeyDoorEvent(MApplication.nextBoolean()?"0":"1"));
+ }
+ }
+ /**
+ * 鐩戝惉閽ュ寵
+ * @param e
+ */
+ @Subscribe
+ public void KeyStatusListener(KeyStatusListener e){
+ if(!isFinishing()){
+ if(e.getStatus()==0){
+ //寮�濮�
+ Random random = new Random();
+ EventBus.getDefault().post(new KeyResultEvent(random.nextBoolean()?"0":"1"));
+ }else {
+ //缁撴潫
+ }
+ }
+ }
+
+ private SpannableString getTipText(String name){
+ String text = name+"鏌滈棬鏈叧闂�";
+ SpannableString styledText = new SpannableString(text);
+ styledText.setSpan(new TextAppearanceSpan(this, R.style.style_tip1),
+ 0, name.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ styledText.setSpan(new TextAppearanceSpan(this,R.style.style_tip2), name.length()+1, text.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ return styledText;
+ }
@Override
protected void onRestart() {
@@ -965,6 +1035,11 @@
getVM().devHeart();
}
-
+ @Subscribe
+ public void HeartEvent(HeartEvent e){
+ if(!isFinishing()){
+ getVM().devHeart();
+ }
+ }
}
--
Gitblit v1.9.3