[#] Re: Android клиент
vit01(mira, 1) — All
2016-09-28 11:00:45


vit01> Можно попробовать уменьшить эту задержку, чтобы не сильно заметно было.

Уменьшил до 10 мс. Вроде бы, теперь лучше ведёт себя.

AL> Ещё лучше прятать строку "Ответ:-" в случае пустого repto. Но это так. Косметический недостаток.

Сделано

AL> Пока нахожусь на экране редактирования списка все ок. Как только с него ухожу, все новые эхи пропадают.

Исправлено

Difrex> Нужно сделать кнопку быстрого ответа. Чтобы сообщение сразу улетело после написания. Т.е. просто повесить save/push на одну кнопку. :)

И это тоже сделано.

APK уже на сервере, качайте.

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-09-28 12:51:03


Понячий цвет нравится, кстати. Хороший :)

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-09-28 14:12:26

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-09-28 13:11:37


Косяк с отображением сообщения ii://N0PyIsawAJfz1GWzEnAO

[#] Re: Android клиент
btimofeev(mira, 24) — vit01
2016-09-28 20:55:31


Difrex>> Нужно сделать кнопку быстрого ответа. Чтобы сообщение сразу улетело после написания. Т.е. просто повесить save/push на одну кнопку. :)

vit01> И это тоже сделано.

А отправляется только это сообщение или и всё что есть в черновиках?

[#] Re: Android клиент
Difrex(mira, 14) — vit01
2016-09-28 19:12:45


Difrex>> Нужно сделать кнопку быстрого ответа. Чтобы сообщение сразу улетело после написания. Т.е. просто повесить save/push на одну кнопку. :)

vit01> И это тоже сделано.
Круто!

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-10-01 07:13:43


Сегодня улучшения только для экрана "Дополнительно"

1. Добавлены недостающие элементы UI для чёрного списка и действий с БД. Большинство штук пока что не работают.
2. Действия чистки базы данных и кэша перенесены туда с главного меню
3. Можно удалять содержимое одиночных эхоконференций
4. У вкладки /x/file исправлены косяки с дизайном

APK качайте и тестируйте

[#] Re: Android клиент
vit01(mira, 1) — btimofeev
2016-09-29 02:26:15


Difrex>>> Нужно сделать кнопку быстрого ответа. Чтобы сообщение сразу улетело после написания.

vit01>> И это тоже сделано.

btimofeev> А отправляется только это сообщение или и всё что есть в черновиках?

Только это сообщение. И запускается отправка в отдельном Thread. Как помню, у ntkrnlmp.exe было точно так же в клиенте.

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-09-29 11:38:14


AL> Косяк с отображением сообщения ii://N0PyIsawAJfz1GWzEnAO

Исправил баг достаточно грязным хаком. (заменяя символ < на &lt;)

Проблема была в том, что <такой> текст виджет TextView воспринимал как html-теги и удалял.

AL> Понячий цвет нравится, кстати. Хороший :)

А то! Без 20%-го прироста крутости не обойтись :)

Кстати, вот это дело посмотри: https://github.com/vit1-irk/idec-mobile/projects/1

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-09-30 19:07:13


Новое на сегодня:

1. Парсер ссылок теперь распознаёт email-адреса для быстрого открытия системного мылоклиента
2. В слайдере появились пункты меню "В начало" и "В конец"
3. Поддержка /x/file в меню "Дополнительно". Рекомендую протестировать!

Про недочёты в дизайне для фрагмента /x/file я знаю и планирую скоро исправить. Не до свистелок особо было.

APK, как всегда, на том же самом месте: http://ii-net.tk/ii/files/app-debug.apk

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-10-02 12:07:14


Заработали 2 кнопки из меню настроек станций, а именно:

1. Автоконфигурация по /x/features, которая сама расставит галочки
2. Получение списка эхоконференций с ноды (с предпросмотром!)

Из нашего IDEC API и из расширений осталось реализовать только поддержку чёрного списка. Остальное уже - дело GUI и юзабилити. Что ж, продолжу допиливать потихоньку.

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-09-29 12:57:26


На сегодня:

1. Через меню главного экрана можно пометить прочитанной всю базу
2. Окно дебага при выходе показывает, сколько сообщений скачано/отправлено

