#android #amazon-s3 #aws-amplify
Вопрос:
Я пытаюсь перечислить все файлы в своем ведре через:
Amplify.Storage.list("",
result -> {
for (StorageItem item : result.getItems()) {
Log.i("MyAmplifyApp", "File: " item.getKey() ", Hash: " item.getETag());
}
},
error -> Log.e("MyAmplifyApp", "List failure", error)
);
Но меня интересуют только файлы, а не каталоги. Как мне это сделать?
Ответ №1:
Я не смог найти определенного решения своей проблемы. Вот самое близкое решение, которое я написал:
Amplify.Storage.list("",
result -> {
for (StorageItem item : result.getItems()) {
if(item.getSize() == 0) {
Log.i(TAG, "File is empty, skip: " item.getKey());
continue;
}
Log.i("MyAmplifyApp", "File: " item.getKey() ", Hash: " item.getETag());
}
}
error -> Log.e("MyAmplifyApp", "List failure", error)
);
Это просто игнорирует все StorageItem
, размер которых равен нулю байтов. Это работает в моем случае, потому что, помимо каталогов, меня также не интересуют пустые файлы.