一、声明

首先我说明一下,这个框架,无论是MVPArms(该作者的思想不错,特别值得我学习,但是思想这玩意儿好难学)还是OKGO,都是好框架,但是在使用过程中难免会有好多的坑出现,其实也是我们没有按照作者的文档或是方法、步骤进行。

二、原因

我开发一款APP中,订单、车辆管理数据比较多,又不好做分页(数据要求要新好完整排序),所以就请求了完整的数据列表,服务器搜索时间较长,导致了mRootView为空了(大概是15秒的时间),这里并不是很理解,无论是不是在当前页(acitivity或fragment)都会出现这情况,如果不处理的话,就会造成程序停止运行。

三、解决

1、增加判断  if(null != mRootView) { 代码省略 },这个方式不可取,但也是我前期的方案,这个方法不好的地方在于页面会一直转圈圈,因为mRootView为null了,取消加载框的代码执行不了,但总比停止运行强、

2、重写IView接口类,增加动态代理模式,统一判断、统一处理,这个方法没有试过,应该是可行的。

3、既然15秒的时间造成空指针,那么把OKGO的超时时间定为10秒。另外在presenter中的onDestroy()方法中加入

 OkGo.getInstance().cancelAll();或OkGo.getInstance().cancelTag(tag);

就可以了(目前采用的方法)

四、疑问

如果这篇文章有幸被MVPArms的作者 JessYan 看到,我想知道为什么mRootView为null的时间大概为15秒?是设计如此还是android的回收机制造成的?

第三篇:关于MVPArms与OKGO结合报错--mRootView为空相关推荐

  1. Android之Android Studio三种方式导入外部资源 以及 报错处理

    Android Studio三种方式导入外部资源 以及 报错处理 android studio提供了三种方式导入外部资源: 1. Library dependency – 在线添加.需联网下载 . 2 ...

  2. Python-技术篇-使用logging模块打印详细报错日志,获取报错信息位置行数方法

    我们常用except Exception as e捕获异常 e,但往往不能达到我们想要的效果,那就是知道具体哪行代码出现问题了.我们通过 traceback.format_exc() 就能把详细的报错 ...

  3. Vue中使用ES6的三点运算符(扩展运算符)报错解决

    我这里是使用的...mapGetters({ getMenuAndMenuItem })出错的 1.引入babel依赖 npm install babel-plugin-transform-objec ...

  4. centOS7 LNMP+phpmyadmin环境搭建 第三篇phpmyadmin安装

    这篇文章主要介绍了CentOS7 LNMP+phpmyadmin环境搭建,第三篇phpmyadmin安装,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 之前我们已经安装了lnmp的环境,现在让我们 ...

  5. IIS负载均衡-Application Request Route详解第三篇:使用ARR进行Http请求的负载均衡(上)...

    IIS负载均衡-Application Request Route详解第三篇:使用ARR进行Http请求的负载均衡(上) 在前两篇文章中,我们已经讲述如何配置与安装ARR,从本篇文章开始,我们将重点的 ...

  6. hadoop作业初始化过程详解(源码分析第三篇)

    (一)概述 我们在上一篇blog已经详细的分析了一个作业从用户输入提交命令到到达JobTracker之前的各个过程.在作业到达JobTracker之后初始化之前,JobTracker会通过submit ...

  7. 厉害了,网易伏羲三篇论文上榜 AI 顶会 ACL

    近日,国际AI顶尖学术会议ACL 2021(Annual Meeting of the Associationfor Computational Linguistics)公布了论文录用结果.网易伏羲共 ...

  8. 小米和西工大联手,三篇论文被Interspeech接收

    翻译 | 林椿眄 编辑 | 阿司匹林 出品 | 人工智能头条(公众号ID:AI_Thinker) 小米和西北工业大学的"交情"不浅. 去年 7 月,小米和西工大计算机学院的谢磊教授 ...

  9. 12.6%!IJCAI 2020接收率断崖式下跌,但还是有华人大佬中了三篇

    机器之心报道 参与:泽南.张倩.蛋酱 人工智能顶会 IJCAI 2020 论文接收结果出炉了,但大部分小伙伴却高兴不起来. 北京时间 4 月 20 日晚,IJCAI 2020 接收结果出炉了:在 47 ...

  10. 初学Python——文件操作第三篇

    一.引言 什么?有了第二篇文件操作还不够?远远不够!而且在读完第三篇文件操作还是不够.关于文件的操作,后续的学习中将不断学习新的操作方式,使用更加合适的方法. 进入正题,上一篇讲到,Python对文件 ...

最新文章

  1. 我对javascript对象的理解
  2. js滚动条下拉一定值_JS逆向 | *APD模拟登录(AES)
  3. HBase进化 | 从NoSQL到NewSQL,凤凰涅槃成就Phoenix
  4. JAVA集合框架中的常用集合及其特点、适用场景、实现原理简介
  5. 使用代码删除IBASE object component
  6. ASP.NET Core 配置 - 创建自定义配置提供程序
  7. linux定时器无法重启pm2,pm2无法自动重启
  8. Gson的fromJson()方法
  9. @ta,一起过节吧!
  10. 报错 插入更新_CentOS中linux网络报错 connect: Network is unreachable问题
  11. 设置ecshop2.7首页幻灯片宽度为100%
  12. 马云后悔创办阿里:想停根本停不下来;人民日报评“滴滴顺风车争议”;jQuery 曝漏洞|极客头条...
  13. C#在控制台工程中嵌入winform窗体
  14. Linux面试必备20个常用命令
  15. 计算机视觉基础概念、运行原理和应用案例详解
  16. jQuery视频拍照插件
  17. 7-4 工作分配问题分数 20作者 陈晓梅单位 广东外语外贸大学
  18. 《Python自然语言处理》——第1章 语言处理与Python 1.1 语言计算:文本和词汇...
  19. 设计师思维模式你get到多少个?
  20. arcgis js 4 风场可视化

热门文章

  1. [知识图谱] 1.2-知识图谱有什么用?
  2. 洪恩机器人课程提示_【重要提示】全国儿童机器人等级考试报名启动!
  3. 多线程下载辅助类实现
  4. Autojs-识别验证码-超级鹰打码(全网独一份,求个三连不过分吧)
  5. 改善用户体验 Web前端优化策略总结.........
  6. latex如何取消自动编号_latex 取消自动编号
  7. webrtc-sdp编码信息协商
  8. 西门子PLC学习记录
  9. @JsonView注解的使用
  10. 中国顶级黑客Top10,最后一位你猜是谁