Android 获取 USB 设备内存的总大小和可用大小

问题描述:

通过编程访问 USB 设备存储器.

Access USB Device Memory through programmatically.

  1. 获取 USB 设备总内存大小.
  2. 获取 USB 设备总可用(可用)内存大小.

我知道内部/外部存储器的内存大小

I know the memory size of Internal/External Memory

File path = Environment.getDataDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long availableBlocks = stat.getAvailableBlocks();
String availableMemory =  Formatter.formatFileSize(this, availableBlocks * blockSize);
Log.i("","Available MB : " + availableMemory);

此代码不适用于识别 USB 设备存储器.

In this code does not worked for identifying the USB Device Memory.

如何找到USB Device Memory.

提前致谢.

请使用下面的代码...

Hi Please use below code...

     StatFs statFs = new StatFs(Environment.getExternalStorageDirectory().getAbsolutePath());        
     long blockSize = statFs.getBlockSize();
     long totalSize = statFs.getBlockCount()*blockSize;
     long availableSize = statFs.getAvailableBlocks()*blockSize;
     long freeSize = statFs.getFreeBlocks()*blockSize;

如果你在 MB 中没问题,那么

And If you fine in MB then

long megAvailable = availableSize/ (1024 * 1024);
Log.e("","Available MB : "+megAvailable);