判斷外部儲存是SD卡還是u盤的方法

2021-06-15 00:14:52 字數 856 閱讀 6705

在開發公司專案的時候,需要判斷盒子插入的外部儲存裝置室sd卡或者是u盤,在網上沒有找到相應的方法。自己在插拔sd卡和u盤的過程中看到狀態列中的提示語不同,就想從systemui中找方法,後來摸索著找到了,並且用在工程中,這裡簡單的總結一下:

private static final string ext_storage_path = environment.getexternalstoragedirectory().tostring();    //獲取sd卡的路徑

private static final string ext2_storage_path = environment.getexternalstorage2directory().tostring();//獲取其他外部儲存的方法

storagemanager mstoragemanager = (storagemanager) getsystemservice(context.storage_service); //獲得storagemanager物件

private storageeventlistener mstoragelistener = new storageeventlistener() else if(path.equals(ext2_storage_path))}}

};在這裡通過newstate判斷外部裝置的插拔狀態,然後通過路徑去分別判斷不同的裝置。

@override

public void onresume() ;

@override

protected void onpause()

super.onpause();

}然後在不同的生命週期階段,註冊***和解除註冊。

最後別忘了在manifest.xml中新增許可權

Android儲存裝置 U盤,SD卡 狀態監測

我們是以dv6300 t的平台來做測試的,發現有2種方式來檢測android中external media 包括sd卡,usb 的狀態。一種是使用storagelistener監聽,還有一種是使用廣播的方式。相關的類主要有 recorddevicemanager devicestatelistene...

linux mdev實現U盤或SD卡的自動掛載

mdev是busybox中的乙個udev管理程式的乙個精簡版,他也可以實現裝置節點的自動建立和裝置的自動掛載,只是在實現的過程中有點差異,在發生熱插拔時間的時候,mdev是被hotplug直接呼叫,這時mdev通過環境變數中的 action 和 devpath,來確定此次熱插拔事件的動作以及影響了 ...

Udev實現U盤或SD卡的自動掛載

linux傳統上使用靜態裝置建立的方法,在dev下建立了大量的節點,而不管這些節點相應的硬體裝置是否存在。採用 udev的方法,系統檢測到裝置才會去建立這些裝置對應的節點。這裡我們簡單的說一下udev的工作原理 udev是依賴於sysfs的,當系統中新增乙個新的裝置後,核心檢測到後就會產生乙個hot...