Browse Source

1.增加sd卡插入判断条件

20241218TB223FC(测试jar包)
wangwanlei 10 months ago
parent
commit
04be01245b

+ 2
- 1
app/src/main/java/com/xhly/manageapp/broadcastreceiver/SDReceiver.kt View File

6
 import com.xhly.corelib.Const
6
 import com.xhly.corelib.Const
7
 import com.xhly.corelib.eventbus.UIEvent
7
 import com.xhly.corelib.eventbus.UIEvent
8
 import com.xhly.corelib.utils.LogShow
8
 import com.xhly.corelib.utils.LogShow
9
+import com.xhly.corelib.utils.SystemUtil
9
 
10
 
10
 class SDReceiver: BroadcastReceiver() {
11
 class SDReceiver: BroadcastReceiver() {
11
     companion object{
12
     companion object{
21
              Intent.ACTION_MEDIA_MOUNTED->
22
              Intent.ACTION_MEDIA_MOUNTED->
22
              {
23
              {
23
                  //SD卡挂载成功,可能会发送两次
24
                  //SD卡挂载成功,可能会发送两次
24
-                 if (installLastTime==0L||(System.currentTimeMillis()- installLastTime>1000)){
25
+                 if (installLastTime==0L||(System.currentTimeMillis()- installLastTime>1000)&&SystemUtil.isSDCardMounted(context)){
25
                      installLastTime=System.currentTimeMillis()
26
                      installLastTime=System.currentTimeMillis()
26
                      LogShow("sd卡已插入")
27
                      LogShow("sd卡已插入")
27
                      UIEvent(Const.SDINSTALL).post()
28
                      UIEvent(Const.SDINSTALL).post()

+ 10
- 0
corelib/src/main/java/com/xhly/corelib/utils/SystemUtil.java View File

11
 import android.net.wifi.WifiInfo;
11
 import android.net.wifi.WifiInfo;
12
 import android.net.wifi.WifiManager;
12
 import android.net.wifi.WifiManager;
13
 import android.os.Build;
13
 import android.os.Build;
14
+import android.os.Environment;
14
 import android.provider.Settings;
15
 import android.provider.Settings;
15
 import android.telephony.SubscriptionInfo;
16
 import android.telephony.SubscriptionInfo;
16
 import android.telephony.SubscriptionManager;
17
 import android.telephony.SubscriptionManager;
310
             return true;
311
             return true;
311
         }
312
         }
312
     }
313
     }
314
+
315
+    public static boolean isSDCardMounted(Context context) {
316
+        try{
317
+            File[] externalFilesDirs = context.getExternalFilesDirs(null);
318
+            return externalFilesDirs.length > 1;
319
+        }catch (Exception e){
320
+            return false;
321
+        }
322
+    }
313
 }
323
 }

Loading…
Cancel
Save