LINUX.ORG.RU
ФорумMobile

Приложение LOR для Android

 ,


21

20

В этой теме буду сообщать о прогрессе разработки мобильного приложения.

Репозиторий на Github

Последний залитый debug APK (если ссылка битая - собирайте из исходников)

Благодарю за материальную поддержку najlus, NeverLoved



Последнее исправление: mcgeek (всего исправлений: 3)

Ответ на: комментарий от vostrik

нормальная авторизация

Должно легко реализовываться через куки

гораздо меньшая нагрузка на сервер

Ну, это к макскому, хочет меньшую нагрузку - пусть ревьюит пуллреквесты. Но он просто может не хотеть этого делать, и винить его нельзя. P.S. Вон, скоро новый сервак подвезут. Как раз для допнагрузки :3

расширяемый и менее костыльный код

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

должна быть хотя бы уверенность в том, что CI отлавливает p0 и p1 баги, после этого можно уже думать о приеме коммитов. в честь возвращения собирался как раз заняться этим

В написании тестов не смыслю, если от этого станет лучше или будет проще добавить новый функционал - я только «за».

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

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

а потом, например, перетаскивать всю эту логику в приложение для iOS? звучит не очень. мне кажется, имеет смысл предусмотреть возможность дешевого перехода с парсинга на API

В написании тестов не смыслю, если от этого станет лучше или будет проще добавить новый функционал - я только «за».

станет гораздо проще ревьюить пуллреквесты, не только APIшные.

vostrik ★★★☆
()
Ответ на: комментарий от vostrik

перетаскивать всю эту логику в приложение для iOS?

99 USD per membership year

С текущим курсом как-то не очень хочется. Плюс для этого нужен Mac.

имеет смысл предусмотреть возможность дешевого перехода с парсинга на API

Верно, но на какие платформы переносить? Судьба Windows UWP тоже непонятна.

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

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

а про иосное приложение вроде моно говорил что мог бы взяться, если API будет

vostrik ★★★☆
()
Ответ на: комментарий от vostrik

Ребят, а вы не пробовали тупо накидать API к стандалон-парсеру и не выносить моск?

ioway
()
Ответ на: комментарий от mcgeek

С текущим курсом как-то не очень хочется. Плюс для этого нужен Mac.

Всё есть. Но лично я парсить HTML не буду.

Начатое мной и заброшенное за отсутствием прогресса над принятием кода апи приложение тут https://github.com/Anakros/LinuxOrgRu-iOS.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от vostrik

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

Уходить от парсинга стоит, когда появится необходимость в фиче, которую реализовать им невозможно. Пока что все, что приходит в голову, реализуемо. С другой стороны, если вдруг что-то понадобится, через API это будет реализовать проще. И здесь получается интересная вещь. Поскольку заранее знать, что понадобится, невозможно, то даже если принять в репозиторий API, то все равно к тому моменту придется снова отправлять пуллреквесты и ждать. Возвращаемся к вопросу о кураторе PR.

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

Поскольку заранее знать, что понадобится, невозможно, то даже если принять в репозиторий API, то все равно к тому моменту придется снова отправлять пуллреквесты и ждать. Возвращаемся к вопросу о кураторе PR.

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

vostrik ★★★☆
()
Ответ на: комментарий от vostrik

Почему никто раньше не отписал, что заняться всем этим пока некому?

Deleted
()
Ответ на: комментарий от mcgeek

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

а потратить кучу времени на обходные маневры заранее зная что любые изменения DOM могут привести к былинному отказу а не анализ и реализацию API того стоило?

exception13 ★★★★★
()
Ответ на: комментарий от exception13

Времени было потрачено не так много, код легко заменяется на вызовы к API. Другое дело, что сейчас мне структура приложения более ясна, чем до внедрения парсинга, и API спланировать будет проще.

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

Уходить от парсинга стоит, когда появится необходимость в фиче

Серьезно? На куцем устройстве молотить страницы - хорошая перспектива оставить пользователя без батареи через некоторое время.

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

Серьезно? Записывай:

1. Выделяешь базовые сущности: - Пользователь - Пользовательские роли - Пост - Комментарий

2. Для каждой сущности определяешь правила сериализации 3. К каждой сущности добавляешь дельта-лог 4. ???? 5. PROFIT

ioway
()
Ответ на: комментарий от ioway

На куцем устройстве молотить страницы - хорошая перспектива оставить пользователя без батареи

Без пруфов это пустые слова, тем более, что основной потребитель энергии - дисплей.

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

Не трать время на споры с пуристами. Абстрактно — они правы, но и только.

