1 Предположим, что я делаю что-то вроде следующего:
FirestoreDatabase.getInstance()
.collection("users")
.add(userData); // where userData is reference to UserData object which contains many fileds
Теперь, если я показываю эти данные в представлении recycler, клиентская библиотека сразу же покажет это в представлении recycler, даже до того, как это произойдет. сохранено в базе данных firestore, чтобы мое приложение было более отзывчивым.
Так что, когда данные отображаются в представлении реселлера, пользователь думает, что он успешно добавил данные НО , что произойдет, если запрос на запись завершится неудачно, когда данные поступят в хранилище, сработает линер списка onFailure
и данные, уже находящиеся в пользовательском интерфейсе до фактической записи, исчезнут из пользовательского интерфейса ?
2 Когда пользователь находится в автономном режиме, он все еще может использовать приложение, добавлять данные и отображаться в пользовательском интерфейсе для пользователя, это означает, что он успешно добавил данные, тогда когда onSuccessListener
запускается только тогда, когда пользователь находится в сети.
ex Допустим, в списке преемников я показываю тост, в котором говорится: данные добавлены , но пользователь видит их только тогда, когда он онлайн, когда он оффлайн он может видеть данные в пользовательском интерфейсе, но не тост и думает, почему тост не появился на этот раз.