WorkManager возвращает результат до завершения асинхронного метода в нем - PullRequest
0 голосов
/ 27 марта 2019

Я хочу применить некоторые изменения к медиафайлу перед загрузкой, и для этого я использовал библиотеку FFMPEG. Но поскольку FFMPEG выполняет команду с обратным вызовом. Итак, WorkManager возвращает успех даже до завершения выполнения команды ffmpeg. Как я могу избежать этого и держать WorkManager в ожидании, пока работа не будет завершена. Я также использовал CountLatch, чтобы добавить ожидание, но затем ffmpeg не работает, начинает работать, и WorkManager остается застрявшим. Любые идеи будут заметны. Спасибо

1 Ответ

1 голос
/ 27 марта 2019

Для адаптации обратных вызовов вы должны использовать ListenableWorker вместо Worker. Вы можете найти больше информации о параметрах потоков здесь: https://developer.android.com/topic/libraries/architecture/workmanager/advanced/threading

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...