Сообщения в Парсер ссылок для Цезия

Re: Android клиент

Ответ на сообщение
vit01> На Гитхаб, конечно же, залью, но до первой доступной версии пусть здесь побудет.
Может лучше сразу на гитхаб? Там все же удобнее.
btimofeev to vit01 (2016-08-29 15:51:46) [ссылка]

Re: Android клиент

Ответ на сообщение
vit01>> На Гитхаб, конечно же, залью, но до первой доступной версии пусть здесь побудет.
btimofeev> Может лучше сразу на гитхаб? Там все же удобнее.
Или хотя бы в архив запакуй, ибо wget мне рекурсивно 10 минут что-то там качал, а в ииоге половины файлов нет и проект не компилируется. Но лучше на гитхаб.
btimofeev to btimofeev (2016-08-30 03:35:19) [ссылка]

Re: Android клиент

Ответ на сообщение
Готово: https://github.com/vit1-irk/idec-mobile

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

С чем есть проблемы:

1. Нужен виджет редактирования списка эх. Что-то вроде ListView, только с возможностью править/удалять/добавлять элементы и перемещать их вверх/вниз.
2. Обязательно нужна DebugActivity для работы фетчера
3. Нужен Custom ListViewAdapter для списка сообщений в эхе.
vit01 to btimofeev (2016-08-30 04:16:50) [ссылка]

Re: Android клиент

Ответ на сообщение
vit01> 1. Система конфигурации и настроек (стандартного SharedPreferences для клиента уже мало, а JSON в джаве очень трудно разгребать)
А в чем проблема с SharedPreferences (я с ними никогда не работал)?

А с json просто работать через библиотеку https://github.com/google/gson Я в одной программе её использовал, она объект конвертирует в json или наоборот - json в объект. Но я смотрю ты и стандартными средствами java примерно так же сделал.
btimofeev to vit01 (2016-08-30 16:39:26) [ссылка]

Re: Android клиент

Ответ на сообщение
vit01> Готово: https://github.com/vit1-irk/idec-mobile
Спасибо, буду изучать.
vit01> 3. Нужен Custom ListViewAdapter для списка сообщений в эхе.
Здесь лучше через RecyclerView, он не хранит весь список в памяти, а подгружает по необходимости, но работать с ним сложнее и "из коробки" имеет меньше фич.
btimofeev to vit01 (2016-08-30 16:45:36) [ссылка]

Re: Android клиент

Ответ на сообщение
Я тут накатал демку как я примерно представляю себе nav drawer в этом приложении. Apk можно скачать по ссылке https://www.dropbox.com/s/if3winyztues63b/material-drawer-test.apk

Как вариант можно убрать круги и сделать верхнюю часть меньшей высоты.
btimofeev to vit01 (2016-08-30 21:56:44) [ссылка]

Re: Android клиент

Ответ на сообщение
Так, перейдём сюда, чтобы людей не смущать. Как раз эхотаг.
btimofeev> А в чем проблема с SharedPreferences (я с ними никогда не работал)?
1. Чтобы хранить вложенные значения, нужны костыли. Например, люди предлагают всё тот же JSON
2. PreferenceActivity, который работает в связке с этим делом, имеет скудный набор виджетов (например, те же кастомные списки для эхолиста не сделать вообще)
3. Надо реализовывать всё через PreferenceFragment; это довольно небыстро (для кодинга в том числе) и заставляет пользователя дольше кликать, чтобы добраться до нужной настройки
btimofeev> А с json просто работать через библиотеку https://github.com/google/gson
Да, уже слышал про гсон: люди на том же Stackoverflow его постоянно советуют. Но, во-первых, хочется обойтись без внешних библиотек на нижнем уровне (для GUI ещё можно), во-вторых, когда я мельком взглянул на исходники этого чуда, сразу поплохело :)
vit01 to btimofeev (2016-08-31 00:54:57) [ссылка]

Re: Android клиент

Ответ на сообщение
btimofeev> Я тут накатал демку как я примерно представляю себе nav drawer в этом приложении.
Ага, посмотрел. Представляю себе его как раз так же. Правда, со всякими значками и с дизайном возиться пока лень (лишь бы работало).

Дал тебе RW-доступ в репозиторий; коль желание есть, можешь прикрутить самостоятельно.
vit01 to btimofeev (2016-08-31 00:54:58) [ссылка]

Re: Android клиент

Ответ на сообщение
Уи-и-и! Какие вы клёвые. Нативный клиент под андроид это ж прям сказка =)
Andrew Lobanov to vit01 (2016-08-31 02:53:19) [ссылка]

Re: Android клиент