Ну и исправленный баг, но я про него только что писал

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-10-08 14:21:47


AL> А клонирование эх будет?

Механизм фетча здесь полностью аналогичен CutieFeed'овскому.

Для клонирования:

1. Создаёшь новую станцию с таким же адресом
2. Отключаешь в ней расширения IDEC
3. Правишь подписки
4. Скачиваешь сообщения
5. По желанию "выключаешь станцию" в её настройках, чтобы перестать её фетчить (или даже удаляешь)

Так можно, например, создавать сразу несколько разных архивов и пополнять их независимо друг от друга.

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-10-08 15:22:03


AL> Сложновато.
AL> Тут ты хозяин-барин и фичи клиента я впиливать не буду по причине незнания явы. Так что и настаивать не стану :)

Ну да, сложновато. Зато хоть как-то работает :) Пусть даже и путём немного большего числа кликов.
А так всегда сложно достигать гармонии между юзабилити и удобством кодинга, увы.

AL> Ну держать архивы на андроиде это узкий юзкейс. Даже уже клонирования.
AL> Механизм клонирования я создавал с целью целиком выкачать анекдоты или крипоту.

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

Вообще, архивы - это хорошее дело. Поэтому в скором времени планирую импорт/экспорт бандлов, чтобы можно было составить однофайловый дамп на компьютере (через ii-db-utils или idec-utils), импортировать в клиент и не тратить на скачивание время и мобильный трафик.

Всё ведь мечтаю об универсальном африканском клиенте в кармане :)

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-08 13:48:45


Клиент от версии к версии всё краше. А клонирование эх будет?

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-08 14:42:15


AL>> А клонирование эх будет?

vit01> Механизм фетча здесь полностью аналогичен CutieFeed'овскому.

vit01> Для клонирования:

vit01> 1. Создаёшь новую станцию с таким же адресом
vit01> 2. Отключаешь в ней расширения IDEC
vit01> 3. Правишь подписки
vit01> 4. Скачиваешь сообщения
vit01> 5. По желанию "выключаешь станцию" в её настройках, чтобы перестать её фетчить (или даже удаляешь)

Сложновато.

vit01> Так можно, например, создавать сразу несколько разных архивов и пополнять их независимо друг от друга.

Ну держать архивы на андроиде это узкий юзкейс. Даже уже клонирования.

Механизм клонирования я создавал с целью целиком выкачать анекдоты или крипоту.

Тут ты хозяин-барин и фичи клиента я впиливать не буду по причине незнания явы. Так что и настаивать не стану :)

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-10-08 09:58:16


Новая сборка:

1. btimofeev пофиксил ужасно непонятный баг с удалением черновиков свайпом. Теперь всё хорошо, спасибо! см. ii://develop.16

2. На главном экране в списке эх добавлены счётчики сообщений (непрочитанных в том числе) и выделение жирным шрифтом непрочитанных эх. Прямо как в Цезии, очень удобно.

APK: http://ii-net.tk/ii/files/app-debug.apk

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-10-08 15:57:01


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

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-10-11 09:09:26


AL> Включил уведомления, потом выключил, но они продолжают приходить.

Хорошо, попробую разобраться. Видимо, у AlarmManager метод остановки не работает.

В качестве временного избавления от уведомлений выключи станцию с фетча.

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-11 08:24:30


Включил уведомления, потом выключил, но они продолжают приходить.

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-10-10 18:20:21


Сегодня очень важный апдейт: клиент получил поддержку уведомлений.

// Решил пойти по пути наименьшего сопротивления и реализовать фичу только для станций с /x/c

Показывается всё точно так же, как и в ServerListener, то есть для каждой эхи сколько новых сообщений. По щелчку на уведомлении сразу запускается фетчер.

Поведение умное: если пользователь только что зафетчил сообщения, то клиент уже не будет его оповещать о том, что появилось на станции 10-15 минут назад.

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

Внимание: перед обновлением надо очистить кэш /x/c, потому что я поменял место его хранения. Если же не очистите, то в /data/data/vit01.idecmobile/ останется несколько мусорных файлов на пару килобайт. На работе клиента это никак не отразится, однако чувства перфекционистов будут задеты.

APK: http://ii-net.tk/ii/files/app-debug.apk

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-11 09:44:51


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

