我正在从互联网将数据下载到我的应用程序中。如果我指定内部内存(=Environment.getExternalStorageDirectory()),我可能会遇到“空间不足”的问题。 SD卡安装地址总是因手机而异,所以我想允许用户选择他喜欢的位置,在哪里存储下载的数据。有没有什么方法,如何获取所有可用的存储选项,哪些可以使用? (一般来说,我想选择内部存储器或插入的SD卡)。
Thanks
请检查下面的代码。
计算可用内部存储空间
StatFs stat = new StatFs(Environment.getDataDirectory().getPath());
long bytesAvailable = (long)stat.getFreeBlocks() * (long)stat.getBlockSize();
long megAvailable = bytesAvailable / 1048576;
计算内部存储总内存
StatFs stat = new StatFs(Environment.getDataDirectory().getPath());
long bytesAvailable = (long)stat.getBlockSize() *(long)stat.getBlockCount();
long megAvailable = bytesAvailable / 1048576;
计算可用外部存储内存
StatFs stat = new StatFs(Environment.getExternalStorageDirectory().getPath());
long bytesAvailable = (long)stat.getFreeBlocks() * (long)stat.getBlockSize();
long megAvailable = bytesAvailable / 1048576;
计算外部存储总内存
StatFs stat = new StatFs(Environment.getExternalStorageDirectory().getPath());
long bytesAvailable = (long)stat.getBlockSize() *(long)stat.getBlockCount();
long megAvailable = bytesAvailable / 1048576;
Note :首先,您需要计算可用的内存并向用户显示他/她想要下载文件的位置。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)