Ответ на сообщение
Да ты чего, он ещё настолько сырой, что ни отобразить ничего (кроме списка эх), ни зафетчить пока не может :)

Пока только терпение; может быть, через месяц что-то готово будет.

// прямо сейчас сижу и шаманю над фетчером
vit01 to Andrew Lobanov (2016-08-31 03:07:52) [ссылка]

Re: Android клиент

Ответ на сообщение
> Да ты чего, он ещё настолько сырой, что ни отобразить ничего (кроме списка эх), ни зафетчить пока не может :)
Главное, что процесс пошёл =)
> Пока только терпение; может быть, через месяц что-то готово будет.
Месяц это скоро. Есть повод порадоваться, что вообще в обозримом будущем оно будет.
> // прямо сейчас сижу и шаманю над фетчером
А я тут некоторые баги в цезии пофиксил. Правда баг в фетчере/мейлере не могу понять откуда берётся (когда из-за недоступности ноды они решают, что нода ответила msg ok и трут toss-файлы).
Andrew Lobanov to vit01 (2016-08-31 03:53:17) [ссылка]

Re: Android клиент

Ответ на сообщение
Итак, текущий прогресс:

1. Появилась DebugActivity
2. Наконец-то работает фетчер!
3. Исправлены кое-какие баги в интерфейсах, связанные с опечатками и с моим незнанием Java

Тем, кто любит смотреть на скриншоты, будет пока только это:

https://ii-net.tk/ii/files/AUgAQ7fULbo1WrXVADm2.png
https://ii-net.tk/ii/files/zQRRcxAASQY7HzSmpCRY.png

На Гитхабе оно уже есть, конечно же.
vit01 to vit01 (2016-08-31 05:59:10) [ссылка]

Re: Android клиент

Ответ на сообщение
vit01> Дал тебе RW-доступ в репозиторий; коль желание есть, можешь прикрутить самостоятельно.
Хорошо, займусь этим. Но я буду использовать библиотеку Material Drawer, вместо реализации из библиотеки Design, она проще в использовании, кода меньше, никаких xml файлов и она использует библиотеку Android-Iconics для отображения векторных и шрифтовых иконок (последнее оказалось удобной штукой, не нужно качать кучу иконок разных размеров, просто указываешь имя иконки в шрифте, а библиотека сама масштабирует).
btimofeev to vit01 (2016-08-31 06:13:41) [ссылка]

Re: Android клиент

Ответ на сообщение
> 1. Появилась DebugActivity
> 2. Наконец-то работает фетчер!
> 3. Исправлены кое-какие баги в интерфейсах, связанные с опечатками и с моим незнанием Java
Круть!
> Тем, кто любит смотреть на скриншоты, будет пока только это:
> https://ii-net.tk/ii/files/zQRRcxAASQY7HzSmpCRY.png
А будет возможность читать по одному сообщению на экран и переключаться между ними свайпом?
Andrew Lobanov to vit01 (2016-08-31 06:21:03) [ссылка]

Re: Android клиент

Ответ на сообщение
Хорошо, делай на своё усмотрение.

Кстати, RecyclerView, насколько видно по документации, довольно неплохая штука.
Попробую прикрутить его после того, как кое-какие свои баги наисправляю.
vit01 to btimofeev (2016-08-31 06:29:14) [ссылка]

Re: Android клиент

Ответ на сообщение
AL> А будет возможность читать по одному сообщению на экран и переключаться между ними свайпом?
Да, это планируется. Только вот надо сначала базовые вещи до ума довести.

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

Если буду писать клиент каждый день, то за месяц, наверное, юзабилити какое-то появится :)
vit01 to Andrew Lobanov (2016-08-31 06:36:47) [ссылка]

Re: Android клиент

Ответ на сообщение
AL>> А будет возможность читать по одному сообщению на экран и переключаться между ними свайпом?
> Да, это планируется. Только вот надо сначала базовые вещи до ума довести.
Я на всякий случай спросил. На тему базовых вещей я даже в цезии долго возился. Адекватная прокрутка при выборе конференций, отрисовка сообщений, разбиение на строки по ширине терминала. Вот это вот всё.
> Например, фетчер сохраняет сообщения в чёрт знает каком порядке, поэтому приходится сортировать их по дате.
Кстати, странно. Отпишись как разберёшься с проблемой. Интересно в чём причина.
> Ещё в дебаг-окне без автопрокрутки жизнь очень печальная.
Это да.
> И окно конфига для станций надо реализовать как можно скорее.
Вот это больная мозоль у меня. До сих пор не могу решиться взять и написать это для цезия.
> Если буду писать клиент каждый день, то за месяц, наверное, юзабилити какое-то появится :)
Да не суть. Хоть в подарок на НГ %)
Andrew Lobanov to vit01 (2016-08-31 06:50:21) [ссылка]

