Max
ничего)
defaultConfig { … ndk { abiFilters "armeabi-v7a", "x86”, … } }
Roman
Добрый вечер всем. Гайз у меня тут АПИ возвращает данные в разном представлении, один раз массивом, второй раз как объект. Респонс в JSON, для парсинга юзаю GSON. Как качественно парсить такую петрушку? Может кому попадалось такое, буду рад совету)
Roman
можно попробовать оборачивать в try catch как воркароунд
и писать две разных модели для парсера, одну с массивом, вторую с объектом?
Roman
ну как вариант. Просто первый раз попал такой бредняк. Ну типизированные респонсы это вообще норм, нет?
Serg
и писать две разных модели для парсера, одну с массивом, вторую с объектом?
у мнея такое было - возвращали даты в разных форматах, короче никакой дисциплины...решалось както так https://gist.github.com/SergeyBurlaka/e0031842d4bdd7a0d32d78811c2f7bbc
Виталий
Добрый вечер всем. Гайз у меня тут АПИ возвращает данные в разном представлении, один раз массивом, второй раз как объект. Респонс в JSON, для парсинга юзаю GSON. Как качественно парсить такую петрушку? Может кому попадалось такое, буду рад совету)
У меня с АПИ такая же фигня. Просто написал методы для чтения из одного формата в другой. К примеру ожидаю что бдует число, то проверяю на все совместимые форматы - доступна также строка для конвертирование в число. Также есть проблема с массивами и словарями - пустые словари порой заменяются пустыми массивами, а вместо массивов юзаются словари с индексами числовыми по порядку. Тут тоже есть конвертер - пустой словарь и массивы легко конвертируются друг в друга, словарь тоже может конвертироваться в массив, просто сортировка по ключу. Такая фигня у меня на любом уровне вложенности, поэтому парсер то один, но чтение полей идет через мои методы, в которых указано что я планирую получить просто и если это можно получить - преобразовывается
Виталий
Pavel
http://prntscr.com/i11wla
Унаследовать класс от ProgressBar, переопределить в метод onDraw(), в котором сначала вызвать родительский метод, а потом нарисовать фигурку
Andrey
Всем привет, в job sheduler нельзя выстраивать задачи в группы? чтобы отпралять их по очереди?
Yernar
Всем привет. Как называет бар который идет выше actionbar-a? там где отображаются заряд батареи и т.д. статус бар?
‍Yap
Status bar
Seva
Всем привет. Такой вопрос. В вебе есть понятие UserAgent которое предоставляет инфу о пользователе. А в мобилках, какую нормализованную информацию мы можем получить о пользователе?
Seva
ОС, версия. а ещё что?
Deni
ид девайса, модель, версию системы, гео и т.д
Loki
https://gist.github.com/shadowwa1k3r/ec54ccbccdedfd77cadf1195d82394ba Здраствуйте, помогите правильно сформироват онтачлисенер , нужно при тапе сработало, а это даже при свайпе сработает,
Алексей
ID девайса уникальный?
https://developer.android.com/training/articles/user-data-ids.html
Loki
тогда проверяй MotionEvent.ACTION_UP
уже, без реакции на такое
Казбек
Ищу помощника на постоянной основе. Могу заплатить 10.000 руб в месяц. Требуемые знание Android studio, PHP, html, css. Подробнее в лс
Loki
у осмдроида не видел то что слушает клик по полигону
Loki
не гугловские
Loki
да уже рылся там можно проверит какой полигона сработал онтап, только если туда передать мошн ивент
Andrey
А что можно для миддлов почитать?
Günter
Всем привет. Подскажите пожалуйста, как сделать запрос разрешений в play market для Android > 4.4? Находил пример приложения в магазине, где приложение запрашивает разрешение на доступ к местоположение, камере в play market. И после установки не запрашивает разрешения, а сразу имеет доступ.
Andrey
Спасибо
Алексей
Это взаимоисключающие вещи, старая и новая система разрешений. От старой скоро откажутся совсем. Если поставите targetSdk 22, то у вас проверка пермишшенов всегда будет возвращать true.
Günter
@alaershov Окей, спасибо. Пойду объяснять тогда почему нет
Artem
Добрый всем день. Не подскажете, вот если я работаю на java уже 5 лет в web разработке и хочу научится делать приложения под Андроид, стоит ли это делать на java? или же уже лучше на Kotlin перелесть сразу?
Marat
Добрый всем день. Не подскажете, вот если я работаю на java уже 5 лет в web разработке и хочу научится делать приложения под Андроид, стоит ли это делать на java? или же уже лучше на Kotlin перелесть сразу?
лучше сначала на java изучать, у меня есть пример нескольких ребят, которые в такой же ситуации были. просто так ты будешь изучать чисто платформу, а если выберешь котлин, то придеться изучать ещё и язык, хотя на него не трудно с джавы перейти)
Artem
Огромное вам, человеческое спасибо)
Roman
Добрый всем день. Не подскажете, вот если я работаю на java уже 5 лет в web разработке и хочу научится делать приложения под Андроид, стоит ли это делать на java? или же уже лучше на Kotlin перелесть сразу?
Java вполне себе подойдёт. До недавнего времени другого варианта и не было. И сейчас некоторые не желают на Котлин переходить. Если уже знаете Джаву, логично будет на ней с Андроидом и знакомится :)
Evgeniy
Sergey Mitrofanov
Igor
что? откуда java 6?)
Что, активно в работе стримы и comletablefuture юзаешь 🤔
Marat
Что, активно в работе стримы и comletablefuture юзаешь 🤔
нет, но во первых, как минимум 7 java, во вторых есть перенос лямбд, в третьих с 24 api java 8 уже доступна
Sergey Mitrofanov
Сейчас бы костылями обмазываться или под Android 7 писать 🤦‍♀️
Под 7-ой андроид в продакшн писать можно только если 100% уверен, что у клиентов будут 7+ девайсы ) И даже после этого много вкусняшек только суппорт либе и живут, так что без нее в 99% случаев никак )
Евгений
Коллеги, подскажите, пожалуйста. Когда я в Retrofit2, в интерфейсе указываю возвращать @GET("/profile/{LsId}/{Bid}/api/products") Observable <List<Product>> , тогда проблем нет. Но если я указываю, что нужно возвращать Observable <Product>, тогда возникает ошибка "Expected BEGIN_OBJECT but was BEGIN_ARRAY". Product - это объект который парсится из Json. В итоге я хочу получить "поток" продуктов, но получаю целиком все продукты в List. Как мне получить "поток" продуктов?
Igor
Под 7-ой андроид в продакшн писать можно только если 100% уверен, что у клиентов будут 7+ девайсы ) И даже после этого много вкусняшек только суппорт либе и живут, так что без нее в 99% случаев никак )
Если писать под 5.0/5.1 минимум, то и без support library вроде норм живется. Дизайн там уже материал и если делаешь что-то просто, то новые-системный API особо не нужны. Писать конечно надо на Kotlin.
Marat
и на выходе у тебя получится Observable<Product>
Sergey Mitrofanov
Если писать под 5.0/5.1 минимум, то и без support library вроде норм живется. Дизайн там уже материал и если делаешь что-то просто, то новые-системный API особо не нужны. Писать конечно надо на Kotlin.
Ага, только будут танцы как минимум с рантайм пермишеннами. А если использовать AppCompatActivity, то все будет совместимо без лишней писанины, а это в суппорт либе...
Marat
Только не map а flatMap, вроде
точно, просто вместо observable можно вернуть список продуктов
Marat
Спасибо!
обновил сообщение) пожалуйста
Evgeniy
обновил сообщение) пожалуйста
Так твой map ничего не делает) И дальше пойдёт всё тот же Observable<List<Product». Всётаки там flatMap нужен и твой первый вариант
Igor
Зачем тебе runtime першишен, если что-то простое пишешь 🌚
Вообще я за отказ от support-library 😎 Хватит поощрять Android фрагментацию и неспособность Google поддерживать актуальность системы, сбрасывая все проблемы на девелоперов.
Sergey Mitrofanov
Зачем тебе runtime першишен, если что-то простое пишешь 🌚
Зачем писать что-то настолько простое, что на это не повлияют никакие изменения в 6, 7 и 8 версиях? ) Кроме учебного проекта на ум больше ничего не приходит...
Marat
"методкоторыйвозвращаетObservable<List<Product>>".flatMap() и внутри flatMap вернуть return Observable.from(списокпродуктов)
Evgeniy
👍
Sergey Mitrofanov
Вообще я за отказ от support-library 😎 Хватит поощрять Android фрагментацию и неспособность Google поддерживать актуальность системы, сбрасывая все проблемы на девелоперов.
А я наоборот за. Потому что она избавляет от сооружения костылей вокруг того зоопарка багов и особенностей, которые живут и никогда не будут исправлены в релизных версиях )
Sergey Mitrofanov
Хотя когда я начинал, то тоже был против...
Igor
Хотя когда я начинал, то тоже был против...
> Потому что она избавляет от сооружения костылей вокруг… Так просто ставь мин-версию ту, под которую таргетишь. > Хотя когда я начинал, то тоже был против… А я наоборот >5 лет жую это кактус, но параллельно пишу под iOS и меня сейчас начал бесить Android.
Igor
> RecyclerView, MediaSessionCompat Это норм. Я про appcompat/supprtfragment > iOS 7 Я писал, но это было очень давно (немножко страдал от отсутвия stackview). Сейчас ради этого 1% уже никто не будет парится (ну может быть какой-нибудь yandex) Если у меня будет 100kk юзеров, то я тоже начну.
Vladimir
всем привет! есть какой-нибудь сервис для тестирования UI, чтобы тестировщик мог залить билд и мышкой накликать сценарий теста?
Igor
Все не жалею что перешел на ReactNative - все как-то проще стало.
Andrei
Ребята, всем привет, подскажите, есть какие-то подробные гайды как делать сложные кастомные вьюхи? Может книжки какие, в которых это рассматривается, а не просто пишут, что надо переопределить метод onDraw. Заранее спасибо