Я использую Firestore и Flutter для чата. Он работает нормально, но я вижу эту проблему. Иногда сообщения отображаются не по порядку. Например, обычно они отсортированы внизу как самые свежие. Но я тестирую на симуляторе iOS и Android и иногда вижу, что сообщения отображаются не по порядку. Например, я отправляю сообщения на iOS и все в порядке (по порядку). Затем я отправляю на другой симулятор (например, Android), и сообщения отображаются вверху, а затем начинаю спускаться (поверх сообщений, отправленных на iOS).
Вот мой код:
child: new FirestoreAnimatedList(
query: reference
.orderBy('timestamp', descending: true)
.snapshots(),
padding: new EdgeInsets.all(8.0),
reverse: true,
itemBuilder: (_, DocumentSnapshot snapshot,
Animation<double> animation, int x) {
return new Chat(
snapshot: snapshot, animation: animation);
},
),
'timestamp': DateTime.now(),
Я пробовал эту, но ту же проблему:
'timestamp': DateTime.now().millisecondsSinceEpoch.toString()
Я неделями жду ответа, но не нахожу. Кто-нибудь может помочь?

Вероятно, вы столкнулись с этой проблемой, потому что устройства сообщают разное время.
Чтобы решить эту проблему, используйте время сервера вместо местного. Это делается путем установки поля timestamp на FieldValue.serverTimestamp().
@FlutterFirebase Удачи?
@FlutterFirebase Нет проблем! Обязательно отметьте свой вопрос как ответ, если он есть :)
Я также столкнулся с этой проблемой сортировки, попробовал ваш ответ, но не повезло, пожалуйста, помогите
Спасибо за ответ! Я пытаюсь сейчас