#  Re: idec mobile
vit01 (mira, 1) → vit01  –  12:41:00 2017-05-13

В новой сборке:

1. Черновики проверяются по хэшу. Так что если вы случайно что-то процитировали или просто ничего не написали (и нажали кнопку назад), то такие "пустышки" будут автоматически удалены при отправке.

Вообще, для такого специально есть кнопка удаления в меню, но ведь всякое бывает.

// Однако если отправлять сообщения стрелочкой во внутреннем редакторе, то оно уйдёт в принудительном порядке. Спамерам на заметку :)

2. Починил функцию "Пометить почту прочитанной" на главном экране. Теперь очищаются непрочитанные в NavDrawer'е, да и сама операция запускается в отдельном потоке, дабы не раздражать юзера.

APK как обычно: https://ii-net.tk/ii/files/app-debug.apk
#  Re: idec mobile
Andrew Lobanov (tavern,1) → vit01  –  05:07:30 2017-05-12

>> Вроде недавно как раз ты говорил, что у тебя эта информация обновляется только при старте и после фетча, а теперь выходит, что всегда.
> Я говорил, что эта информация *должна* обновляться всегда, в том числе там, где ты сейчас написал.

Нафига её обновлять когда она заведомо не меняется? Количество сообщений меняется только после фетча. Зачем их считать каждый раз?

> А ты говорил, что после фетча и ещё когда-то она НЕ обновляется, хотя надо бы.

Я писал, что проблема была в кривом обновлении, которое возникает без смены версии. Ты ж не предупреждал нигде, что перед обновлением нужно сносить старую версию.

>> Я ничего нового в поведении клиента не наблюдал с тех пор, как понял, что он у меня не обновлялся.
> Тогда какие вопросы? Если клиент старой версии, то багрепорты протухли. Придётся добавлять в каждый клиент запись: собрано dd:MM:YYYY HH:mm, чтобы таких недоразумений больше не возникало

Эху не читай @ сразу отвечай. Я таки смог обновить сабж, хотя и не без матюков (кто ж знал, что он не обновляется при обновлении?). И проблема не о том вообще.

>>> И да, именно к тебе обращаюсь. В обновлённых сборках я добавил Toast с надписью "Debug: update echolist". Ты уже попользовался клиентом, так что описывай мне теперь его поведение.

>> Читать далее
#  Re: idec mobile
vit01 (mira, 1) → Andrew Lobanov  –  10:56:26 2017-05-13

AL> Соответственно при фетчинге один из узлов валится по таймауту. Если при этом нет новых сообщений, то появляется сообщение о проблеме со связью:
AL> Это от таймаута?

Да. По тексту на скриншоте ты мог и сам догадаться :)

Если это напрягает, то можешь либо уменьшить таймаут в настройках клиента, либо периодически отключать одну из станций от фетча.

А коль у тебя рутованный телефон, то можно оставить всего одну таверну, подменяя айпишник парой тыков в приложении Hosts Editor (есть в F-Droid). Там это очень удобно галочкой сделано. На твоём месте я именно так и организовал бы фетч.
#  Re: idec mobile
Andrew Lobanov (tavern,1) → vit01  –  05:46:40 2017-05-11

>> Как-то сильно сабж стал после обновлений тормозить при переходе на список конференций. Он точно в базу не лезет за каждым разом?
> Вообще-то лезет. Раньше запросы в базу делались асинхронно, и лично ты жаловался, что у тебя при прокрутке список дёргается.
> Решил сделать так, чтобы информация в эхах делалась в один момент, а затем кэшировалась, чтобы не мешать прокрутке.

Вроде недавно как раз ты говорил, что у тебя эта информация обновляется только при старте и после фетча, а теперь выходит, что всегда.

> И ведь специально написал, что оно поменялось. Но тогда всем было пофиг.

Мне не пофиг, но я понял так, что ты сделал это оптимизировано.

>> Как будто он каунты в базе без индекса считает.
> Именно так и происходит. Могу в обновлении индекс создать, благо API это позволяет безболезненно сделать.

Индексы существенно ускоряют обращение к базе. Проверял на толстой базе от цезия и EeePC 701 4G. Подсчёт числа сообщений каждой эхи отдельно (включая lenta.rss) выходил меньше секунды.


>> Читать далее
#  Re: idec mobile
Andrew Lobanov (tavern,1) → vit01  –  16:01:56 2017-05-13

>> Соответственно при фетчинге один из узлов валится по таймауту. Если при этом нет новых сообщений, то появляется сообщение о проблеме со связью:
>> Это от таймаута?
> Да. По тексту на скриншоте ты мог и сам догадаться :)

