У меня есть приложение для чата, которое работает на Firebase, и я хотел бы получить временную метку из Firebase, прежде чем нажимать любые данные.Получение метки времени Firebase перед нажатием данных
В частности, я хотел бы получить время, когда пользователь нажимает кнопку отправки для голосового сообщения. Я на самом деле не нажимаю сообщение Firebase до тех пор, пока загрузка не будет успешной (чтобы гарантировать, что аудиофайл будет там, когда получатель получит сообщение). Если бы я просто использовал Firebase.ServerValue.TIMESTAMP, может возникнуть проблема с заказом из-за разных длительностей загрузки. (Например, очень короткое сообщение, например, очень длинное).
Есть ли все-таки, чтобы пинговать Firebase за метку времени, которую я не вижу в документах? Спасибо!
Я не очень понимаю проблему. Если вы назовете 'push()' ключ будет основан на локальном времени, когда пользователь нажал кнопку. Если вы используете 'Firebase.ServerValue.TIMESTAMP', то значение, записанное в базу данных, будет именно тогда, когда данные будут записаны на диск. Каким будет конфликт? Можете ли вы записать его в фрагменте кода, который показывает проблему? –
Помогает ли это? 1. Пользователь нажимает «отправить» 2. Аудиофайл начинает загрузку. 3. Аудиофайл завершает загрузку. 4. В обратном вызове завершения работы audioFinishedUploading я записываю данные сообщения в Firebase. Мне нужна отметка времени с момента, когда пользователь нажимает «отправить». – Justin
Я разработал его так, чтобы, если загрузка аудио не удалась, сообщение не отправляется. – Justin