Re: Android клиент

Ответ на сообщение
По поводу версий sdk и библиотек: ты не можешь использовать buildtools выше 23.0.1? Support библиотеки 24 версии тоже не работают? Просто чтобы не получилось что я обновлю версии, а у тебя компилироваться не будет.

И у тебя есть jabber или что-то подобное, возможно некоторые вопросы было бы удобнее в чате решать. (мой jabber btimofeev@jabber.ru)
btimofeev to vit01 (2016-08-31 07:04:16) [ссылка]

Re: Android клиент

Ответ на сообщение
btimofeev> По поводу версий sdk и библиотек: ты не можешь использовать buildtools выше 23.0.1? Support библиотеки 24 версии тоже не работают? Просто чтобы не получилось что я обновлю версии, а у тебя компилироваться не будет.
buildtools точно не получится.

Support-библиотеки (support, design, appcompat) только что поменял на 24 ради эксперимента. IDE сказала, что, дескать, неправильно разные build-tools под разные библиотеки ставить, но проект пересобрался и вроде работает.

На гитхаб оно только что ушло, посмотри build.gradle

// в джаббер тебя добавил, но ты вроде как оффлайн
vit01 to btimofeev (2016-08-31 07:34:16) [ссылка]

Re: Android клиент

Ответ на сообщение
Что нового:

1. Работает настройка таймаута для сетевых соединений
2. Сделал окно настроек станций (пока нельзя добавлять/удалять сами станции и править список эх, но остальное делать можно) как точную копию подобного из CutieFeed
3. Товарищ btimofeev приделал крутой Navigation Drawer с иконками и нескучными обоями. Спасибо за Pull Request!

И снова скриншоты для наглядности:

https://ii-net.tk/ii/files/vSojhORudrzsetuuhmIb.png
https://ii-net.tk/ii/files/z0Wtpy8382zM6QIuXpWB.png
vit01 to vit01 (2016-08-31 13:01:01) [ссылка]

Re: Android клиент

Ответ на сообщение
А, и ещё четвёртое: теперь можно почистить одним кликом кэш /x/c и всю базу данных сообщений целиком, но это так, мелочи для дебага.
vit01 to vit01 (2016-08-31 13:06:43) [ссылка]

Re: Android клиент

Ответ на сообщение
> Что нового:
> 1. Работает настройка таймаута для сетевых соединений
> 2. Сделал окно настроек станций (пока нельзя добавлять/удалять сами станции и править список эх, но остальное делать можно) как точную копию подобного из CutieFeed
> 3. Товарищ btimofeev приделал крутой Navigation Drawer с иконками и нескучными обоями. Спасибо за Pull Request!
Выглядит очумительно. Прямо глаз радуется.
Andrew Lobanov to vit01 (2016-08-31 14:18:55) [ссылка]

Re: Android клиент

Ответ на сообщение
И вдогонку:

1. Причесал и улучшил код для Navigation Drawer'а, вынес некоторые моменты и сделал обновление списка станций по onResume()
2. Теперь можно добавлять и удалять станции!

Дальше надо бы сделать виджет редактирования списка эх. И вот тут-то вряд ли поможет изобретение велосипеда.
vit01 to vit01 (2016-08-31 16:31:01) [ссылка]

Re: Android клиент

Ответ на сообщение
Уже соскучились по коммитам? Только что отправил в клиент новую годную фичу - универсальное окошко для редактирования списка эх.

Может править как оффлайн-эхи, так и эхи какой-нибудь станции.

Чтобы поправить список, не надо ходить далеко в настройки: просто делаете долгое нажатие на главном экране и попадаете в этот диалог. Изменения отображаются сразу же, наглядно, прямо как в CutieFeed. Это гораздо удобнее, чем было раньше в клиенте ntkrnlmp.exe из 2014 года.

Скриншот:
https://ii-net.tk/ii/files/nw7vOCKxCpTzoyX9legn.png

На сегодня все возможности конфигурирования полностью готовы, и я могу сосредоточиться на главном функционале клиента.
vit01 to vit01 (2016-09-02 14:06:02) [ссылка]

Re: Android клиент

Ответ на сообщение
Текущий прогресс:

1. Сделал дизайн куска сообщения и впихнул его в EchoView-Activity
2. Написал топорный xml для полного просмотрщика сообщений

В планах:

1. Реализовать фрагмент и заодно отдельную активити для просмотрщика сообщений
2. Впихнуть его внутрь ViewPager, чтобы переключать сообщения свайпом
3. Сделать "бесконечную прокрутку" для уже более-менее рабочего RecyclerView
4. Приукрасить всё, чтобы более-менее прилично выглядело (нескучные иконки)
5. Починить баги с DebugActivity, с поиском в БД и c запросом одного отдельного сообщения

