"Если вдруг открылся люк, не пугайся, это глюк!" (с) Если что-то работает не так, вы нашли ошибку или опечатку в программе — вам в этот раздел
Аватара пользователя
CyberDynamic
Сервер уходил в техническую перезагрузку для обслуживания минут на 10.
После загрузки один из телефонов (Galaxy S8+ Android 9) подключился сам (ну относительно сам. Пришлось открыть приложение, написать сообщение и через минуту он допер что сервер онлайн). Второй аппарат Honor 7A (Android 8.1.0) висел с бубликом на стартовой заставке (там где обычно авторизация) нескончаемое время. Пришлось лезть в недра настроек в Приложения, находить там клиент и грохать процесс. После этого подключился.
Аватара пользователя
CyberDynamic
Эксперимент продублирован. На этот раз никто из клиентов не вылетел на авторизацию. Оба усиленно крутит бублики (на месте значка отправки сообщения в привате) при попытке отправить сообщение друг другу. Уже минут 5.

*Вот так вот ребутнешь сервер по быстрому и хана 100+ мобильным клиентам.
Аватара пользователя
CyberDynamic
ADD: На одном из клиентов не выдержал, сделал релогин. Отправил сообщение второму. И оно дошло моментально с уведомлением. зажигаю экран второго, сообщение получено, но бублик в строке отправки так и крутится [smilie=dash3.gif]
Аватара пользователя
CyberDynamic
ADD: Сегодня еще раз поймал этот баг. Условия были несколько другими. Примерно на 2-2,5 часа заехал в бокс на ТО. Сеть там в лучшем случае 2G. Сигнал очень слабый. Уверен сопровождающийся и полным пропаданием. Так вот выехав в итоге на улицу с абсолютно устойчивым сигналом 4G и проведя там порядка 20-30 минут, решил посмотреть на состояние приложения. Результат очевиден.
В целом приложение адекватно реагирует на смену типа сети, на ручное включение и отключение сети. Но то что происходит при с клиентом при перезагрузке сервера чата или при отсутствии устойчивых ICMP - наводит в замешательство. В перспективе активного использования приложения нашими сотрудниками, 90% из них не смогут самостоятельно принудительно завершить зависший процесс клиента. Дас ист косяк [smilie=skull.gif]
Вложения
Screenshot_20200112-201439_MyChat.jpg
Screenshot_20200112-201439_MyChat.jpg (169.38 КБ) Просмотров: 1620
Аватара пользователя
Георгий Лысенко
Отправьте лог клиента (/внутренняя_память/MyChat Messenger/logs/дата/connection_log.txt) на [email protected]. Проанализируем и постараемся дать вам ответ.
Аватара пользователя
CyberDynamic
Отправил весь вчерашний день. основные проблемы произошли в период с 17:45 по 20:45 (приблизительно).
Аватара пользователя
Георгий Лысенко
Пока что, к сожалению, Android сам решает, насколько сильно ему мешает приложение и стоит ли его держать в памяти, отсюда и все проблемы с переподключением и удержанием коннекта.
У нас в планах переход на Push-уведомления, которые гарантировано будут работать правильно и приходить без лишних действий со стороны пользователя. По срокам точнее не скажу, пока что делаем все, что в наших силах.
Аватара пользователя
CyberDynamic
Ну PUSH это ведь всего лишь метод доставки уведомлений. Как он нас спасет если клиент завис на коннекте к серверу. Может добавить кнопку Выход которая будет принудительно завершать приложение? Это так же решит вопрос с жором аккумулятора. Например если мы разлогинились с сервером, но процесс приложения не кильнули, то оно будет жрать батарею бесконечное кол-во времени пока его не прибить. Причем в риалтайме а не в фоне.
Аватара пользователя
Алексей Пикуров
Переход на PUSH — очень сложная задача. И мы её не решим ни за день, ни за месяц. Как уже сказал Георгий, это будет, но работаем планово.
Аватара пользователя
CyberDynamic
Так а я о чем говорю? Пока делаете PUSH, людей хоть Выход/Exit/"Крестик" будет спасать.
Аватара пользователя
CyberDynamic
Вон на скрине выше знак вопроса справа. Смещаем его в центр. На его место ставим крестик. Ну и в меню красивенько "Выход". Не сложно ведь?
Аватара пользователя
Георгий Лысенко
Окей, я выпущу небольшое обновление, с возможностью остановить подключение кнопкой на экране логина и с обработкой прав доступа в инструмент поиска. Только это, пока больше никакого новго функционала до полноценного релиза новой версии.
Аватара пользователя
CyberDynamic
О том речь и шла, Георгий! Только эти два момента смущали в плане начала официального внедрения продукта на производстве. Касательно любых других доработок однозначно будем терпеливо ждать официальных релизов. Огромное человеческое спасибо Вам и всей команде! [smilie=friends.gif]
Аватара пользователя
CyberDynamic
Предварительно из того что замечено. Поиск действительно отвалился у той группы пользователей у которой был отключен. Но его разрешение не возвращает иконку поиска. Этим пользователям сменялась группа вплоть до операторов. Значка нет. Значок появляется только у админа. Кол-во непрочитанных сообщений в приватах не пропадает. Сообщения в приватах не удаляются (меню есть, удаление не происходит). Проверено на двух устройствах.
Аватара пользователя
CyberDynamic
ADD: Кол-во непрочитанных сбросилось только после начала новой переписки в этом привате.
Аватара пользователя
CyberDynamic
ADD: Мой косяк. По умолчанию для Операторов удаление отключено. Очень странно что в меню был доступен пункт удаление. Косяк. В итоге работает.
Аватара пользователя
CyberDynamic
Таким образом, Георгий, перепроверьте пожалуйста Поиск. Пока что только у админов появляется. Моментально, здорово, красиво, но только у них.
Аватара пользователя
Георгий Лысенко
Не понимаю, в чем у вас проблема, только что проверил с обычной группой прав, все появляется и исчезает, когда нужно.
Аватара пользователя
CyberDynamic
Подтверждаю. Поиск появился на телефоне где приложение было полностью удалено и установлено из маркета с нуля. На втором так ничего не появилось.
Аватара пользователя
Георгий Лысенко
Удалось воспроизвести, пытаюсь найти причину.
Аватара пользователя
CyberDynamic
Фуф. Я уж думал я рукожоп и что-то не так делаю. Но уже все перетыкал. И кэши чищу, и данные сношу. Срабатывает как-то разово после кувалды. Спасибо Георгий.
Аватара пользователя
Георгий Лысенко
Проблему не нашел изначально, так как тестировал на Android 10. Ждите еще один апдейт:)