Stanislav
Andrey
Ребят, такой вопрос, как можно повесить анимацию удаление из viewpager?
Ilya
Mihail
А кто подскажет по admob.
У меня приложение отклонено от обновления по причине того, что не стоит галочка COPPA. Но если ее поставить то баннеры в этом приложении мне возвращают ошибку "no fill ads". Так как у admob нет рекламы которая соответствует COPPA.
Кто то уже смог с этим разобраться?
Anonymous
Какая лучшая монетизация сейчас для Андроида?
Tishka17
Самсунг неплохо монетизирует
Даниил
Приветствую. Решил использовать Conductor + Moxy.
Вот реализация https://gist.github.com/infraymer/
Дело в том, что после поворота экрана viewState не вызывается
Mike
Даниил
Чего ты ожидал, а что произошло по факту?
На экране TextView и Button. Нажатие на кнопку вызывает метод в Presenter. В этом методе вызывается viewState.setText(‘’some_text’’), который меняется текст TextView
Sergey Mitrofanov
Volodymyr
Привет, подскажите как можно классы что находятся в CorruptionReports вытянуть в список?
Volodymyr
Влад
https://firebase.google.com/docs/database/web/read-and-write
Sergey Mitrofanov
Ребят, может сталкивался кто с такой проблемой.
Я вот кеширую Flowable и выдаю его все новым подписчикам для подписки через .replay(1).refCount()
Новые подписчики всегда получают последнее пролетавшее значение, все гуд. Когда возникает ошибка, то все ее получают, тоже норм.
Но вот после ошибки новые подписчики не получают вообще ничего. Ни значения, ни ошибки, ни комплита.
код:
ublic Flowable<Tweet> getTweets(boolean reset) {
if (tweetsFlowable == null || reset) {
tweetsFlowable = loginReceiver.get()
.toFlowable(BackpressureStrategy.BUFFER)
.startWith(socketGateway.openSocket().toFlowable())
.switchMap(channelId -> gateway.getState(channelId))
.replay(1)
.refCount();
}
return tweetsFlowable;
}
Суть проста, loginReceiver всегда отдает логин, ошибок никогда не дает (хранилище в памяти)
потом есть сокетгейтвей (Completable, открывает сокет) и «просто» gateway, который уже слушает топик в сокете, и передает, все что в него входит.
В данном случае приходит ошибка 401 от сокетгейтвея, но получают ее только те, кто был в этот момент подписан, а все последующие ничего не получают.
Уже с десяток разных тестов накидал, включая интеграционные - все работает как надо. После ошибки новые подписчики, как и положено, получают ту самую ошибку.
Запускаю на девайсе, на двух (JB и Oreo) - тишина. Ни onNext, ни onError, ни onComplete. Только onSubscribe стабильно вызывается. Этот факап полдня уже съел =(
Sergey Mitrofanov
Да, пробовал и без шедуллеров тоже, и с шедуллерам - один фиг…
Sergey Mitrofanov
и .share() кстати тоже пробовал - та же фигня
Sergey Mitrofanov
Придется пхд костыль ставить - кешировать ошибку в переменную, и если она есть, то тупо возвращать Flowable.error(error)…
Stanislav
Глеб
))
Глеб
имеется ввиду "от производителя")
Stanislav
имеется ввиду "от производителя")
Стало ещё менее понятно, NDK от Гугла же. Есть какие-то свои тулзы, чтобы компилять код под конкретного производителя?
Вроде всегда собирал под конкретные архитектуры
Глеб
Глеб
Мы ток совсем не давно пришли к тому что б на "обще принятом" cmake собиралось.... Буквально с последних 16-17 ндк
До сих пор - ndk имели свой cmake - он как бы симейк и как бы несимейк)))
там оказывается ниньзя без палева вшита и проч прелести)
🦥Alex Fails
Anonymous
ребят, сорри за глупый вопрос, но .idea же не должно быть в репозитории?)
Alexander
Anonymous
Dmitrii
Есть tabLayout c 4 табами (1, 2, 3, 4). При открытии таба №3 начинает рендериться таб №4 в котором есть recyclerView.
При переходе на таб №1 или таб №2, у таба №4 вызывается onStop(). При вновь открытии таба №3, у №4 вызывается onViewCreated и снова рендерится recyclerView.
Переход с таба №2 на таб №3 получается с небольшим лагом, из-за того, что в этот момент начинает отрисовываться список на табе №4.
В каком направлении двигаться, чтобы победить такой "лаг"? Данные списка кэшированы.
Dug
Dug
Поставь больше это тот параметр
Mike
Есть tabLayout c 4 табами (1, 2, 3, 4). При открытии таба №3 начинает рендериться таб №4 в котором есть recyclerView.
При переходе на таб №1 или таб №2, у таба №4 вызывается onStop(). При вновь открытии таба №3, у №4 вызывается onViewCreated и снова рендерится recyclerView.
Переход с таба №2 на таб №3 получается с небольшим лагом, из-за того, что в этот момент начинает отрисовываться список на табе №4.
В каком направлении двигаться, чтобы победить такой "лаг"? Данные списка кэшированы.
как вариант, откладывать инициализацию, если !userVisibleHint
Mike
Dmitrii
@Harmonizr, если в onCreateView сохранять view внутри фрагмента, если view еще нет, иначе возвращать сохраненное view. По поведению, работает хорошо, эквивалентно ли это тому, что я увеличу offscreenPageLimit для viewpager?
Mike
Dmitrii
При дефолтном поведении элементы в recyclerView биндятся снова. При ручном сохранении, не возвращая новый inflater.inflate, у элементов не вызывается onBindViewHolder, отображается предыдущее состояние, когда уходили с фрагмента, исследуя логи.
Mike
Dmitrii
Мумитроль
Хотя может вам бы решать проблему лага?
Dmitrii
Хотя может вам бы решать проблему лага?
Полагаю, что лаг возникает из-за одновременного переключения фрагмента и биндинга элементов списка третьего фрагмента. Не переключать фрагмент - плохо, не отображать элементы списка - тоже плохо.
Тут как предложили, либо увеличивать offscreenPageLimit, либо отрисовывать список с задержкой.
Дмитрий
Vladimir
Дак во вьюпейджере для этого игрузятся фрагменты заранее чтобы свайп был без лагов
Vladimir
Поэтому да или анимация или заранее грузить
Dmitrii
@DmitriyMitrofanov, "Фрагменты с анимацией перехода" - что имеется ввиду, самому реализовать поведение viewPager или изменить UX? Думаю, bottomNavigation справлялся бы лучше с этой задачей)
Дмитрий
Dmitrii
Анимация штука красивая, привлекательная.
Есть много различных базовых примеров по shared element fragment transition о том, как при тапе на картинку из грида, она разширяется и переходит в полноэкранную галерею.
Посмотрел недавно лекцию по фрагментам от академии Яндекса, там отказались от такого перехода в Яндекс.Диске, у них при тапе на элемент грида открывается новая активити с галереей, чтобы память не переполнилась от изображений, со слов лектора.
Dmitrii
Реальный такой кейс? Звучит сомнительно.
Daniil
У меня одного от слова яндекс пятая точка подгорает?
Daniil
Судя по тому как рабоет поиск, и другие их сервисы такие как такси или новости
Daniil
у меня сложилось впечатление что там работают одни бездельники
Daniil
Не хочу кого-либо оскорбить или расстроить своими словами
Daniil
Но уверен что гугл сервисы работают на несколько порядков лучше.
Mike
Daniil
Да и вообще кто я такой, чтобы так говорить.
Daniil
Извините просто подгорело немного
Dmitrii
У Яндекса мне навигатор больше нравится, чем карты от Гугла
Daniil
Можешь перечислить то, что тебя не устраивает в гугл картах и навигации по ним?
Daniil
просто на вскидку пару моментов
Mike
Daniil
У яндекса карты в России лучше, детальнее. Хорошо, понял.
Daniil
Можно вопрос?
Daniil
Посоветуйте источник где можно посмотреть хороший пример rrs-приложения
Daniil
Те что я загуглил предлагают работать через асинктаски и архитектура какая-то не внятная до конца. А асинктаски использовать с вебом плохая затея
Daniil
на сколько я помню
Mike
rrs — это что?
Daniil
rrs рассылка новостей сайта в формате xml
Dmitrii
Mike
RSS?
Дмитрий
может rss?
Daniil
да точно, опечатался
Mike
ну, сделать не через асинктаски)
Дмитрий
Что такого "особенного" в rss, чего нет в обычных примерах работы с сетью?
Mike
Вообще, RSS не предоставляет способа подписаться на обновления. RSS-ридеры тупо долбятся в XML-ку с определённой периодичностью, что очень плохая затея.
Daniil
Да это более менее понятно. Единственное что xml парсер какой-то динозавр огромный