From 4e4017b2e55c70c32bd725fc9c9bda335ddc59f6 Mon Sep 17 00:00:00 2001
From: weimingfei <fei_gaming@sina.com>
Date: 星期三, 10 十二月 2025 17:09:47 +0800
Subject: [PATCH] 钥匙柜酒精检测控制
---
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/face/OfflineActivationActivity.java | 69 ++++++++++++++++++++++++++++------
1 files changed, 56 insertions(+), 13 deletions(-)
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
index 6245db2..4f52855 100644
--- 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
@@ -2,12 +2,18 @@
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;
@@ -68,6 +74,8 @@
getDB().accreditOffBtn.setOnClickListener(this);
getDB().btnDown.setOnClickListener(this);
+ setupDownloadManager();
+ setupDownloadReceiver();
}
@Subscribe
@@ -127,19 +135,7 @@
}
if(!TextUtils.isEmpty(MApplication.getConfigBean().getActivateFileUrl())){
isDownLoad = true;
- FileUtil.downLoadFile(filePath, MApplication.getConfigBean().getActivateFileUrl(), new FileUtil.DownLoadCallBack() {
- @Override
- public void sucess() {
- ToastView.show(MApplication.mContext,"涓嬭浇鎴愬姛");
- isDownLoad = false;
- }
-
- @Override
- public void err(String e) {
- ToastView.show(MApplication.mContext,e);
- isDownLoad = false;
- }
- });
+ startDownload(MApplication.getConfigBean().getActivateFileUrl());
}
break;
// 绂荤嚎婵�娲�
@@ -186,5 +182,52 @@
@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
--
Gitblit v1.9.3