Помогла перезагрузка устройства.

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-10-17 15:58:21


AL> Кстати, а почему список эх дёргается при прокрутке? Это только у меня так?

Что значит дёргается? Вроде бы нормально себя список ведёт.

Хотя может быть это просто заморочки RecyclerView, который пересоздаёт вьюхи для экономии памяти. Ведь каждая эха в списке - это объект, который запрашивает из базы количество сообщений. А запросы к базе тоже времени требуют.

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-15 21:31:19


vit01> Обновление на сегодня:

Ура-ура! Побежал обновляться.


== Фичареквест

А вот можно ещё фетчинг свайпом сделать отключаемым? А то у меня эхи на экран не входят и при полкрутке наверх я постоянно вываливаюсь в фетчинг. Жить можно, но не очень удобно.

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-10-16 08:06:12


AL> == Фичареквест
AL> А вот можно ещё фетчинг свайпом сделать отключаемым?

Сделано (см. настройки). Обновляйся ещё раз.

Правда, по умолчанию фича и у остальных отключится (потому что при обновлении конфига boolean всегда ставится в false), так что ставьте галочку заново, если пользовались ей.

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-17 16:05:18


AL>> Кстати, а почему список эх дёргается при прокрутке? Это только у меня так?
vit01> Что значит дёргается? Вроде бы нормально себя список ведёт.

При прокрутке происходят тормоза и список прокручивается чувствительными рывками.

vit01> Хотя может быть это просто заморочки RecyclerView, который пересоздаёт вьюхи для экономии памяти. Ведь каждая эха в списке - это объект, который запрашивает из базы количество сообщений. А запросы к базе тоже времени требуют.

Печально. А один раз считать непосредственно весь список не выйдет получается?

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-10-15 20:22:20


Обновление на сегодня:

* Попытался пофиксить баг с уведомлениями, про который Андрей писал. Пока что не знаю, починилось или нет.
* Добавил поддержку http-прокси (доступна также авторизация на проксе)
* Сделал интеграцию с приложением Orbot для повышения удобства работы с Tor

Ради эксперимента поднял на время hidden service и успешно зафетчил на телефон одну эху через Tor.
В общем, клиент теперь устойчив к блокировкам. Даёшь хентай, понево и пропаганду systemd среди совершеннолетних!

APK: http://ii-net.tk/ii/files/app-debug.apk

Торонода Дениса, кстати, до сих пор в дауне.

P.S. Socks-прокси мне завести не удалось (за весь день так и не разобрался), но через обычные http работает как Tor, так и i2p. Кому надо именно Socks, могут воспользоваться Polipo и прочими "преобразователями".

// Далее по плану - тёмная тема оформления. Отдохну пока от внутренностей и займусь свистелками.

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-17 15:47:14


Кстати, а почему список эх дёргается при прокрутке? Это только у меня так?

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-17 20:03:11


AL>> А один раз считать непосредственно весь список не выйдет получается?
vit01> Вообще, я так изначально и хотел реализовать, но тут всё упёрлось в sqlite. Одним запросом count(*) для разных условий не сделаешь. Поэтому решил запихнуть одиночные запросы данных в каждый элемент.

Я эту проблему пытаюсь периодически у себя решить. counts(*) медленный. Даже counts(1) медленный. А вот aio уже вполне сносен. Подсчёт ведётся только при запуске и после фетча. Всё остальное время количество сообщений берётся из списка.

Но с sqlite получается слишком медленно у меня. На нетбуке занимает пересчёт всех существующих эх со всеми сообщениями занимает порядка 3-5 секунд.

