当前位置: 首页 > news >正文

北京好的做网站公司网站建设招标要求

北京好的做网站公司,网站建设招标要求,wordpress专题页,哪些网站是响应式情景再现 开发这么久,不知道你们是否也经历过这样的情况,测试或者用户,反馈app闪退,结果你自己打开开发工具,去调试,一切正常,然后闪退还是存在,只是在开发环境中不能重现。这种情况…

情景再现

开发这么久,不知道你们是否也经历过这样的情况,测试或者用户,反馈app闪退,结果你自己打开开发工具,去调试,一切正常,然后闪退还是存在,只是在开发环境中不能重现。这种情况一般是在特定的情况下才触发的bug。比如app退出后台,再打开的时候,重启了,这样你在开发环境很难模拟到。那这种bug怎么来排查的,两种办法:

集成bugly

bugly是个很好的工具,

腾讯Bugly,为移动开发者提供专业的异常上报和运营统计,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈。

具体怎样集成自行百度。集成以后,可以查看到很多开发环境看不到的bug,这样就根据崩溃记录,对app进行完善。

bug重现

虽然bugly能看到日志,但是怎么才能重现呢,毕竟不重现,没办法解决bug,能重现的bug,其实是最好解决的Bug。对于一些bug,可能加一些判断非空就行了,但是有些bug,比较难重现,比如

No view found for id 0x7f0901c3 (包名:id/frameLayout) for fragment MergedModuleNoLoginFragment{acdaeec} (156480ac-26ef-4bdc-8ec6-ae57f092d97f id=0x7f0901c3)
包名.UI.onStart(UI.java:75)

这个bug困扰了我好久,开发环境始终重现不了,加了try-catch也不行,然后网上的方法都试了,也不行。这个bug的原因就是一句话:调用的时机不对,还没初始化完成,就切换了。这个bug一般会在fragment嵌套fragment的代码里出现。现在将解决办法说一下

开发环境重现bug

其实一些bug,正常情况下是重现不了的,我们可以通过设置开发者选项里的不保留活动,调试的时候,正常进入页面,然后点击home键,回到桌面,再点击图标,就有可能重现一些Bug
在这里插入图片描述
我这边的bug解决,是将切换fragment的方法,放在onCreate()方法里,有可能view还没初始化,就调用了,会报错

   @Overrideprotected void onStart() {super.onStart();// 加载主页面showMainFragment();}private void showMainFragment(){if (mainFragment == null && !isDestroyedCompatible()){mainFragment = new HomeFragment();switchFragmentContent(mainFragment);}}protected void switchFragmentContent(TFragment fragment){FragmentManager fm = getSupportFragmentManager();FragmentTransaction transaction = fm.beginTransaction();transaction.replace(fragment.getContainerId(), fragment);try{transaction.commitNowAllowingStateLoss();}catch (Exception e){e.printStackTrace();}}

报错的代码是MainFragment里的子fragment切换

    @Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {View view = inflater.inflate(R.layout.fragment_main, container, false);mSupportFragmentManager = getParentFragmentManager();mTransaction = mSupportFragmentManager.beginTransaction();mergedModuleFragmentNoLogin = new MergedModuleNoLoginFragment();mergedModuleFragment = new MergedModuleFragment();View frameLayout = view.findViewById(R.id.frameLayout);if (frameLayout != null) {if (!Contants.DOCTOR_LOGIN) {mTransaction.add(R.id.frameLayout, mergedModuleFragmentNoLogin);} else {mTransaction.add(R.id.frameLayout, mergedModuleFragment);}mTransaction.commitAllowingStateLoss();}return view;}

mTransaction.add(R.id.frameLayout, mergedModuleFragment);
报错,找不到R.id.frameLayout。放到了onStart()方法里就可以了

关于这个Bug,网上有一些博客,我把筛选过,感觉有用的博客分享一下
Fragment找不到资源Id引起的线上Crash
从一个线上 Android Bug 回看 Fragment
java.lang.IllegalArgumentException No view found for id 0x7
java.lang.IllegalArgumentException No view found for id 0x… for fragment
Fragment嵌套fragment出现的两种错误No view found for id for fragment 与Can not perform this action after onSave
java.lang.IllegalArgumentException: No view found for id 崩溃总结
关于No view found for id 0x7f080135 (com.xxx.xxx:id/viewpager) for fragment PopupWindow
遇到的错误之java.lang.IllegalArgumentException: No view found for id
Android之 运行时错误总结

http://www.yayakq.cn/news/746078/

相关文章:

  • 深圳网站建设设计平台wordpress 淘宝模板
  • 怎么制作网站弹出广告福州百度企业网站seo
  • 网站建设一般要提供什么内容手机优化器
  • 一个公司可以做几个网站吗html模板之家免费下载
  • 做网站怎么设置背景wordpress 首页图片
  • 360兼容模式 网站变形怎么做网站策划
  • wordpress搭建漫画站毕节市建设网站
  • 马鞍山网站开发流程网站如何做reference
  • 网站网络优化服务器wordpress文件调用函数
  • dede静态网站模板下载做网站要不要签合同
  • 河南网站seo地址百色优惠welcome
  • wordpress可以做淘宝seo优化推广业务员招聘
  • 怎么进电力建设公司网站江门app开发
  • 企业网站硬件方面建设网站后台流程
  • 星河东莞网站建设智慧旅游门户网站建设
  • 呼和浩特做网站的公司怎么自己用手机做网站
  • 酒店网站建设工作电商实训网站建设报告
  • 网站建设好后为什么要维护如何在微信平台做购买网站
  • 外贸数据分析网站成都建设网页
  • 怎样查询百度收录和排名情况网站优化 h几 更易被抓
  • 做私活 网站机械行业网站建设
  • 中国空间站有哪些国家加入专业的网站建设找聚爱
  • 浙江大成建设集团有限公司网站海口网站建设fwlit
  • 有声直播网站建设有个域名怎样做网站
  • 湖北疾控最新提醒优化图片大小的网站
  • 网站建设策划书是有谁编写的微商的自己做网站叫什么软件
  • 邯郸网站建设哪家强温州建设小学 网站首页
  • 网站建设的展望 视频wordpress主题栏是什么
  • wordpress仿站容易被收录不移动应用开发实训报告
  • 建设公司网站需要什么科目怎么做网站发布