Да я и догадался, но решил уточнить =)

В любом случае, ситуация достаточно редкая.

> Если это напрягает, то можешь либо уменьшить таймаут в настройках клиента, либо периодически отключать одну из станций от фетча.

Видимо, так и сделаю.

> А коль у тебя рутованный телефон, то можно оставить всего одну таверну, подменяя айпишник парой тыков в приложении Hosts Editor (есть в F-Droid). Там это очень удобно галочкой сделано. На твоём месте я именно так и организовал бы фетч.

К сожалению, телефон у меня не рутованный и мне как ламеру тщедушному рутовать его боязно.
#  Re: idec mobile
vit01 (mira, 1) → Peter  –  11:20:58 2017-05-13

Этот баг я уже исправил у себя в IDE.
Подождите немного, сегодня ещё сборка будет.
#  Re: iing
vit01 (mira, 1) → Andrew Lobanov  –  10:53:49 2017-05-08

AL> Четверть экрана съедена панелью браузера и фиксед-панелью сайта.

Не у всех четверть (здесь от размера экрана и dpi зависит), но окей, понятно.

AL> Я лучше кнопку "наверх" внизу прилеплю.

О, а это отличная идея. Ждём кнопку :)
#  Re: idec mobile
vit01 (mira, 1) → Andrew Lobanov  –  06:19:59 2017-05-12

AL> Нафига её обновлять когда она заведомо не меняется? Количество сообщений меняется только после фетча. Зачем их считать каждый раз?

После чистки по ЧС, после удаления/обрезки эх. А ещё счётчики непрочитанных имеются, но тут всё понятно.

Если основательно взяться за ускорение алгоритма, то надо будет не мгновенный кэш, а постоянный делать + усложнять некоторые штуки. Посмотрим сначала, как оно с индексами вести себя будет.

AL> Ты ж не предупреждал нигде, что перед обновлением нужно сносить старую версию.
AL> Я таки смог обновить сабж, хотя и не без матюков (кто ж знал, что он не обновляется при обновлении?).

Старую версию и не надо сносить. Новая всегда должна вставать поверх без всяких проблем.
А какие там циферки при установке APK отображаются (1.0 или 1.1), абсолютно не имеет значения. Считайте, что они для красоты.

AL> Так что это за тост такой? За здравие?

Я имел в виду вот этот тост: https://developer.android.com/guide/topics/ui/notifiers/toasts.html

>> Читать далее
#  Re: idec mobile
Andrew Lobanov (tavern,1) → vit01  –  03:00:52 2017-05-11

Как-то сильно сабж стал после обновлений тормозить при переходе на список конференций. Он точно в базу не лезет за каждым разом? Просто на моей кукурузе каждое открытие списка эх приводит к гарантированному фризу на несколько секунд. Как будто он каунты в базе без индекса считает.
#  Re: idec mobile
Andrew Lobanov (tavern,1) → Peter  –  10:26:38 2017-05-13

> Обновился. Вроде баг. В списке эх нажал пометить все как прочитанные а в меню слева -- счетчик новых сообщений остался 84. При нажатии на них -- пишет, что новых сообщений нет.

У себя такого не заметил. Странно.
#  Re: idec mobile
Andrew Lobanov (tavern,1) → vit01  –  09:47:46 2017-05-13

Спасибо за индексы. Теперь оно просто молниеносно открывает список конференций. Шикарно.
#  Re: idec mobile
vit01 (mira, 1) → Andrew Lobanov  –  03:46:20 2017-05-12

AL> Вроде недавно как раз ты говорил, что у тебя эта информация обновляется только при старте и после фетча, а теперь выходит, что всегда.

Я говорил, что эта информация *должна* обновляться всегда, в том числе там, где ты сейчас написал. А ты говорил, что после фетча и ещё когда-то она НЕ обновляется, хотя надо бы.

AL> Я ничего нового в поведении клиента не наблюдал с тех пор, как понял, что он у меня не обновлялся.

Тогда какие вопросы? Если клиент старой версии, то багрепорты протухли. Придётся добавлять в каждый клиент запись: собрано dd:MM:YYYY HH:mm, чтобы таких недоразумений больше не возникало

>> И да, именно к тебе обращаюсь. В обновлённых сборках я добавил Toast с надписью "Debug: update echolist". Ты уже попользовался клиентом, так что описывай мне теперь его поведение.

AL> Если бы я знал что это такое, то описал бы обязательно.

Теперь, когда выяснилось, что твой багрепорт с "недообновлением" списка оказался ложным, то смысла в этом деле уже не вижу. Уберу потом.

AL> Индексы существенно ускоряют обращение к базе.

