From cdc07256eeb088bd7aa1bcad53b89350df0a7694 Mon Sep 17 00:00:00 2001 From: jieyao Date: Wed, 11 Dec 2024 14:15:57 +0800 Subject: [PATCH] =?UTF-8?q?2.2=20=E5=AE=89=E5=8D=9314=E4=BB=A5=E4=B8=8A?= =?UTF-8?q?=EF=BC=8C=E6=97=A0=E6=B3=95=E8=8E=B7=E5=8F=96mac=E5=9C=B0?= =?UTF-8?q?=E5=9D=80=EF=BC=8C=E4=BF=AE=E6=94=B9=E6=88=90=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E5=94=AF=E4=B8=80id=E4=BD=9C=E4=B8=BAmac=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 3 ++- .../chaoran/business/utils/LocalAddressUtil.java | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index 318468e..0a2766c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,7 +11,7 @@ android { minSdk 28 targetSdk 28 versionCode 1 - versionName "2.1" + versionName "2.2" // 1.0 IDATA广播模式处理 // 1.1 霍尼韦尔的监听修改(扫描网站二维码跳出程序,监听失效,调整)、斑马PDA广播模式设置 @@ -34,6 +34,7 @@ android { // 1.18 瑞兴平板,读取扫描结果,使用同步加锁模式 // 1.19 index页面接入初始化数据 // 2.1 注册PDA的信息存储到文件内部,采取mac+固定加密串的MD5加密校验 + // 2.2 安卓14以上,无法获取mac地址,修改成获取唯一id作为mac地址 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" ndk { abiFilters 'armeabi-v7a' diff --git a/app/src/main/java/chaoran/business/utils/LocalAddressUtil.java b/app/src/main/java/chaoran/business/utils/LocalAddressUtil.java index 2e19bfb..853f35b 100644 --- a/app/src/main/java/chaoran/business/utils/LocalAddressUtil.java +++ b/app/src/main/java/chaoran/business/utils/LocalAddressUtil.java @@ -1,11 +1,16 @@ package chaoran.business.utils; +import static androidx.core.content.ContextCompat.getSystemService; + import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; import android.content.pm.ActivityInfo; +import android.net.wifi.WifiInfo; +import android.net.wifi.WifiManager; import android.os.Build; +import android.provider.Settings; import android.util.Log; import android.view.Surface; import android.view.View; @@ -62,6 +67,14 @@ public class LocalAddressUtil { @SuppressLint("JavascriptInterface") @JavascriptInterface public String getMacAddress(){//可以兼容安卓7以下 + if (Build.VERSION.SDK_INT >= 34) { // Android 14 is code-named Tiramisu + try { + return Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID); + }catch (Exception e) { + e.printStackTrace(); + return "02:00:00:00:00:02"; + } + } String macAddress = null; StringBuffer buf = new StringBuffer(); NetworkInterface networkInterface = null;