[#] Re: Android клиент
vit01(mira, 1) — btimofeev
2016-10-23 10:43:44


Вот протестируй, пожалуйста, а то у меня на эмулятор ОЗУ совсем не хватает. Он просто запуститься не может.

[#] Re: Android клиент
vit01(mira, 1) — btimofeev
2016-10-23 08:33:21


btimofeev> 1. В дефолтной теме в активити настройки станций в экшенбаре название станции черного цвета на фиолетовом фоне не очень выглядит.

btimofeev> 2. В полностью белой теме надпись и иконки в экшенбаре черные, а бургер, стрелка и три точки серые. Надо, наверное, всё серым сделать.

Всё починил и закоммитил.
Кстати, у тебя есть девайс или эмулятор на конкретно Android 5.0 или 5.1? Надо просто проверить внешний вид белой темы, а то не уверен, что она там правильно отображается. Может быть, придётся дописать кое-что в values-v23

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-10-17 18:53:11


AL> А один раз считать непосредственно весь список не выйдет получается?

Вообще, я так изначально и хотел реализовать, но тут всё упёрлось в sqlite. Одним запросом count(*) для разных условий не сделаешь. Поэтому решил запихнуть одиночные запросы данных в каждый элемент.

Как реальный вариант можно сделать что-то вроде кэша в ОЗУ. Цифры будут загружаться всего один раз, а при прокрутке списка его элементы станут обращаться не напрямую к базе, а к этому самому кэшу.

[#] Re: Android клиент
btimofeev(mira, 24) — vit01
2016-10-22 22:27:13


vit01> * Добавлена тёмная тема

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

[#] Re: Android клиент
btimofeev(mira, 24) — vit01
2016-10-22 22:55:04


Еще по поводу тем:

1. В дефолтной теме в активити настройки станций в экшенбаре название станции черного цвета на фиолетовом фоне не очень выглядит.

2. В полностью белой теме надпись и иконки в экшенбаре черные, а бургер, стрелка и три точки серые. Надо, наверное, всё серым сделать.

[#] Re: Android клиент
vit01(mira, 1) — vit01
2016-10-21 19:27:06


Обновление:

* В клиенте доступна поддержка смены тем оформления
* Добавлена тёмная тема

APK: https://ii-net.tk/ii/files/app-debug.apk

[#] Re: Android клиент
btimofeev(mira, 24) — vit01
2016-10-23 08:48:10


vit01> Кстати, у тебя есть девайс или эмулятор на конкретно Android 5.0 или 5.1?

На девайсе у меня 6.0.1, а на эмулятор могу любую версию поставить, это дело пяти минут.

[#] Re: Android клиент
vit01(mira, 1) — btimofeev
2016-10-25 16:26:48


btimofeev> Подскажи, зачем нужна вот эта строчка https://github.com/vit1-irk/idec-mobile/blob/master/app/src/main/java/vit01/idecmobile/MainActivity.java#L70

Она не нужна. Это опечатка. Посмотрел твои замечания на Гитхабе, спасибо за наблюдательность :)

btimofeev> Ты не пробовал сделать изменение темы "на лету", без перезапуска приложения?

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

[#] Re: Android клиент
btimofeev(mira, 24) — vit01
2016-10-25 15:30:44


Подскажи, зачем нужна вот эта строчка https://github.com/vit1-irk/idec-mobile/blob/master/app/src/main/java/vit01/idecmobile/MainActivity.java#L70

Ты не пробовал сделать изменение темы "на лету", без перезапуска приложения?

[#] Re: Android клиент
btimofeev(mira, 24) — vit01
2016-10-23 21:52:50


Протестирую, но не сегодня уже. И что там может быть не так как на шестёрке?

Кстати, я тут включил уведомления для сообщений, а у меня почему-то сразу 2 уведомления выскакивает. Возможно это из-за двух нод. Можно как-то объединить в одно?

[#] Re: Android клиент
vit01(mira, 1) — Andrew Lobanov
2016-10-24 05:43:14


AL> Статусбар выглядит как белое на белом.

Так и знал. Сделаю отдельную запись для values-v23, а на 5 андроид по умолчанию поставлю серый цвет. Или другой какой-нибудь.

[#] Re: Android клиент
vit01(mira, 1) — btimofeev
2016-10-24 03:56:45


btimofeev> И что там может быть не так как на шестёрке?

Параметр темы, отвечающий за тёмные значки статусбара, появился только в шестёрке. Вот мне интересно, реализовали в AppCompat свой костыль для этого или нет.

btimofeev> Кстати, я тут включил уведомления для сообщений, а у меня почему-то сразу 2 уведомления выскакивает. Возможно это из-за двух нод. Можно как-то объединить в одно?

Да, это и есть из-за двух нод. Объединить по идее можно, но это будет не очень просто :)
Потом и этим займусь.

[#] Re: Android клиент
Andrew Lobanov(tavern,1) — vit01
2016-10-24 05:37:12


btimofeev>> И что там может быть не так как на шестёрке?
vit01> Параметр темы, отвечающий за тёмные значки статусбара, появился только в шестёрке. Вот мне интересно, реализовали в AppCompat свой костыль для этого или нет.

Статусбар выглядит как белое на белом.

[#] Re: Android клиент
jmaks(tavern,12) — vit01
2017-07-22 04:01:54


Не работает почему-то authstr, который ты мне выдавал с mira station.
И еще, в idec-mobile, как раз при вводе этой самой authstr, почему бы не сделать строку видимой при первом вводе, потом можно и точками ее закрывать, при настройке эхо станции. Потому как не видно и сравнить нельзя правильно ли ввел посимвольно. И кнопки просмотреть pass нету.

[#] Re: Android клиент
btimofeev(tavern,13) — vit01
2017-07-22 13:46:28


jmaks>> Реквестирую СОХРАНЕНИЕ черновика сообщения

vit01> Он и так должен сохраняться, если ты кнопку "назад" нажимаешь.

Похоже нужно ещё и в onPause сохранять.

[#] Re: Android клиент
vit01(mira, 1) — jmaks
2017-07-22 11:57:27


jmaks> Не работает почему-то authstr, который ты мне выдавал с mira station.

Напиши мне на me@ii-net.tk , разберёмся

jmaks> И кнопки просмотреть pass нету.

Сделаю кнопку

vit01>> Всем обновиться!
jmaks> Я конечно может занудствую, но хотелось бы хоть знать какая теперь версия, что искать для обновления, а то найдешь, да не то.

1. Заходишь на https://ii-net.tk, там есть кнопка
2. Или в самом клиенте в Navigation Drawer'e в списке есть кнопка "Обновиться", она приведёт сразу на APK

jmaks> Реквестирую СОХРАНЕНИЕ черновика сообщения

Он и так должен сохраняться, если ты кнопку "назад" нажимаешь.

jmaks> прошло 15мин, обновилось, упало уведомление, что есть новый мессдж, открыл верхний фолд, нажал, смотрю, ага, работает уведомлялка. Открываю Drafts

Очень странное поведение. Однако я понял примерно, куда копать, спасибо за багрепорт.

[#] Re: Android клиент
vit01(mira, 1) — btimofeev
2017-07-22 14:52:13


vit01>> Он и так должен сохраняться, если ты кнопку "назад" нажимаешь.

btimofeev> Похоже нужно ещё и в onPause сохранять.

Да уже сообразил, чётко видно в исходниках. Но потом, сегодня занят.

[#] Re: Android клиент
jmaks(tavern,12) — vit01
2017-07-22 16:49:31


jmaks>> Не работает почему-то authstr, который ты мне выдавал с mira station.
vit01> Напиши мне на me@ii-net.tk , разберёмся
Пишу.

jmaks>> И кнопки просмотреть pass нету.
vit01> Сделаю кнопку
Отлично.

vit01>>> Всем обновиться!
jmaks>> Я конечно может занудствую, но хотелось бы хоть знать какая теперь версия, что искать для обновления, а то найдешь, да не то.
vit01> 1. Заходишь на https://ii-net.tk, там есть кнопка
vit01> 2. Или в самом клиенте в Navigation Drawer'e в списке есть кнопка "Обновиться", она приведёт сразу на APK
Да, я уж нашел. Вспомнил где брал. Просто у тебя пакет называется всегда app-debug.apk и непонятно, какая версия, какое что.
Было бы понятней если идет ченджлог и версия пакета... типа idec-mobile-1.2.5.apk

jmaks>> Реквестирую СОХРАНЕНИЕ черновика сообщения
vit01> Он и так должен сохраняться, если ты кнопку "назад" нажимаешь.
Так-то да, но вот сегодня поймал странное поведение, и черновик написанный не сохранился, а только созданный.

jmaks>> прошло 15мин, обновилось, упало уведомление, что есть новый мессдж, открыл верхний фолд, нажал, смотрю, ага, работает уведомлялка. Открываю Drafts
vit01> Очень странное поведение. Однако я понял примерно, куда копать, спасибо за багрепорт.
Не за что.