Android获得内/外置存储卡路径的方法
我们知道Android上一般都有外置的存储卡,
但是通过Environment.getExternalStorageDirectory()获取的是内置的存储卡位置(也有的手机可以在系统中修改默认存储)那么如何获取外置存储卡的位置呢?
我们可以通过StorageManager来获取多个外置sdcard,代码如下:
StorageManagerstorageManager=(StorageManager)cxt.getSystemService(Context.STORAGE_SERVICE); try{ Methodmethod=StorageManager.class.getDeclaredMethod("getVolumePaths"); method.setAccessible(true); Objectresult=method.invoke(storageManager); if(result!=null&&resultinstanceofString[]){ String[]pathes=(String[])result; StatFsstatFs; for(Stringpath:pathes){ if(!TextUtils.isEmpty(path)&&newFile(path).exists()){ statFs=newStatFs(path); if(statFs.getBlockCount()*statFs.getBlockSize()!=0){ pathsList.add(path); } } } } }catch(Exceptione){ e.printStackTrace(); FileexternalFolder=Environment.getExternalStorageDirectory(); if(externalFolder!=null){ pathsList.add(externalFolder.getAbsolutePath()); } } } returnpathsList.toArray(newString[pathsList.size()]);
以上所述是小编给大家介绍的Android获得内/外置存储卡路径的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!