Android獲取監(jiān)聽SD卡狀態(tài)
項目簡介:
該項目監(jiān)聽SD卡狀態(tài)
詳細介紹:
部署該應用后,當SD卡狀態(tài)發(fā)送改變時,系統(tǒng)會發(fā)出吐司通知用戶
該應用涉及到的知識有:
1.Android的四大組件之一:廣播接收者的使用
2.SD卡狀態(tài)的廣播
注意:
1.只有在 2.x 模擬器上才能對SD卡進行操作,所以該應用應當部署在 2.x 的模擬器上
2.一個廣播接收者是可以接受多個廣播的,直接添加多個action就可以了
3.SD卡不同的狀態(tài)有不同的廣播,主要有三種:
<action android:name="android.intent.action.MEDIA_MOUNTED" /> //SD卡處于可用狀態(tài),即掛載狀態(tài)
<action android:name="android.intent.action.MEDIA_REMOVED" /> //SD卡被拔出了,即處于移除狀態(tài)
<action android:name="android.intent.action.MEDIA_UNMOUNTED" /> //SD卡插入了,但是沒有掛載,不可用,即處于卸載狀態(tài)
4.監(jiān)聽SD卡狀態(tài),一定要在過濾器中加入
<data android:scheme="file" />
步驟:
1.創(chuàng)建一個Android項目,在該項目中創(chuàng)建一個廣播接收者,代碼如下:
public class SDStatusReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // 判斷收到的是什么廣播 String action = intent.getAction(); // 最好不要用switch語句,java1.7以前switch是不支持字符串的,所以最好使用if語句判斷 if ("android.intent.action.MEDIA_MOUNTED".equals(action)) { Toast.makeText(context, "SD卡可用", 0).show(); } else if ("android.intent.action.MEDIA_REMOVED".equals(action)) { Toast.makeText(context, "SD卡拔出", 0).show(); } else if ("android.intent.action.MEDIA_UNMOUNTED".equals(action)) { Toast.makeText(context, "SD卡不可用", 0).show(); } } }
2.在清單文件中添加Receiver,監(jiān)聽SD卡不需要權限:
<receiver android:name=".SDStatusReceiver" > <intent-filter> <action android:name="android.intent.action.MEDIA_MOUNTED" /> <action android:name="android.intent.action.MEDIA_REMOVED" /> <action android:name="android.intent.action.MEDIA_UNMOUNTED" /> <data android:scheme="file" /> </intent-filter> </receiver>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Android實現(xiàn)瘋狂連連看游戲之加載界面圖片和實現(xiàn)游戲Activity(四)
這篇文章主要為大家詳細介紹了Android實現(xiàn)瘋狂連連看游戲之加載界面圖片和實現(xiàn)游戲Activity,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03Android開發(fā)實現(xiàn)的圓角按鈕、文字陰影按鈕效果示例
這篇文章主要介紹了Android開發(fā)實現(xiàn)的圓角按鈕、文字陰影按鈕效果,涉及Android界面布局與屬性設置相關操作技巧,需要的朋友可以參考下2019-04-04Afianl框架里面的FinalBitmap加載網(wǎng)絡圖片
這篇文章主要介紹了Afianl框架里面的FinalBitmap加載網(wǎng)絡圖片的相關資料,需要的朋友可以參考下2015-07-07