[英]How to get total video & image size from external SD card
我正在嘗試從外部SD卡計算總內存大小(視頻和圖像)。 例如,有一個方法MediaStore.Audio.Media.getContentUriForPath(String path)
。 從那里我可以獲取URI並計算音頻文件的大小。 通過傳遞 ..
private long getMedia(Uri uri) {
Log.e("URI",uri+"");
String[] proj = { MediaStore.MediaColumns.SIZE };
Cursor cursor = ((Activity) context).getContentResolver().query(uri, proj, null, null, null);
long size = DirectoryMediaSize.getMediaSize(cursor);
cursor.close();
return size;
}
沒有像MediaStore.Video.Media.getContentUriForPath()
這樣的方法。 那么我如何計算(視頻和圖像)的大小呢?
試試下面的代碼:
Uri selectedImageURI = data.getData();
File imageFile = new File(getRealPathFromURI(selectedImageURI));
long check = ((imageFile.length() / 1024));
if (check < 5000)
{
// less then 5 mb
}
else
{
// greater then 5 mb
}
函數getRealPathFromURI
String getRealPathFromURI(Uri contentURI)
{
String result;
Cursor cursor = getContentResolver().query(contentURI, null, null, null, null);
if (cursor == null)
{ // Source is Dropbox or other similar local file path
result = contentURI.getPath();
}
else
{
cursor.moveToFirst();
int idx = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);
result = cursor.getString(idx);
cursor.close();
}
return result;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.