Size: a a a

StartAndroid Ru Chat

2021 May 06

В

Виктор in StartAndroid Ru Chat
Полагаю, чтобы и результатом запроса манипулировать в фоновом потоке.
источник

AA

Albert Abdullin in StartAndroid Ru Chat
да, вы правы. ТАм следом работа с бд. Как-то не додумался...
источник

В

Виктор in StartAndroid Ru Chat
Я всегда из ViewModel вызываю нужную функцию в репозитории(в которой идёт запрос в инет и его последующее превращение в нечто нужное мне) из viewModelScope.launch(Dispatchers.IO)
источник

Ф

Фёдор in StartAndroid Ru Chat
Бд разве не по умолчанию на другом треде тоже?
источник

ДК

Даниил Кондратеев... in StartAndroid Ru Chat
Всем привет, что лучше подойдет для этого?
Нужно в фоне раз в 3 часа отправлять один запрос в сеть и записывать в локальную бд данные
По идеи не должно зависеть от жизненного цикла приложения

Есть разные реализации - типа JobSchedulers, AlarmService. Я новичок поэтому нужен совет что выбрать
источник

AA

Albert Abdullin in StartAndroid Ru Chat
рум да. Вот это все и запутывает
источник

В

Виктор in StartAndroid Ru Chat
Albert Abdullin @t3ddys Рум ничего сам не перенаправляет в другой поток. Вы сами этим управлять должны. Он лишь помогает вам наличием поддержки корутин из коробки.
источник

В

Виктор in StartAndroid Ru Chat
WorkManager periodic requests
источник

ДК

Даниил Кондратеев... in StartAndroid Ru Chat
Задача не будет уничтожена вместе с приложением ?
источник

AA

Albert Abdullin in StartAndroid Ru Chat
Note that a coroutine with Room uses Dispatchers.IO, so this will not happen on the main thread.
источник

В

Виктор in StartAndroid Ru Chat
От прошивок зависит. На всяких сяоми и хуавеях надо принудительно все разрешать для каждого приложения.
источник

В

Виктор in StartAndroid Ru Chat
Скиньте ссылку на эту часть документации
источник

AA

Albert Abdullin in StartAndroid Ru Chat
источник

В

Виктор in StartAndroid Ru Chat
Хм, верно, позабыл. В таком случае не надо ничего перенаправлять в другой поток только если результат берется как есть. А если запрашиваете и дальше что-то в репозитории/вьюмодели делаете с результатом, то вручную перенаправить в IO нужно.
источник

AA

Albert Abdullin in StartAndroid Ru Chat
вы может ничего и не забыли, если читали только документацию. Так как в ней об этом не написано
источник

AA

Albert Abdullin in StartAndroid Ru Chat
Я думаю, что из-за этой зависимости поведение по умолчанию меняется:
// Kotlin Extensions and Coroutines support for Room
implementation "androidx.room:room-ktx:$room_version"
источник

В

Виктор in StartAndroid Ru Chat
Тогда возможно. Просто я учился работать в руме на стартандроид + частично по документации
источник

В

Виктор in StartAndroid Ru Chat
Котлиновская версия рума с поддержкой всяких ktx и suspend
источник

AA

Albert Abdullin in StartAndroid Ru Chat
да. А в той задачи, что я сейчас решаю, не ktx-расширений
источник

AA

Albert Abdullin in StartAndroid Ru Chat
вот мы и нашли ответ:)
источник