Дмитрий Рыбалкин
Не могу разобраться с одним моментом в котлин-корутинах. Помогите. В Dao у меня запрос @Query("select * from user_table where userId = :id") suspend fun getUserById(id: Int): User В репозитарии suspend fun getUserById(id: Int) { userDao.getUserById(id) } Во ViewModel fun getUserById(id: Int) = viewModelScope.launch { repository.getUserById(id) } Последняя функция отдает класс Job, но мне нужен User. Как оттуда юзера вытащить?
Yakov
viewModelScope. async
Aleksandr
или getUserById сделать без возвращаемого типа и запихнуть резлультат из репо в live data раз уж в viewmodel полезли
Дмитрий Рыбалкин
Спасибо, пошел разбираться
Ivan
onApplyWindowInsets не вызывается во фрагменте, который показан через show(), т.е. над другим фрагментом. В чём может быть проблема? Я должен как-то прокинуть эти инсэты из активити?
Ivan
видимо они съедаются контейнером выше
вот я так и думаю. что тогда делать в таком случае, кроме как лезть в приватное API?
Сергій
вот я так и думаю. что тогда делать в таком случае, кроме как лезть в приватное API?
один раз получить их уровнем выше и передавать во все низ лежащие фрагменты?) тебе же нужны паддинги?
Ivan
один раз получить их уровнем выше и передавать во все низ лежащие фрагменты?) тебе же нужны паддинги?
а такое практикуется? Просто выглядит костылём, таким же как и лезть в приватное апи андроида
Ilya
вот я так и думаю. что тогда делать в таком случае, кроме как лезть в приватное API?
обычно делают кастомный контейнер который ведёт себя иначе в нужном случае
Ivan
а что не так?
да хз. смущает "передавать во все нижлещаие фрагменты" Как аргументы, что ли?
Ivan
Ilya
так у меня же один фрагмент показан поверх другого
У тебя фрагменты лежат в контейнере
Ilya
FragmentContainerView либо FrameLayout
Ivan
У тебя фрагменты лежат в контейнере
да, реально. что-то забыл про это, как проект начнёт собраться, протестирую
Сергій
да хз. смущает "передавать во все нижлещаие фрагменты" Как аргументы, что ли?
решай как тебе удобнее. Я бы в рефлесию не лез, те системный апи могут быть в черном списке
Anton
Подскажите пожалуйста лучший способ реализации in-app review ?
George
Кто нибудь, плз хелп, клавиатура закрывает bottomSheetFragment, как пофиксить
George
adjustResize
Не работает почему то
Станислав
Поделитись опытом. Нужно протестировать встроенне покупки. Без релиза нового apk с соответствующими разрешениями сделать это никак нельзя. Как вы поступаете? Релиз на 1% пользователей?
Станислав
билд в альфа трек(альфа тест) и там тестируй что хочешь
Внутреннее тоже не подойдет? Только с Альфа-версии начинает работать?
Евгений
@MightySeal прислал интересное: похоже, скоро у нас появится типобезопасная и более удобная обёртка над startActivityForResult.   #activity #google
Sergey
Евгений
А что значит типа безопасная?
Ярослав
Кто нибудь, плз хелп, клавиатура закрывает bottomSheetFragment, как пофиксить
написать свой собственный боттом шит, как обычную вьюху
Mike
А что значит типа безопасная?
там же нормально написано: «типобезопасная». Не типа. Типо-.
Ярослав
гуглил не нашел ни одной
https://github.com/Atomofiron/RegexFinder/blob/version-2/app/src/main/java/ru/atomofiron/regextool/view/custom/bottom_sheet/BottomSheetView.kt вот моя, мне не жалко)
George
но все таки, почему не работает этот флаг, я прочитал что он выпилен с 19 апи windowSoftInputMode, насколько это правда
George
да, почемук windowSoftInputMode не работает на нем, он работает для активити, а не для фрагмента..
Станислав
билд в альфа трек(альфа тест) и там тестируй что хочешь
Я правильно понимаю, что при релизе альфа в диалоге нужно создать список тестировщиков, вписать туда свое мыло отличное от мала аккаунта разработчика и потом после релиза можно тестить покупки без привязки платежной карты к акку тестировщика?
Ярослав
да, почемук windowSoftInputMode не работает на нем, он работает для активити, а не для фрагмента..
на некоторые вопросы лучше не искать ответы, психика целее будет😌
Sergey
Станислав
Оказывается можно легко тестить покупки даже не выкладывая билд в альфу и тому подобное Есть универсальные ID для имитации разных действий. Например android.test.purchased.
Ярослав
как хорошо все-таки читать доку, да?
да кто так вообще делает?
Turalllb
Как во фрагменте использовать колбек onWindowFocusChange Если работаю в синглАктивиту. ведь когда фрагменты переключаются у них тоже существует это состояние
Mike
да кто так вообще делает?
ну, допустим, я (хе-хе, хорошо, что никто не знает мои поисковые запросы за последний час)
Turalllb
речь про onHiddenChanged()?
похоже, сейчас прочту и попробую
Ярослав
похоже, сейчас прочту и попробую
fragmentManager.beginTransaction() .hide(visibleFragment) .add/show(anotherFragment) .commit() у visibleFragment вызовется onHiddenChanged(true)
Станислав
как хорошо все-таки читать доку, да?
Только вот дока ничего не говорит про то, что на второй раз повторить запрос в тестовом режиме не получается…
Anonymous
Как сделать так, чтобы телефон можно было подключать удаленно к adb после постоянно? Я то, чтобы подключить через adb, мне надо подсоеденить через usb, прдключить к порту, отс от usb и только тогда он заработает... А можно просто набрать в консоле adb... И чтобы он всегда удлаенно без usb подклбчался?
Anonymous
adb wifi plugin попробуй
А какукакую версию брать?
Ivan
У тебя фрагменты лежат в контейнере
вроде норм работает, но теперь шторка катается не под статус баром, а снизу его
Ярослав
Рут права?
либо рут, либо компиляция прилаги с целевой апи ниже 22(не помню точно) и через адб дать прилаге пермишшены на изменение системных настроек
Anonymous
adb wifi plugin попробуй
Я не догоняю куда файлы кидать
Ярослав
Но тогда не выложить в маркет
в маркет с рутом можно, позже на 4pda залью
Ярослав
Turalllb
fragmentManager.beginTransaction() .hide(visibleFragment) .add/show(anotherFragment) .commit() у visibleFragment вызовется onHiddenChanged(true)
Спасибо, но не работает в моес случае, как я понимаю потому что у нас фрагменты не хранятся, у нас собственный стэк который хранит все нужные данные, а фрагмент каждый раз создается заново
Ярослав
или remove()
Aniki
Есть ту те кто работал с ExoPlayer? Можно ли спрятать стандартные контроллеры и по загрузке видео автоматически его воспроизводить?
Turalllb
фрагменты хранятся в фрагмент менеджере, если конечно вы не юзаете replace()
каждый раз заново создаются. игнорируем фрагмент менеджер и работает со своим менеджером, который не фрагменты хранит , а данные
Turalllb
тогда я завёл речь не о том
да мы сами загнали себя в такое состояние, что нет нужных колбеков