Роман
потом опять заход в приложение
Роман
пересоздаются?
Кирилл
Нет
Кирилл
Оно же не заново открывается. А если заново - потоки мертвы.
Роман
что эти потоки делают?
Роман
если искать решение, максимально приближённое к правильному, надо: 1. сделать Service, который управляет запуском и выключением потоков в зависимости от состояния счётчика 2. Счётчик приращивается на 1 при запуске любого фрагмента (onStart) 3. Счётчик уменьшается на 1 при завершении любого фрагмента (onStop)
Роман
сервис внутри приложения можно не снабжать механизмами межпроцессного взаимодействия, потому это всё будет крайне простенько сделать
Роман
@Gabrodih я тебе говорю )))
Кирилл
@Gabrodih я тебе говорю )))
Ну так ты деляй когда пишешь.)) Я же тут работаю параллельно.)))
Роман
последовательно
Кирилл
сервис внутри приложения можно не снабжать механизмами межпроцессного взаимодействия, потому это всё будет крайне простенько сделать
Я думал над этим, но по сути так модель которая сейчас есть - её с головой на все кейсы. Но спасибо.😌
Роман
вэлкам
thegr1f
Вечер добрый. Есть ли возможность экранировать символ "?" в pathPattern или pathPrefix для deep link? Нужно, чтобы срабатывало на https://example.com/path? Вот после вставки "?" не работает, пробовал также кучей "\"
thegr1f
thegr1f
Запихать в строковый ресурс в CDATA
Можно пример? Ну т.е. я понимаю, что в strings будет строка с CDATA, как именно строка будет выглядеть?
Роман
<string name="path_pattern"><![CDATA[/path?p=123]]></string>
Роман
<data ... android:pathPattern="@string/path_pattern" ... />
Роман
Надеюсь, сработает )))
thegr1f
Надеюсь, сработает )))
Неа, ни prefix ни pattern)
Роман
А если android:pathPattern="/path\?p=123" ?
Роман
Неа, ни prefix ни pattern)
Because '\' is used as an escape character when the string is read from XML (before it is parsed as a pattern), you will need to double-escape: For example, a literal '*' would be written as "\\*" and a literal '\' would be written as "\\\\". This is basically the same as what you would need to write if constructing the string in Java code.
Роман
android:pathPattern="/path\\?p=123"
Роман
а что получается по факту?
thegr1f
а что получается по факту?
В смысле? не может резолвить и всё
Роман
Смотри
Роман
https://stackoverflow.com/questions/4762251/android-matching-a-url-pattern
Роман
Возможно, поможет
Роман
https://stackoverflow.com/questions/35645414/android-deep-linking-with-multiple-query-parameters
thegr1f
Облазил уже все возможные ответы, сюда в крайнем случае пишу)
Роман
https://developex.com/blog/example-of-mobile-deep-links-for-android-app/
Роман
Последний вариант, как мне кажется, совсем твой
thegr1f
Последний вариант, как мне кажется, совсем твой
Там показано, как собственно получить параметры, а мне нужно, чтобы скажем срабатывало только на определённый параметр p
Роман
Видимо, без программирования совсем никак.
Alexey
https://regex101.com
Alexey
path\?p=123
thegr1f
Вот тут отдебаж свой регексп
И как же мы сами не додумались. Только вот синтаксис в дип линке != regex
Alexey
Да? Не знал
thegr1f
The pathPattern attribute specifies a complete path that is matched against the complete path in the Intent object, but it can contain the following wildcards: An asterisk ('*') matches a sequence of 0 to many occurrences of the immediately preceding character. A period followed by an asterisk (".*") matches any sequence of 0 to many characters.
Alexey
Зачем тогда знак вопроса экранировать?
Кирилл
Подскажите пожалуйста по поводу Retain Instance в фрагменте: мне нужно чтобы запущенные потоки не завершались тогда, когда происходит поворот экрана. Но когда пользователь уходит с экрана - потоки нужно останавливать. В какой метод положить вызов отчистки?
Вдруг кому интересно - нашёл идеальное isRemoving Это свойство true только если фрагмент отсоединен. То есть если ты перешёл, например, в галерею или камеру из приложения - isRemoving == false. И при повороте тоже. Поэтому для очистки делаю в фрагменте if (isRemoving) presenter.onCleared()
Кирилл
@roman_vasilenko
Максим
ребят
Максим
а имеется возможность разработать андроид софт, который будет иметь спец версию под хромоось?
Максим
Ну, понимал, что с ноута запущен?
Petr
Всем привет, есть быстренький проект на 1-2 часа, подправить запуск html 5 игр внутри, и немного подрихтовать дизайн. Перед праздником, лучшее что можно сделать, это подзаработать денег) Напишите в личку, подробности скину кому интересно
Maksim
Подскажите как написать программу на андроид которая в которой используется NFC(что то на подобии Google Pay) пасиб заранее
Yuri
Подскажите как написать программу на андроид которая в которой используется NFC(что то на подобии Google Pay) пасиб заранее
очевидно сперва надо почитать документацию по nfc для андройда либо начать со статей. https://habr.com/ru/company/intel/blog/194344/
Александр
Всем привет. Осваиваю navigation (jetpack). Есть ли возможность настроить навигацию в xml так чтобы при нажитиях на BttomNavigationView фрагменты не помещались в стек. Вобщем нужно что бы при возврате назад из любого пункт bottom меню происходил выход из приложения
Александр
Переопредели onBackPressed, если я правильно понял
это как вариант. Но все же хочется что нибудь из коробки навигации получить. Спс
Yakiv
Всем привет. Что вы использовали для unit тестов и почему? Для чего: Clean architecture and Moxy P.S. Склоняюсь к варианту junit + mockito + kotlin mockito
Kopusha
классическая связка, ещё для ассертов что-то добавь, типа assetj или что-то похожее
Yakiv
в смысле, можешь скинуть пару строк, как ты его юзаешь?
Kopusha
зайди на сайт assertj, у них классный сайт 🙂. Мокито для моков, но иногда ты будешь писать обычные проверки типа assertTrue и тд. Те ассерты, что идут с junit уродские и примитивные
Kopusha
есть много других либ, которые дают fluent api + доп методы для коллекций и тд
Алексей
гугл рекомендует http://google.github.io/truth/ , тоже довольно неплохо
Kopusha
aasertJ это стандарт для джавы, проверено годами. Работает и в котлине, но для котлина есть и куча других либ. Но я как-то наступил на пару грабель и решил не экспериментировать.
Kopusha
ну вот, теперь и truth какой-то. Я пробовал assertk и fast-assert. Вернулся к assertJ. Развлекайся, короче!🙂
Kopusha
плохой интероп с джавой у mockk
Kopusha
если это нужно
Yakiv
Не нужно.
Yakiv
@yehorh @kopusha спасибо за советы 🙏🏿
Kopusha
о, вспомнил, я atrium пробовал, не assertk. Но там мейнтейнер пошёл потом в каждой версии api менять и я решил, что слишком стар для таких игр.
Kopusha
mockk умеет экстеншены мокать (почти всегда), но выглядит так себе и скорее признак плохого кода, раз такое понадобилось. Вообще, я не очень понимаю хайп. Когда не спрошу, ответ: "да он же на котлине написан, мимими"!. Ну, пиздец теперь, если это показатель хоть чего-то...
Yakiv
Поднял руку на святое))
Yehor
В мокито не помню как там с этим