Я пишу приложение, которое получает, сколько дискового пространство осталось на Android устройства, и я использую следующий код:Что на самом деле возвращает getAvailableBlocks() на Android?
public int phone_storage_free()
{
StatFs statFs = new StatFs(Environment.getRootDirectory().getAbsolutePath());
int Free = (statFs.getAvailableBlocks() * statFs.getBlockSize())/1048576;
return Free;
}
возвращает 35MB, который является небольшим количеством, так что я предполагаю, что это сумма свободного места на диске. Итак, я написал код для загрузки файла размером более 35 МБ, я сохранил файл до path.getPath()+"/test.avi"
, и он преуспел. Я снова запустил вышеуказанный код и получил то же значение 35 МБ.
Итак, мой вопрос: как я могу получить объем внутреннего дискового пространства на устройстве Android, доступного для приложения, которое я могу загрузить, и он будет точным и что-то, что я могу использовать.
Спасибо!