Virtuos86 ★★★★★
()
Ответ на: комментарий от mcgeek

Без пруфов это пустые слова, тем более, что основной потребитель энергии - дисплей.

Объясняю еще раз. Интенсивное использование проца повышает его напрягу == батарея расходуется интенсивней. Это раз, второе - какие ты пруфы хочешь? Того что питание у проца зависит от интенсивности использования? Или что?

ioway
()
Ответ на: комментарий от ioway

Интенсивное использование проца повышает его напрягу == батарея расходуется интенсивней.

Интенсивное использование проца

Интенсивное

А теперь пруф, что парсинг HTML через Jsoup, даже не регекспами, интенсивно нагружает процессор. Хотя о чем я прошу, пруфов же не будет.

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

Хотя о чем я прошу, пруфов же не будет.

Первый и последний раз: http://imgur.com/OYY6obq

1. Посмотри на память, при том, что твое приложение не делает практически ничего - каждый запрос грузит проц на ~40%, а так как у тебя ни функционала, ни локального стораджа, ну вот от слова вообще, оно уже насосало 12 метров.

2. Посмотри на красные всплески - это твои запросы.

Видимо когда мы говорили о приложении - мы говорили о совсем разных вещах. Так что дерзай. Тебе еще пилить и пилить.

ioway
()
Ответ на: комментарий от mcgeek

И чуть не забыл - убери это говно ака «рендер в память» из build.gradle - не у всех пользовательские процессы имеют права писать в рутовый темп.

ioway
()
Ответ на: комментарий от vostrik

в честь возвращения

Хорошо, когда хорошие люди возвращаются.

собирался как раз заняться этим

Можно в этом как-то поучаствовать? Мне для саморазвития.

winlook38 ★★
()
Ответ на: комментарий от winlook38

ну первый этап не особо распараллеливается: скачиваешь код, ставишь jacoco или cobertura (хотя лор вроде на 8й жаве, а её кобертура не саппортит), прогоняешь тесты, смотришь репорт. а дальше этот репорт можно анализировать и покрывать тестами нужные куски, попутно делая ревью существующих тестов, а то в моей практике слишком часто встречались тесты, которые не тестировали вообще ничего. тут по идее можно параллельно работать.

vostrik ★★★☆
()
Ответ на: комментарий от vostrik

Отлично, ключевые слова для гугления есть. Спасибо.

winlook38 ★★
()

Раз уж появилась какая-то активность, может быть стоит сделать под это дело канал в ирке рядом с #lor для заинтересованных?

Deleted
()
Ответ на: комментарий от ioway

Спасибо.

грузит проц на ~40%

Меньше.

а так как у тебя ни функционала, ни локального стораджа, ну вот от слова вообще, оно уже насосало 12 метров.

Не вижу связи. Что подразумевается под «локальным стораджем»?

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

Не вижу связи.

Твое приложение должно хавать 5-6 метров со всем про всем. Нет локального хранилища ни постоянного (локальной базы или тупо json - файла) ни временного (массив моделей в памяти), значит что тут у нас? Оно течет. Вобщем ставь канарейку и смотри. 70% вероятности у тебя течет recycleradapter.

ioway
()
Ответ на: комментарий от tazhate

Приложение еще не готово к релизу, см. GitHub.

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

По крайней мере после того, как будет сделано API.

ОК, я просто от ведра как-то отказался. Желаю успехов и терпения)

andrew667 ★★★★★
()
Ответ на: комментарий от Deleted

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

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

Мне всё равно, хоть Slack, хоть телеграм, хоть опенсорсный Mattermost.

Deleted
()
Ответ на: комментарий от mcgeek

Хотя, может это и надуманно. Все равно все где-то хранится.

mcgeek
() автор топика
Ответ на: комментарий от ioway

Вобщем ставь канарейку и смотри. 70% вероятности у тебя течет recycleradapter.

Поставил. GC стабильно идет после ~12.7 МБ и снижается до 5. Причем адаптер явно течет, так как использование памяти возрастает при прокрутке даже без загрузки данных. Но утечка не показывается. Я что-то не так делаю? Просветите, пожалуйста.

mcgeek
() автор топика
24 марта 2016 г.
Ответ на: комментарий от vostrik

Запилил чатик lor-api на jabber.ru. Сегодня опять отвалился парсер :(

mcgeek
() автор топика
Ответ на: комментарий от mcgeek

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

vostrik ★★★☆
()
5 августа 2016 г.

Можно понаглеть и попросить собрать apk? Ссылка битая, сам собрать может и смогу, но нужно вникать (не занимался android приложениями). Просто посмотреть хотелось.

aquadon ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.