>> Читать далее
#  Re: idec mobile
vit01 (mira, 1) → Andrew Lobanov  –  05:06:48 2017-05-11

AL> Как-то сильно сабж стал после обновлений тормозить при переходе на список конференций. Он точно в базу не лезет за каждым разом?

Вообще-то лезет. Раньше запросы в базу делались асинхронно, и лично ты жаловался, что у тебя при прокрутке список дёргается.
Решил сделать так, чтобы информация в эхах делалась в один момент, а затем кэшировалась, чтобы не мешать прокрутке.

2016-10-17: зарождение проблемы
https://ii-net.tk/ii/ii-point.php?q=/m/PrfA3gIzuoLcJxBxNWDA
https://ii-net.tk/ii/ii-point.php?q=/m/S8EjA80dlL7gXAlQSiGq

2017-04-14: изменил поведение
https://ii-net.tk/ii/ii-point.php?q=/m/FTPVc3A8jLmx6tGxxRX0

И ведь специально написал, что оно поменялось. Но тогда всем было пофиг.

AL> Как будто он каунты в базе без индекса считает.

>> Читать далее
#  Re: iing
vit01 (mira, 1) → Andrew Lobanov  –  05:50:46 2017-05-10

>> О, а это отличная идея. Ждём кнопку :)
AL> Есть кнопка.

Когда поворачиваю телефон, кнопка исчезает. Может быть, оставить её насовсем (хотя бы в уменьшенном виде?)

+ тестировал масштабирование _главной страницы_ в Pale Moon на нетбуке; там есть такой переходный момент, когда содержимое вылазит за пределы экрана. Мобильная версия начинает включаться, если увеличиваешь ещё больше.
#  Re: idec mobile
Andrew Lobanov (tavern,1) → vit01  –  07:32:01 2017-05-12

>> Нафига её обновлять когда она заведомо не меняется? Количество сообщений меняется только после фетча. Зачем их считать каждый раз?
> После чистки по ЧС, после удаления/обрезки эх. А ещё счётчики непрочитанных имеются, но тут всё понятно.

Ну так и дёргать пересчёт из этих функций. Счётчики вот да, но я не знаю как ты их реализовал. Даже если это просто флаг в базе, то всё равно выходит в два раза меньше селектов, если общее число кешировать и пересчитывать только по необходимости.

>> Ты ж не предупреждал нигде, что перед обновлением нужно сносить старую версию.
>> Я таки смог обновить сабж, хотя и не без матюков (кто ж знал, что он не обновляется при обновлении?).

> Старую версию и не надо сносить. Новая всегда должна вставать поверх без всяких проблем.
> А какие там циферки при установке APK отображаются (1.0 или 1.1), абсолютно не имеет значения. Считайте, что они для красоты.

Тем не менее, эта проблема встречается и не только у меня. Может, дело в старом ведре, а может в кривой вендорской прошивке, но я и андроид-версию инстеда так же тестил: сперва сносить, потом ставить. Как раз потому, что из-за статичной версии оно криво обновлялось.

Я бы всё таки такие вещи учитывал, так как андроид - это всегда зоопарк.


>> Читать далее
#  Re: idec mobile
Peter (syscall,1) → Andrew Lobanov  –  11:03:10 2017-05-13

Точный алгоритм воспроизведения.
1. Потянули вниз список эх. Фетч.
2. Справа вверху пометили все как прочитанные
3. Выдвинули шторку слева
4. Видим что там счетчик не изменился (не 0)
#  Re: idec mobile
Andrew Lobanov (tavern,1) → vit01  –  10:25:10 2017-05-13

Есть небольшой вопрос. У меня дважды настроена таверна: для глобала и локала. Соответственно при фетчинге один из узлов валится по таймауту. Если при этом нет новых сообщений, то появляется сообщение о проблеме со связью:

http://spline-online.tk/stuff/docs/pics/Screenshot_2017-05-13-15-18-06.png

Это от таймаута?
#  Re: idec mobile
Peter (syscall,1) → vit01  –  10:16:29 2017-05-13

Обновился. Вроде баг. В списке эх нажал пометить все как прочитанные а в меню слева -- счетчик новых сообщений остался 84. При нажатии на них -- пишет, что новых сообщений нет.
#  Re: idec mobile
vit01 (mira, 1) → vit01  –  08:25:56 2017-05-13

Обновление

1. Добавлен индекс в базу данных. Фризы при переходе на список эх должны уменьшиться.
2. Изменено версионирование. Теперь это дата и время сборки. Кстати, их можно посмотреть из менюшки NavDrawer'а (в самом низу). Специально сделал, чтобы убрать путаницу, когда присылают багрепорты.

