Ошибка: вызвано: java.lang.NullPointerException
Я пытаюсь показать размер файлов кэша в МБ, используемых моим приложением. но мое приложение падает. Ошибка: вызвано: java.lang.NullPointerException
private void initializeCache() {
long size = 0;
size += getDirSize(this.getCacheDir());
size += getDirSize(this.getExternalCacheDir());
this.text_view_cache_value.setText(getResources().getString(R.string.label_cache) + readableFileSize(size));
}
public long getDirSize(File dir){
long size = 0;
for (File file : dir.listFiles()) {
if (file != null && file.isDirectory()) {
size += getDirSize(file);
} else if (file != null && file.isFile()) {
size += file.length();
}
}
return size;
}
1 ответ
Установите точку отладки или выполните System.out.println(..), чтобы проверить содержимое:
this.getCacheDir()
his.getExternalCacheDir()
this.text_view_cache_value
R.string.label_cache
один из них имеет нулевое значение.