Andrew
Я думаю, у вас травма 🤕 Я "лечился" изучением Haskell и программированием микроконтроллеров 😂
Andrew
Сейчас в свободное от работы время пишу андройд приложение. (на работе используем рельсы - фреймворк, то еще говно)
Mr. Black
И ты уверен, что твой код будет не кривее, чем то, что на маркете?)
Я не уверен, темболее пока не понимаю как это работает. Но никто не запрещает учиться и совершенствоваться
Сыктывкариум
Я не уверен, темболее пока не понимаю как это работает. Но никто не запрещает учиться и совершенствоваться
Для изучения и самосовершенствования - пиши всё сам, я думаю, это полезно.
Ivan
Подскажите, пожалуйста, где можно прочитать о том, как по локации узнать адрес. Заранее спасибо
private fun getAddress(position : LatLng) : String { val geocoder = Geocoder(this, Locale.getDefault()) val addresses: List<Address> return if (NetworkManager.isOnline(this)) { addresses = geocoder.getFromLocation( position.latitude, position.longitude, 1 ) return addresses[0].getAddressLine(0) } else { Log.e(TAG, "no internet") } }
Anton
Не хочу использовать фреймворки. Я из-за этого веб бросил. Спустя год решил андрюшку попробовать 😔
Я хочу тебя расстроить но android это то же фреймворк...Если такой психоз по поводу фреймворков то вот исходники https://github.com/bumptech/glide/tree/master/library . Изучай и пиши свой. Но это реальный прогон.
Andrew
android же это ОС?
Anonymous
android же это ОС?
Да, типо тогою
Anton
android же это ОС?
Неа, это оболочка над Линукс и миюай. Запомни это, иначе собеседование провалишь
Andrew
Начинается)) А что такое Линукс по-вашему?)
Andrew
и что такое оболчка?
Andrew
Я прекрасно понимаю, что ОС под названием андройд включает в себя переработанное ядро Linux, переработанную java машину и поверх накрученный различный "системный" софт)
Andrew
Подскажите, как в андройде преобразововывать ссылки в кликабельные ссылки?
Andrew
Спасибо
Aleksandr
Спасибо
https://developer.android.com/reference/android/widget/TextView.html#attr_android:autoLink
Nameless
Народ, а существуют ли способы из коробки для реализации продвинутой галереи изображений? К примеру хочу, как в телеге - свайп влево/вправо скрол пикч, вверх/вниз - закрытие изображения, щипок - зум. Но главное похожую анимацию - пикча "прилипает к пальцу" и ее можно визуально передвигать и видеть пространство за ней Есть какие-то либы для этого или это все руками делается?
Nameless
Сэнкс
Andrew
фу, кошмар
Ivan
!voteban
Alexey
Сэнкс
https://github.com/Piasy/BigImageViewer вот еще есть, но я не знаю как она работает)
Alexey
по идее декодит по регионам битмап, но на сколько все это с кэшэм правильно работает хз
Sergey F
щипок самому можно сделать
Ivan
Спасибо!!😁👍
не за что)
Антон
Всем привет, как проверить есть ли интернет на определенной сетевой карте? у меня включен wifi (wlan0) и подключен провод (eth0), нужно проверить на какой есть интернет
Антон
ping -I eth0 ya.ru ping -I wlan0 ya.ru
спасиб,проверю
Andrew
Только тут вроде про андройд чатик)
Andrei
Всем привет, вопрос больше по Rx, чем по Android, но вдруг тут есть знатоки) Есть следующая ситуация: Хочу прочитать данные из кеша(используется Flowable), если там ничего нет, то сделать запрос на сервер, сохранить данные в кеш и вернуть их на отображение. Из БД приходит Flowable. Делаю .flatMap внутри которого проверяю пустой список пришел или нет. Если нет, то делаю сетевой запрос и для него снова делаю .flatMap внутри которого перевожу модель из одной в другую и сохраняю в кеш. Так как я сначала спросил у БД, а потом сам запихнул данные в кеш(Flowable), то у меня получется ситуация, что конечному подписчику данные приходят два раза: сначала пустой список, так как в кеше ничего не было, заетм список, который я получил по сети. Вопрос: как этого избежать доставки данных два раза? Если же в кеше что-то есть, то все сработает как надо.
Srg
Есть группа по RX
Srg
https://t.me/rxjavachat
Антон
Только тут вроде про андройд чатик)
так это по андроиду вопрос)
Andrei
Спасибо
Алексей
Всем привет, вопрос больше по Rx, чем по Android, но вдруг тут есть знатоки) Есть следующая ситуация: Хочу прочитать данные из кеша(используется Flowable), если там ничего нет, то сделать запрос на сервер, сохранить данные в кеш и вернуть их на отображение. Из БД приходит Flowable. Делаю .flatMap внутри которого проверяю пустой список пришел или нет. Если нет, то делаю сетевой запрос и для него снова делаю .flatMap внутри которого перевожу модель из одной в другую и сохраняю в кеш. Так как я сначала спросил у БД, а потом сам запихнул данные в кеш(Flowable), то у меня получется ситуация, что конечному подписчику данные приходят два раза: сначала пустой список, так как в кеше ничего не было, заетм список, который я получил по сети. Вопрос: как этого избежать доставки данных два раза? Если же в кеше что-то есть, то все сработает как надо.
фильтруйте данные, приходящие из кэша, на пустоту.
Andrei
фильтруйте данные, приходящие из кэша, на пустоту.
так я сейчас так и делаю возможно, я не тем оператором пользуюсь, потому что if(data.isEmpty) делаю во .flatMap, чтобы потом понять нужно делать запрос или нет
Антон
ping -I eth0 ya.ru ping -I wlan0 ya.ru
не работает, рута на девайсе нет и не будет пишет "2|cheetah-oversea-p1:/ $ ping -I wlan0 ya.ru ping: SO_BINDTODEVICE: Operation not permitted"
Ivan
Всем привет, вопрос больше по Rx, чем по Android, но вдруг тут есть знатоки) Есть следующая ситуация: Хочу прочитать данные из кеша(используется Flowable), если там ничего нет, то сделать запрос на сервер, сохранить данные в кеш и вернуть их на отображение. Из БД приходит Flowable. Делаю .flatMap внутри которого проверяю пустой список пришел или нет. Если нет, то делаю сетевой запрос и для него снова делаю .flatMap внутри которого перевожу модель из одной в другую и сохраняю в кеш. Так как я сначала спросил у БД, а потом сам запихнул данные в кеш(Flowable), то у меня получется ситуация, что конечному подписчику данные приходят два раза: сначала пустой список, так как в кеше ничего не было, заетм список, который я получил по сети. Вопрос: как этого избежать доставки данных два раза? Если же в кеше что-то есть, то все сработает как надо.
вот тебе пример
Ivan
Ivan
ApiCryptoDataStore
Ivan
код немножко уролив, но надеюсь никто камнями не закидает))
Di7aK
вот тебе пример
по приказу к оформлению если уж перевел на новою строку то не потеряй фигурные скобки
Ivan
Di7aK
не слушай меня я бухой else lol.kek;
Di7aK
это типа неправильна
Ivan
ага, а как надо?
Di7aK
в фигурные скобки занести если перенес
Ivan
а понял
Ivan
ну окей, буду знать
Di7aK
что реально рекомендации не читал
Глеб
Ребят, как грамотнее всего реализовать функцию "набирает сообщение"
Глеб
В сокетах приходит евент и надо как бы продолжать набирать а не обновлять
Alexey
Ребят, как грамотнее всего реализовать функцию "набирает сообщение"
по наблюдениям евенты приходят переодически, показывается надпись с таймаутом, если пришло еще одно сообщение о наборе, то длительность показа надписи сбрасывается и т.д.
Denis
Ребят, как грамотнее всего реализовать функцию "набирает сообщение"
а в чем проблема? ивент пришел, вывел где-нибудь “печатает”, запустил сразу же таймер на несколько секунд, по завершении которого прячешь это сообщение. если во время работы таймера ивент пришел еще раз - запускаешь его заново
Anton
Есть RecyclerView у которого android:layout_width="match_parent" android:layout_height="match_parent" У его item то же android:layout_width="match_parent" android:layout_height="match_parent" Но item не показывается на весь экран по высоте. Как его заставить это делать? Если же я RecyclerView заверну в ConstraintLayout и укажу у recyclerview android:layout_width="0dp" android:layout_height="0dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" Тогда item становится на весь экран по высоте
Anton
как без ConstraintLayout заставить показываться по высоте на весь экран ?
Di7aK
чего зачем тебе recycler если ты хочешь показать только один элемент тогда?
Anton
чего зачем тебе recycler если ты хочешь показать только один элемент тогда?
а почему бы и нет ? Просто перелистывание происходит по одному элементу за раз
Di7aK
возми вьюпагер тогда
Anton
А я смогу легко сдружить viewpager с PagedListAdapter ?
Di7aK
а нахера тебе КостыльВелосипедListAdapter когда есть просто адаптер
Anton
а нахера тебе КостыльВелосипедListAdapter когда есть просто адаптер
Да чтобы не реализовывать самому дозагрузку данных из API
Anton
а нахера тебе КостыльВелосипедListAdapter когда есть просто адаптер
У меня есть список элементов из дофига элементов (больше 1000) и API мне возвращает порциями по 10 штук. Нужно перелистывать их по одной штуки за раз. RecyclerView с PagedListAdapter все заморочки с посылкой запроса к API кода нужно дозагрузить делает за меня. А если я возьму ViewPager то мне все это придется делать самому... правильно ?
Anton
а нахера тебе КостыльВелосипедListAdapter когда есть просто адаптер
Да еще и воротить костыль чтобы viewpager стал вертикальным.
Di7aK
думаю это будет сложно и проще узнать высоту recyclrа и назначать ее элементам
Alexey
Привет, подскажите как правильно записать это на котлине val modulesMap : Map<Class<Any>, Any> fun <T>provide() = moduleMap[**???**] as T
Anton
думаю это будет сложно и проще узнать высоту recyclrа и назначать ее элементам
Да проще всего в ConstraintLayout завернуть тогда работает само по себе. Так и сделаю. Просто думал обойтись без ConstraintLayout
Di7aK
я про ***???*** вообще не вкурил