报错原因是我在子线程中调用了LiveData的observe。LiveData.observe是活动在主线程来观察数据,更新UI的。
解决:

    new Handler(Looper.getMainLooper()).post(new Runnable() {@Overridepublic void run() {api.getUserInfo(userId).observe(MainActivity.this, new Observer<Result<UserBean>>() {@Overridepublic void onChanged(Result<UserBean> userBeanResult) {...}});}});

使用 new Handler(Looper.getMainLooper()).post(new Runnable(){});让LiveData.observe在主线程运行就好了。

报错: Cannot invoke observe on a background thread相关推荐

  1. LiveData更新数据时报错:java.lang.IllegalStateException: Cannot invoke setValue on a background thread

    LiveData更新数据时报错: java.lang.IllegalStateException: Cannot invoke setValue on a background thread 报错原因 ...

  2. mysql主从同步报错Fatal error: The slave I/O thread stops because master and slave have equal MySQL server

    问题:在mysql主从同步的过程中检查主从同步状态时IO线程报错 Last_IO_Error: Fatal error: The slave I/O thread stops because mast ...

  3. 主从复制报错Fatal error:The slave I/O thread stops because master and slave have equal MySQL server UUIDs;

    异常 在MySQL中开启主从复制失败: 原因 先确定主机和从机的server-id是否不一样,如果一样也会导致主从复制失败.主机和从机的server-id在/etc/my.cnf配置文件中配置的,下面 ...

  4. Hive安装报错:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient的解决办法

    最近练习Hive,安装时爆出如下错误:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClie ...

  5. 解决IntelliJ IDEA报错Failed to read candidate component class: file [ ]; nested exception is org.

    解决IntelliJ IDEA报错Failed to read candidate component class: file [ ]; nested exception is org.springf ...

  6. Java逆序列化报错serialVersionUID不同

    今天试验Java序列化和逆序列化时,更改序列化的参数后发现逆序列化报错. 错误如下: Exception in thread "main" java.io.InvalidClass ...

  7. hive sql 报错后继续执行_Hive优化之Spark执行引擎参数调优(二)

    Hive是大数据领域常用的组件之一,主要是大数据离线数仓的运算,关于Hive的性能调优在日常工作和面试中是经常涉及的的一个点,因此掌握一些Hive调优是必不可少的一项技能.影响Hive效率的主要有数据 ...

  8. logback配置文件报错:no applicable action for [MaxFileSize], current ElementPath ...

    logback是SpringBoot开发过程中常用的日志工具,在使用前需要设置配置参数,一般写在logback-spring.xml文件中. 问题现象: 配置完logback-spring.xml文件 ...

  9. 调用wx.relaunch报错:fail can not invoke relaunch in background

    微信小程序报错的原因是小程序进入后台后,不能调用relaunch函数.因为支付成功后,微信会弹出一个遮罩层,上面有个确定按钮.在遮罩层存在的情况下,小程序处于进入后台的状态,所以无法relaunch. ...

最新文章

  1. python编程案例教程书籍-Python程序设计案例教程
  2. ai怎么画循环曲线,怎么用 Adobe Illustrator 画出曲率连续的曲线?
  3. 二、WPF datagrid 特定行变色
  4. 一条简单的 SQL 执行超过1000ms,纳尼?
  5. CCAI 2017 | 小数据学习对人工智能究竟有着怎样的影响?
  6. 国产特斯拉开启预定:官网被挤爆 3分钟内完成第一单预定
  7. html网页布局对联,html javascript 网站两侧对联广告
  8. Flutter 入门指北(Part 9)之弹窗和提示(SnackBar、BottomSheet、Dialog)
  9. 分表用到的一些函数/php mysql 前面补0
  10. Markdown个人简历模板
  11. 【论文笔记(2)】图卷积网络介绍 Understanding Convolutions on Graphs
  12. bim学习—— 第7章 放置幕墙门窗
  13. 逆向最大匹配分词RMM
  14. 什么是开关量,I/O区分详细解答
  15. 「首席架构师看无服务器」openwhisk 经典使用案例
  16. JavaScript 动态渲染页面爬取(一) —— 基于 Selenium
  17. ps流 转发_VAG.Node: GB28181 信令服务服务,支持PS流到RTMP流的转码和转发功能
  18. CF628 C.C. Ehab and Path-etic MEXs(思维+拓扑排序)
  19. 微信营销 html5,五大经典HTML5微信互动营销成功案例,你都玩过了吗?
  20. 元胞自动机代码演示案例

热门文章

  1. 漫谈DOM 事件流的三个阶段
  2. 牛!阿里数据库掌门人李飞飞获选ACM杰出科学家
  3. Python 配置环境变量
  4. 使用 技术可以把复杂的计算机网络简化,计算机网络试题及答案
  5. detour(detoured)
  6. 软件测试必备的Linux知识(一)
  7. 【TVM全文翻译】TVM: An Automated End-to-End Optimizing Compiler for Deep Learning
  8. 小说分享《相互的感情》1
  9. c++ 实现 prm
  10. 聚类之亚洲足球排名数据集(kmeans、GMM)