首页 > 解决方案 > 如何在后台线程中使用 MutableLiveData 获取服务器响应?

问题描述

我必须在 android 应用程序内部拍照。为此,我正在使用此回调:

CameraCaptureSession.CaptureCallback CaptureCallback
                    = new CameraCaptureSession.CaptureCallback() {
    uploadImageToServer()
}
private void uploadImageToServer() {
     viewModel.postData(data).observe(
                getViewLifecycleOwner(), new Observer<ApiResponse<ResponseBody>>() {
            @Override
            public void onChanged(ApiResponse<ResponseBody> response) {
                viewModel.isLoading().postValue(false);
            }
        });
}

但是我收到了无法observe从后台线程调用方法的错误:java.lang.IllegalStateException: Cannot invoke observe on a background thread

是否存在任何解决方案?谢谢。

标签: javaandroidmutablelivedata

解决方案


推荐阅读