Можно спокойно обновляться поверх, клиент сам всё сделает (sqlite имею в виду)

Андрею обновляться обязательно. Борису просьба посмотреть build.gradle и высказаться в скрытоэхе

APK: https://ii-net.tk/ii/files/app-debug.apk
#  Re: iing
Andrew Lobanov (tavern,1) → vit01  –  15:23:04 2017-05-08

>> Я лучше кнопку "наверх" внизу прилеплю.
> О, а это отличная идея. Ждём кнопку :)

Есть кнопка. Заодно исправил сползание кнопок в основом интерфейсе, страницу ответа и расползание по ширине блоков <pre>.
#  Re: Странно
vit01 (mira, 1) → Andrew Lobanov  –  06:56:53 2017-05-07

>> Но что бы ты предложил взамен? Безликие прогрессбары?
AL> Я бы вообще в фоне фетч производил

Не у всех же безлимитный и дешёвый мобильный интернет, чтобы загружать канал раз в N минут. Если ты имеешь в виду в виде уведомления наверх ставить, то это тот же прогрессбар, от которого мало пользы

AL> Тогда этот фетчер надо заменить. Я ума не приложу как такое поведение можно реализовать даже, а ты его отслеживаешь.

Ну вот исходник, сможешь хотя бы примерно разобраться в алгоритме построения индекса?
https://github.com/vit1-irk/idec-mobile/blob/master/app/src/main/java/vit01/idecmobile/Core/Fetcher.java

Ещё в прошлом месяце я получал багрепорты о странном поведении фетчера, хотя у меня самого оно практически не проявлялось.
А если бы всё в фоне скачивалось? Тогда бы просто было что-то вроде "клиент лагает", и починить баг было бы нельзя.

После 23 апреля я уже нашёл те баги в фетчере и переработал его, но паранойя осталась. А вдруг ещё что-нибудь эдакое будет?
#  Re: Странно
Andrew Lobanov (tavern,1) → vit01  –  06:17:29 2017-05-07

> Но что бы ты предложил взамен? Безликие прогрессбары?

Я бы вообще в фоне фетч производил.

> Ошибка может заключаться не только в выбросе Exception, но и в том, например, что клиент отказывается фетчить какую-то эху. Или начинает качать все сообщения подряд (и его тогда прибивать надо), или мудрит с построением индекса (то есть начинает слишком мелкими или большими порциями забирать его).

Тогда этот фетчер надо заменить. Я ума не приложу как такое поведение можно реализовать даже, а ты его отслеживаешь.
#  Re: idec mobile
vit01 (mira, 1) → vit01  –  04:09:16 2017-05-07

Обновление:
Включены багрепорты по Email (с помощью Acra). Теперь не нужно делать adb logcat и всячески извращаться.

Просто устанавливаете новую версию поверх текущей, ловите падение, и информация об ошибке прилетит ко мне на мыло.
Уже сам проверял - работает.

APK: https://ii-net.tk/ii/files/app-debug.apk
#  Re: iing
vit01 (mira, 1) → Peter  –  07:33:12 2017-05-08

Peter> Короче, только не это!!! Fixed панели это ужасно. Почти как iframe.

1. Не надо сравнивать тёплое с мягким :)

2. Fixed-панель может быть довольно удобной. Вот, например, https://developer.android.com/reference/android/support/v4/widget/NestedScrollView.html
// Первый сайт, который вспомнил.

Как вариант, можно продублировать кнопки навигации внизу.
Или включать fixed только для мобильных устройств, а для десктопов - оставить как есть.

Просто мысли вслух. Наверняка ещё что-нибудь придумать можно.
#  Re: idec mobile
vit01 (mira, 1) → Peter  –  08:07:39 2017-05-07

Peter> 1) следует избегать "жаргонов" и обращений на "ты" в сообщениях (окно дебуга, сообщение про слеш в конце урл) итд,

Надо сказать, разговорная речь есть не только в этих местах, а раскидана по всему клиенту. Изначально хотелось, чтобы приложение для "уютной секточки" общалось с пользователем не официально-деловым стилем, а было немного "проще в выражениях".

Это можно взять и поменять. А можно и не менять ;)

Тут пусть народ выскажется. Как решит большинство, так и будет.

Peter> 3) с убиранием кнопки "<" стало лучше!

Коммитить так и не стал, потому что статусбар исчезает, а это не есть красиво. Рано или поздно всё равно придётся что-то делать.

Peter> Почему 2-3 секунды?
Ровно 2 секунды. Чтобы успеть всё прочитать. И скриншот, конечно.


>> Читать далее
Powered by iii-php v0.11