George
sampling
Спасибо
Mike
но вообще, любая обучалка по профайлеру должна объяснять, как этим пользоваться
Eugene
Привет народ! За что гугл плей так может? У меня из такого в аппке только внутрениие покупки Вы не можете выбрать группы младше 13 лет, потому что рейтинг ESRB для вашего приложения – подростки или старше.
Eugene
Нет рекламы и тд
Astar
Привет всем. Парни, у меня глупый вопрос про поиск дубликатов.. На языке Kotlin Суть: Есть ArrayList с кастомным типом (например класс Person), в котором вполне возможно заваляется дубликат. Класс Person к примеру может иметь поля: имя, фамилия, возраст. А я например не хочу что бы с одинаковыми фамилиями было 2 или более. Как мне удалить эти дубликаты?
Anonymous
Парни, что лучше использовать для проигрывания mp3 файлов по ссылке? штатный медиа плеер или exoplayer?
Astar
а возможно например Stream Api как в Java использовать?
Astar
Типа такого persons.stream().filter(distinctByKey(Person::getName))
Александр
Да ёлки, што происходит с моими сообщениями. Шадоубан подвезли чтоль.
Val
Типа такого persons.stream().filter(distinctByKey(Person::getName))
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.sequences/distinct-by.html
Александр
Типа такого persons.stream().filter(distinctByKey(Person::getName))
personList.distinctBy { person -> person.lastName }
Astar
personList.distinctBy { person -> person.lastName }
Вау! Так просто? Спасибо огромное
Astar
Начинаю любить котлин
Александр
heh.
Kozimjon
народ, можно скопипастить вопрос с чата стартандроид?
Александр
народ, можно скопипастить вопрос с чата стартандроид?
Тебе скорее в Rx чат его нужно адресовать.
Kozimjon
Тебе скорее в Rx чат его нужно адресовать.
ага понял, спасибо, пойду туда
Konstantin
Народ не подскажите как можно узнать если какая-то аппликация использует определенный порт USB
Konstantin
Или порт занят другой операцией
Аброр
всем привет. Есть ли какой нибудь плагин, с помощью которого можно было видеть локальную sqlite базу?
Vadim
Регистрируешь экземпляр класса, наследующего твой абстрактный. Сам абстрактный класс нельзя инстанцировать...
я пересмотрел немного флоу и сделал что то подобное в абстрактном классе добавил следующий метод abstract class PollingServiceAbs<T> : LifecycleObserver { fun register(lifecycle: Lifecycle) { lifecycle.addObserver(this) } в презентере в onCreate: fun onCreate(lifecycle: Lifecycle) { pollingService.register(lifecycle) } и после этого во фрагменте: presenter.onCreate(lifecycle) но что то всё равно уходит из под внимания
Аброр
Anonymous
Здравствуйте, подскажите пожалуста, может ли телефон с настройкой - имитировать аномалию (монохромный режим) расходовать больше батареи, нежели когда эта настройка отключена.
Mike
Это лютейший пиздец. Любое добавление фич потребует переписывания конвертеров. А ради чего?
Mike
Я видел тестовое (погода), сделанное таким подходом.
Mike
Ну и зачем это?)
Александр
~ Oh shi
Mike
Ага, теперь вместо одного DTO на одну фичу будет три (одинаковых?) DTO, это ли читаемость?
Металлов
Здарова, че это room ноет что я пытаюсь достать данные в основном потоке, хотя я делаю это в другом
neikist
Не, это имеет смысл если по какой то причине моделька сетевая неудобная например. Но наверно проще api попросить поправить
Металлов
приложение не падает, ту ошибка происходит в другом потоке
Mike
Наоборот. Нужно новое поле — протаскивай его через все слои.
Kanstantsin
Наоборот. Нужно новое поле — протаскивай его через все слои.
тут нужна золотая середина, использовать одну модель с бэка сразу UI тоже очень печально, в UI точно должны быть только используемые поля
neikist
Не, это имеет смысл если по какой то причине моделька сетевая неудобная например. Но наверно проще api попросить поправить
О, еще это имеет смысл если нужен какой то объект составной, но в базе хранящийся раздельно ибо и раздельные части смысл имеют.
Стас 🍕🍕🍕
если в руме и в апи в неодинаковом виде хранятся то точно имеет смысл мапить
Стас 🍕🍕🍕
neikist
Kanstantsin
Потому что я видел потом во что это превращается, когда одна модель, кто-то туда пихает свои чисто клиентские поля, кто-то ещё что, и потом приходит тебе такая моделька в 300 строк(на Java) и попробуй разберись что тебе надо, а что не надо
neikist
решается агрегацией отдельных частей.
Не всегда это удобно. Иногда объект тоже цельный сам по себе и каждый раз из свойств тащить запчасти - ну такое
Kanstantsin
решается агрегацией отдельных частей.
а если с бэка тебе приходят данные в 3-х запросах ? ты будешь Triple тягать какой или отдельную ещё модель ? хотя с каждого объекта тебе нужно пусть по 2 поля из 5 только
Konstantin
решается агрегацией отдельных частей.
а бывает и наоборот когда пару свойств надо на одном экране показать а апи отдает жирную модель
Konstantin
как бэ, зачем ее всю тащить
Kanstantsin
тут надо делать большие модели для слоя логики, и разделять их уже для presentation, и в presentation только поля которые реально там нужны, а не вся модель
neikist
не цельный, если он хранится раздельно :)
Не, например объект представляет собой модель которой нужно часть полей из разных таблиц. А не все поля из них. Но все это имеет смысл только вместе
Kanstantsin
Наркомания, тут бэкэндщику надо навалять.
отлично, когда это удается сделать, а если у тебя бэк под какой веб или ваще third party ?
Konstantin
Наркомания, тут бэкэндщику надо навалять.
он в другой галактике на аутсосе
neikist
Короче как обычно все в ИТ "it depends"
Kanstantsin
ты ж понимаешь что например для веба и мобилке не всегда делают разные методы, и порой получаешь реально кучу полей, непонятных, если ещё data классы создаются гениратором каким, ох я видел такое, просто добавляют поле и перегенерировали модельки, а ты такой берешься, там огромные модели, и сиди дебаж что ваще где там пустое оказалось на UI )
Kanstantsin
но меня тоже напрягает, гонвертировать одну модель 3 раза
Kanstantsin
в одно и тоже, для простых кейсов )
Mike
ммм, дата-классы
neikist
Ну речь шла изначально про сетевую модельку, модельку для domain и для базы
Kanstantsin
ммм, дата-классы
у меня на одном проекте например модели один были что приходили с бэка и в UI сразу, и они были и так немаленькие, а индусы туда ещё писали поля клиентские которых и не было на бэке с аннотацией @Expose - вот была лютая дичь там на Java, когда миллион полей, и непонятно почему какие-то не заданы даже, и на бэке их нет, и когда их задавать )
Kanstantsin
а потом вся эта дичь летела в С++ фреймворк ещё, и там тоже отличные ребята делали, ошибки были нечитабельные совсем, и понять какое из полей не задано и почему, когда ловишь краш, было прям реально сложно очень ( Вообщем я не выдержал этого проекта (
Kanstantsin
Может, transient, а не expose?
для Firebase expose было
Konstantin
а зачем они там если не секрет. у мня тож куча их но реального применения именно нагенерированых плюшек мало, можно было в нескольких местах просто руками дописать
Konstantin
copy - отличная штука. Как и toString из коробки. Можно и дописать, но зачем?
ну я знаю что копи отличная штука, в презентейшене она для зачем?
Konstantin
прилетела новая жирная модель и это мапится в новый инстанс, т.е. от предыдущего он не зависит
neikist
ну я знаю что копи отличная штука, в презентейшене она для зачем?
Я использую во ViewModel иногда. Пригождается когда меняешь одно поле и обновляешь лайвдату
Hars
Здраствуйте. Задача такая, нужно сделать эмулятор максимально похожим на реальное устройства, т.е сгенерировать и поменять все необходимые параметры. Кто0то может подсказать какие параметры нужно менять и как их лучше генерировать. Понятно что бесплатно никто не будет это делать, поэтому о цене договоримся.
Hars
Какие параметры?
проблема именно в то, что я этого не знаю.
Anonymous
Для того чтобы рисовать poligon на google map нужен платный аккаунт ?
Yakov
проблема именно в то, что я этого не знаю.
Гугли как чекнуть что приложения запущено на эмуляторе, и от тех констант уже гугли конкретику
Dmitry
Товарищи, кто-нибудь сталкивался с таким: В коде пакет класса com.example.good.MyClass; JNI ругается на java.lang.UnsatisfiedLinkError: No implementation found for void COM.BAD.ONE.GOOD.MyClass
Dmitry
Invalidate and restart, sync gradle with project files, а также удаление всего и вся уже пробовал
Dmitry
Более того, у меня вообще нет пакета COM.BAD.ONE.GOOD в проекте