как показать тост в WorkManager doWork () - PullRequest
0 голосов
/ 01 июня 2019

как показать, чтобы тост в WorkManager работал ()?

При попытке выдает

Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()

1 Ответ

1 голос
/ 03 июня 2019

Вы можете создать Обработчик для отображения Toast в потоке пользовательского интерфейса.

Ваш метод doWork будет выглядеть следующим образом:

@NonNull
@Override
public Result doWork() {
    Log.d(TAG, "doWork for Sync");

    Handler handler = new Handler(Looper.getMainLooper());
    handler.postDelayed(new Runnable() {
        @Override
        public void run() {
            // Run your task here
            Toast.makeText(mContext, "Testing", Toast.LENGTH_SHORT).show();
        }
    }, 1000 );

    return Result.success();
}

Примечание: mContext willбыть доступным в конструкторе.

Надеюсь, это поможет вам.Спасибо.

...