android監聽TF卡插拔事件 判斷

2021-07-28 18:39:30 字數 1016 閱讀 3677

如何通過註冊廣播獲知tf插拔事件:

註冊廣播:

intentfilter filter = new intentfilter();

filter.addaction(intent.action_media_eject);

filter.addaction(intent.action_media_mounted);

filter.adddatascheme("file");

this.registerreceiver(usbreceiver, filter);

filter.adddatascheme("file");

this.registerreceiver(usbreceiver, filter);

如何判斷tf、usb是否插入以及獲取路徑:

通過反射獲取類 storagemanager 中的 getvolumepaths 方法獲取路徑。

private storagemanager mstoragemanager;

private static string mintersd; // 內建sd卡

private static string mexternalsd; // 外接sd卡 1

private static string musb; // u盤,外接sd卡2

private string mpath;

public void getstoragelist()

if (mpath.length > 1)

if (mpath.length > 2)

} catch (exception e)

}}public boolean getexternalstoragestate()

try catch (exception rex)

}

Android 應用層監聽外接SD卡插拔

直接拔出外接sd卡,很可能收不到intent.action media unmounted廣播,具體原因未跟 但是可以使用 storageeventlistener 物件來處理,具體做法 1.獲取storage service服務 mstoragemanager storagemanager thi...

Android監聽USB插拔事件

android監聽usb插拔事件有兩種方式 一種是在mainifest.xml中註冊 android.hardware.usb.action.usb device attached即在usb插入是的action意圖。在android.hardware.usb.usbmanager類中有多種actio...

雙SIM卡,Android監聽SIM卡狀態

最近在搞乙個專案,其中有一塊關於雙sim卡狀態監聽,在這一塊上沒有經驗,在網上找了很多例子,但都是只是監聽sim卡改變狀態,而我要的是不但要監聽sim狀態改變,而且還要知道具體是哪張sim卡狀態改變,度娘找尋好久後,還是沒有結果,於是便自行來研究下。首先,sim卡狀態改變的action是androi...