Странно
Я всего лишь нажал на кнопку "Отправить". Откуда он взял столько странных сообщений?
Andrew Lobanov to All (2017-05-06 03:27:39)
[ссылка]
AL> Я всего лишь нажал на кнопку "Отправить". Откуда он взял столько странных сообщений?Жмешь кнопку ответить с цитатой, ничего не пишешь, выходишь назад, клиент сохраняет сообщение в черновиках. Так несколько раз. Я обычно перед отправкой черновики просматриваю.
> Жмешь кнопку ответить с цитатой, ничего не пишешь, выходишь назад, клиент сохраняет сообщение в черновиках. Так несколько раз. Я обычно перед отправкой черновики просматриваю.Учту на будущее.
> Может при выходе из редактирования спрашивать сохранять ли сообщение в черновике? Или определять, что поинт ничего не написал.В цезии я сделал так: запоминается хеш сообщения перед редактированием и сравнивается с хешем после редактирования. Если хеши совпадают, то сообщение не сохраняется.
btimofeev> Может при выходе из редактирования спрашивать сохранять ли сообщение в черновике? Или определять, что поинт ничего не написал.
AL> Я всего лишь нажал на кнопку "Отправить". Откуда он взял столько странных сообщений?Ну блин, народ, я ведь специально над этим делом работал, а вы жалуетесь.
На экране написания сообщения специально есть пункт "Удалить", на который надо нажимать, если нажали на ответ случайно. Он удаляет черновик.
А если вы жмёте "назад", значит вы просто прервались, и черновик должен сохраниться. "Допишу потом" называется. В стандартном Email-клиенте андроида такое же поведение.
AL> В цезии я сделал так: запоминается хеш сообщения перед редактированием и сравнивается с хешем после редактирования. Если хеши совпадают, то сообщение не сохраняется.У меня так нельзя. Знаешь, почему? Потому что есть фича правки сообщения во внешнем редакторе.
// Как и в CutieFeed, например.
P.S. "случайные" сообщения уже в ЧС на моей станции. Кстати, idec mobile тоже умеет работать с чёрным списком в 1 клик, если вы это успели забыть :)
>> Я всего лишь нажал на кнопку "Отправить". Откуда он взял столько странных сообщений?Хм. Слона то я и не заметил =)
> Ну блин, народ, я ведь специально над этим делом работал, а вы жалуетесь.
> На экране написания сообщения специально есть пункт "Удалить", на который надо нажимать, если нажали на ответ случайно. Он удаляет черновик.
>> В цезии я сделал так: запоминается хеш сообщения перед редактированием и сравнивается с хешем после редактирования. Если хеши совпадают, то сообщение не сохраняется.Цезий использует исключительно внешние редакторы же. У тебя есть исходное сообщение (уже отквотированное или пустое), у тебя есть отредактированное сообщение. Почему нельзя их сравнить?
> У меня так нельзя. Знаешь, почему? Потому что есть фича правки сообщения во внешнем редакторе.
> P.S. "случайные" сообщения уже в ЧС на моей станции. Кстати, idec mobile тоже умеет работать с чёрным списком в 1 клик, если вы это успели забыть :)Как до ноута доберусь, так обязательно в таверне занесу.
AL> Цезий использует исключительно внешние редакторы же. У тебя есть исходное сообщение (уже отквотированное или пустое), у тебя есть отредактированное сообщение. Почему нельзя их сравнить?Хмм. Если запускать редакторы в неблокирующем режиме (то есть в фоновом процессе), то нельзя отследить, когда человек выходит из редактора.
AL> // Вот чего не хватает в мобильном клиенте, так это удобного удаления квотированных абзацев. Если вдруг когда будет желание их переделать, то могу показать скрины и пояснить как это сделано в том же хотдоге (NNTP- и FTN-клиент под андроид). Поведение там несколько нестандартное, но очень и очень удобное.Интересно было бы почитать и разобраться.
>>> Спрятать в меню?
>> Да. Если нет никаких других достойных вариантов, то только так.
AL> Ну я других вариантов даже придумать не могу. Нужно оставить функцию, но не захламлять панель же.На больших экранах, например, планшетах, проблема противоположная. Там места куча, ещё хоть 10 значков впихнуть можно, но API панели не даёт использовать это свободное место на все 100%.
Приходится прописывать принудительное отображение. В то же время на маленьких экранах это портит внешний вид.
Надо как-то искать компромисс. Да ещё что-то сделать с сортировкой, которую Гугл, как я уже говорил, не предусмотрел.
>> // Вот чего не хватает в мобильном клиенте, так это удобного удаления квотированных абзацев. Если вдруг когда будет желание их переделать, то могу показать скрины и пояснить как это сделано в том же хотдоге (NNTP- и FTN-клиент под андроид). Поведение там несколько нестандартное, но очень и очень удобное.При ответе появляется промежуточный экран с блоками-абзацами квоты:
> Интересно было бы почитать и разобраться.
> На больших экранах, например, планшетах, проблема противоположная. Там места куча, ещё хоть 10 значков впихнуть можно, но API панели не даёт использовать это свободное место на все 100%.Это да. Несколько неудобно сделано, но фиг его знает как делать иначе при всём том зоопарке устройств.
> Приходится прописывать принудительное отображение. В то же время на маленьких экранах это портит внешний вид.
> Надо как-то искать компромисс. Да ещё что-то сделать с сортировкой, которую Гугл, как я уже говорил, не предусмотрел.
> особенно жестко когда это окно всплывает при потягивани списка конф вниз.Это можно отключить в настройках. Я так и сделал.
Peter> Можно либо убрать таймаут, или убрать кнопку отмена, или вообще дать возможность дебаг не смотреть? Или в фон пускать фетчер. :) а так супер все.Окно дебага - это та вещь в клиенте, которая тщательно продумывалась мной ещё до его создания.
Peter>> Можно либо убрать таймаут, или убрать кнопку отмена, или вообще дать возможность дебаг не смотреть? Или в фон пускать фетчер. :) а так супер все.
vit01> Окно дебага - это та вещь в клиенте, которая тщательно продумывалась мной ещё до его создания.Верю. Более того, примерно так я это все и представлял. Но одно дело -- логика -- другое -- удобство.
То-есть и в релизе окно дебага будет?
Peter> То-есть и в релизе окно дебага будет?Говорю же, что это ключевой элемент. Поэтому конечно будет.
Peter> Ну можно было в лог писать, например.И в логи оно пишется. Точнее, дублируется.
> Может, тогда не закрывать его самому по тайм-ауту, а всегда ждать нажатия кнопки -- типа -- "принято"?Практика показала, что вручную тыкать на кнопку лень. Да и быстрее оно тоже закрываться не будет.
> Поставил клиент. Настроил свою ноду. ii.syscall.ru. забрал сообщения. Слева нажал настройку станций и удалил tavern. Клиент после выхода в список эх крашится. Запустить снова тоже не получается. Крашится на старте.Молодец, поймал нехороший баг. У меня на планшете тоже так разок было, но отследить его не получилось.
1. Для телефонов с Root:
1. Ставим вот это приложение: https://f-droid.org/repository/browse/?fdfilter=alogcat&fdid=rs.pedjaapps.alogcatroot.app
2. Запускаем.
3. Запускаем клиент, воспроизводим баг
4. Возвращаемся в приложение для сборка логов, прокручиваем в нужное место, делаем скриншот. Критические ошибки там красным цветом выделяются
2. Для всех остальных, которые без рута
3. Включаем настройки разработчика, если они ещё не включены
4. В настройках разработчика выбрать пункт "Отладка по сети"
5. Ставим приложение: https://f-droid.org/repository/browse/?fdfilter=logcat&fdid=com.tananaev.logcat
Оно дожно позволить смотреть логи без рута
> Клиент нужен, но лично для меня есть объективный минус: тормозит на большом числе сообщений (>2000).
Тут можно обходное решение делать. Заходишь на экран "Дополнительно", там есть вкладка с базой данных. Можно обрезать содержимое эх, когда в них скапливается большое количество сообщений.
Новостные эхи вроде ii://lor-opennet.17 я иногда подчищаю до 50-100 мессаг. Всё равно перечитывать их не буду, так что пусть не захламляются.
Peter> При заборе сообщений появляется окно отладки, в котором вывод фетчера. После того, как забор завершился, окно висит еще около секунды. В этот момент я судорожно начинаю давить кнопку <. Он говорит мне что дебаг закрывать нехорошо.Я бы тоже окно дебага убрал бы. Тоже периодически надоедает, да ещё и не понятно что оно там выводит и зачем мне это. Лучше писать эту инфу в файл, а сообщения загружать в фоновом сервисе. Человек при ошибке тебе и файл отправит.
btimofeev> Я бы тоже окно дебага убрал бы. Тоже периодически надоедает, да ещё и не понятно что оно там выводит и зачем мне это. Лучше писать эту инфу в файл, а сообщения загружать в фоновом сервисе. Человек при ошибке тебе и файл отправит.Но что бы ты предложил взамен? Безликие прогрессбары?
> Но что бы ты предложил взамен? Безликие прогрессбары?Я бы вообще в фоне фетч производил.
> Ошибка может заключаться не только в выбросе Exception, но и в том, например, что клиент отказывается фетчить какую-то эху. Или начинает качать все сообщения подряд (и его тогда прибивать надо), или мудрит с построением индекса (то есть начинает слишком мелкими или большими порциями забирать его).Тогда этот фетчер надо заменить. Я ума не приложу как такое поведение можно реализовать даже, а ты его отслеживаешь.
>> Но что бы ты предложил взамен? Безликие прогрессбары?Не у всех же безлимитный и дешёвый мобильный интернет, чтобы загружать канал раз в N минут. Если ты имеешь в виду в виде уведомления наверх ставить, то это тот же прогрессбар, от которого мало пользы
AL> Я бы вообще в фоне фетч производил
AL> Тогда этот фетчер надо заменить. Я ума не приложу как такое поведение можно реализовать даже, а ты его отслеживаешь.Ну вот исходник, сможешь хотя бы примерно разобраться в алгоритме построения индекса?
>> Я бы вообще в фоне фетч производилНу так это тут и не при чём. Просто нажал кнопку, оно в фоне качается.
> Не у всех же безлимитный и дешёвый мобильный интернет, чтобы загружать канал раз в N минут.
> Если ты имеешь в виду в виде уведомления наверх ставить, то это тот же прогрессбар, от которого мало пользыА пользователю больше и не надо. Ему надо видеть только два состояния: качается и скачалось.
> Ну вот исходник, сможешь хотя бы примерно разобраться в алгоритме построения индекса?Вот честно, я в java ни в зуб ногой. Могу попробовать разобраться, но толку от меня будет мало.
> https://github.com/vit1-irk/idec-mobile/blob/master/app/src/main/java/vit01/idecmobile/Core/Fetcher.java
> После 23 апреля я уже нашёл те баги в фетчере и переработал его, но паранойя осталась. А вдруг ещё что-нибудь эдакое будет?Сделать дебаг-окно опцией, ИМХО, самое мудрое решение. Если случился баг и я его могу повторить, то я включу и скрин сниму. Если же повторить не удастся, то я с первого раза один фиг не пойму что произошло и скрин не сделаю. Но клиент твой и тебе его развивать. Мы с Петром просто пользовательские ощущения описываем.