Когда пропала сеть
Коротко: приложение работает и без сети. Всё, что ты записал, остаётся в телефоне и уезжает само, как только связь вернётся. Специально ничего сохранять не надо и ждать связи, чтобы работать, — тоже. Приложение при этом можно закрыть — записи это переживут.
Можно ли закрыть приложение
Да. Закрой вкладку, закрой браузер, выключи телефон — записи это переживут. Продукт откладывает в память браузера не только сами записи, но и те строки, которых они касаются. Открыл снова, всё ещё без сети — работа на месте и уедет сама, когда связь вернётся.
Откладывается только то, что ещё не уехало, — не весь склад. Всё уехало — отложенное продукт убирает: держать больше нечего.
Случай, когда закрывать нельзя, ровно один, и продукт о нём говорит прямо: «Памяти в браузере не хватило». Про него — в конце этой страницы. Такого сообщения не было — закрывай спокойно.
Полоска сверху — что она говорит
Когда что-то не так со связью, наверху появляется тонкая полоска. Их три, и они про разное. Различать стои́т: две из них — просто сообщение, а третья зовёт тебя.
Ниже они выписаны так, как выглядят на экране; вместо N у тебя будет настоящее число. Считает продукт отправки, а не строки: список, залитый разом, уезжает одной отправкой и в счёте даёт единицу — «1 отправка» может значить десять вещей. На серой полоске то же самое пока названо словом «запись» — считает она то же.
- «Нет связи — записи сохраняются, уедут при появлении сети»
- Серая. Всё в порядке: работай дальше, продукт всё держит и отправит сам. Постоит секунд пятнадцать — к ней добавится хвост «· не доехало: N». Это та же полоска и та же спокойная новость: N отправлений ждут связи.
- «Не доехало: N записей — они сохранены, отправляю дальше»
- Серая. Связь есть, но часть записей подзастряла в пути. Тоже в порядке — продукт дожимает их сам, ничего делать не надо.
- «Не доехало: N отправок — сервер не принял. Открыть»
- Янтарная, и вот она уже про тебя. Сервер их не принял — сами они не уедут. Жми «Открыть».
Полка «Не доехало до сервера»
За янтарной полоской лежит список того, что до сервера не доехало. Продукт говорит это прямо теми же словами: «Этой работы на экране больше нет — она осталась только здесь. Пошли заново или убери.»
Строка на полке названа по-человечески и с числами — например «заливка списком · 2 вещи · 10 000 ₽». По ней видно, что именно не уехало, даже когда отправление было одно.
И это правда, а не оборот речи. Отвергнутую отправку продукт с экрана снимает — показывать то, чего у сервера нет, он не станет. Полка и есть то единственное место, где она осталась.
У каждой строки две кнопки:
- Послать заново
- Отправить ещё раз. Двойника не будет — запись уходит под тем же самым номером, под которым уходила в первый раз, и сервер узнаёт её как ту же самую.
- Убрать
- Выкинуть из списка. Нужно, когда запись уже не актуальна и слать её незачем.
Продукт не верит телефону на слово. Телефон иногда уверен, что он в сети, когда сети на деле нет: открытый вайфай без интернета, зависший роутер. Поэтому продукт судит по себе — дозвонился до нас или не дозвонился.
Значит полоска «Нет связи» может появиться там, где телефон показывает полные палочки. В этом случае прав продукт, а не палочки.
Если открыл в двух вкладках
Открыл приложение во второй вкладке того же браузера — или просто продублировал первую. Незаехавшая работа у обеих вкладок общая, и она складывается, а не затирается: то, что ты записал в одной, вторая не сотрёт.
Задвоиться запись не может: у каждой свой номер, и по нему её узнают — и общая стопка, и сервер. А то, что уже уехало, из стопки обратно не всплывает.
Подхватить чужую стопку вкладка может не в любую секунду — только когда у неё самой ничего не ждёт отправки. Занята — не беда: работа лежит в общей стопке и уедет либо своей вкладкой, либо при следующем открытии этой.
Речь про вкладки одного браузера: общая стопка живёт в его памяти, и о чужой записи вкладка узнаёт оттуда же. У другого браузера и другого устройства память своя.
Если в браузере кончилось место
Записи копятся в памяти браузера, а она не бесконечная. Когда места перестаёт хватать, продукт сначала освобождает его сам, и в строгом порядке: первым выбрасывает то, что нужно только нам для разбора неполадок, вторым — запас, из которого он показывает твоё хозяйство без сети.
Твою незаехавшую работу он не трогает никогда. Она — последнее, что он отдаст, и ради неё он и жертвует всем остальным.
Сказать тебе он может две разные вещи, и это разные беды:
- «Памяти в браузере мало — без сети покажу не всё. Со связью всё на месте»
- Не страшно. Работа цела, просто без связи ты увидишь не весь склад. Вышел в сеть — всё вернулось.
- «Памяти в браузере не хватило. Пока не выйдешь в сеть, не закрывай вкладку — несохранённое потеряется»
- А это уже серьёзно, и это тот самый единственный случай. Продукт потеснился как мог и всё равно не влез. Пока не появилась связь, закрытая вкладка унесёт то, что ты записал последним.
Каждую из них он говорит один раз, а не на каждое движение: предупреждение, которое повторяют без конца, перестают читать.
А вот сам этот справочник без сети не откроется. Он живёт на сайте, и его страницы читаются только онлайн. Приложение — работает, справочник — нет. Нужен он тебе в дороге — прочти заранее.