Не наступаю ли на где-нибудь на грабли? Можно ли сделать лучше? Вот особенно для пункта 3 сомнения.

В документации пишут, что лучше, дескать, сделать разные активити для разных размеров экранов.
vit01 to vit01 (2016-09-04 14:41:11) [ссылка]

Re: Android клиент

Ответ на сообщение
Если будет удача в исправлении багов, с конца следующей недели планирую выкладывать APK для тестирования.
vit01 to vit01 (2016-09-04 14:49:56) [ссылка]

Re: Android клиент

Ответ на сообщение
Ура, товарищи! С клиента наконец-то можно что-то почитать.

Набор изменений:

1. Починил баг с неправильной сортировкой и с "пропажей" сообщений. Как оказалось, фетчер здесь совершенно ни при чём. Проблема была из-за логической ошибки при запросе данных из Cursor (смотреть файл SqliteTransport.java). Ошибка очень глупая, и стыдно как-то даже.
2. Написал фрагмент для просмотра сообщения и сделал то самое офигенное переключение свайпом! (через ViewPager)

И самое главное - скриншоты:

https://ii-net.tk/ii/files/nXbvLIx9c8ezLBxoHQuW.png
https://ii-net.tk/ii/files/6ajGVdyQxHW2uc73aJrF.png
vit01 to vit01 (2016-09-06 12:28:41) [ссылка]

Re: Android клиент

Ответ на сообщение
> 1. Починил баг с неправильной сортировкой и с "пропажей" сообщений. Как оказалось, фетчер здесь совершенно ни при чём. Проблема была из-за логической ошибки при запросе данных из Cursor (смотреть файл SqliteTransport.java). Ошибка очень глупая, и стыдно как-то даже.
Фигня. Все делают ошибки. И все рано или поздно делают глупые ошибки. А я особенно (история коммитов цезия тому доказательство) =)
> 2. Написал фрагмент для просмотра сообщения и сделал то самое офигенное переключение свайпом! (через ViewPager)
Аааа! Переключение свайпом это офигенно да =)
> И самое главное - скриншоты:
Красотень. Где-нить собраднные apk-шки можно глянуть?
Andrew Lobanov to vit01 (2016-09-06 12:47:34) [ссылка]

Re: Android клиент

Ответ на сообщение
AL> Где-нить собраднные apk-шки можно глянуть?
Обещал к концу недели, но если не страшно смотреть, то вот собрал только что: https://ii-net.tk/ii/files/app-debug.apk

Только сразу говорю - ставить лимит /u/e на значение не больше 10. А то активити эхопросмотра на данный момент грузит всю эху целиком. Постараюсь сделать подгрузку по-человечески в скором времени.
AL> Красотень.
Пока что ещё нет. Над дизайном надо ещё долго заморачиваться (мой идеал - стандартный Email-клиент андроида). Но если что, пулл-реквесты с радостью принимаю. Работа с подстановкой нужных иконок и доведением layout несложная (хоть и долгая).

// Просьба народу хотя бы отписываться, а то в одиночестве допилинг скучнее гораздо.
vit01 to Andrew Lobanov (2016-09-06 13:03:43) [ссылка]

Re: Android клиент

Ответ на сообщение
> Обещал к концу недели, но если не страшно смотреть, то вот собрал только что: https://ii-net.tk/ii/files/app-debug.apk
Обязательно гляну сегодня-завтра.
> Только сразу говорю - ставить лимит /u/e на значение не больше 10. А то активити эхопросмотра на данный момент грузит всю эху целиком. Постараюсь сделать подгрузку по-человечески в скором времени.
Учту.
> Пока что ещё нет. Над дизайном надо ещё долго заморачиваться (мой идеал - стандартный Email-клиент андроида). Но если что, пулл-реквесты с радостью принимаю. Работа с подстановкой нужных иконок и доведением layout несложная (хоть и долгая).
Скажем так, оно выглядит очень неплохо для своего возраста. Но каждый скриншот лично меня порадовал. Насчёт пулл реквестов от меня помощь ждать не стоит. Я джаву даже не знаю. Тем более такие страшные слова, как активити. Но добрым словом и моральной поддержкой помочь могу =)
> // Просьба народу хотя бы отписываться, а то в одиночестве допилинг скучнее гораздо.
Не пропускаю почти ни одного сообщения. Как потыкаю на железке, отпишусь обязательно.
Andrew Lobanov to vit01 (2016-09-06 13:59:58) [ссылка]