解决App启动时白屏的问题

2017-03-25  本文已影响1032人  pdog18
第一次
03-25 11:02:34.431 6908-6908/com.newenergyjinfu.jytz D/App: before_onCreate: 239
03-25 11:02:34.513 6908-6908/com.newenergyjinfu.jytz D/App: after_initOkGo(    initPicasso): 316
03-25 11:02:34.570 6908-6908/com.newenergyjinfu.jytz D/App: after_    JPushInterface): 365
03-25 11:02:34.572 6908-6908/com.newenergyjinfu.jytz D/App: after_onCreate: 366
03-25 11:02:34.597 6908-6908/com.newenergyjinfu.jytz D/WelcomeActivity: before_onCreate: 390
03-25 11:02:34.663 6908-6908/com.newenergyjinfu.jytz D/WelcomeActivity: before_umeng: 454
03-25 11:02:34.671 6908-6908/com.newenergyjinfu.jytz D/WelcomeActivity: after_onCreate: 460
03-25 11:02:34.681 6908-6908/com.newenergyjinfu.jytz D/WelcomeActivity: before_onResume: 469
03-25 11:02:34.687 6908-6908/com.newenergyjinfu.jytz D/WelcomeActivity: after_onResume: 474
  

统计

  1. app 启动, 239
  2. 获取Telephone服务 240
  3. 初始化 okgo 和picasso 316
  4. 初始化jpush 365
  5. oncreate 390
  6. oncreate 和设置背景图片454
  7. 初始化友盟460
  第二次
03-25 11:08:02.843 9749-9749/com.newenergyjinfu.jytz D/App: before_onCreate: 282
03-25 11:08:02.908 9749-9749/com.newenergyjinfu.jytz D/App: after_initOkGo: 340
03-25 11:08:02.930 9749-9749/com.newenergyjinfu.jytz D/App: after_initPicasso): 360
03-25 11:08:02.995 9749-9749/com.newenergyjinfu.jytz D/App: after_        JPushInterface): 411
03-25 11:08:02.997 9749-9749/com.newenergyjinfu.jytz D/App: after_onCreate: 412
03-25 11:08:03.026 9749-9749/com.newenergyjinfu.jytz D/WelcomeActivity: before_onCreate: 436
03-25 11:08:03.103 9749-9749/com.newenergyjinfu.jytz D/WelcomeActivity: before_umeng: 504
03-25 11:08:03.115 9749-9749/com.newenergyjinfu.jytz D/WelcomeActivity: after_onCreate: 511
03-25 11:08:03.130 9749-9749/com.newenergyjinfu.jytz D/WelcomeActivity: before_onResume: 522
03-25 11:08:03.138 9749-9749/com.newenergyjinfu.jytz D/WelcomeActivity: after_onResume: 529

统计

  1. app 启动, 282
  2. 获取初始化okgo 340
  3. 初始化picasso 360
  4. 初始化jpush 411
  5. oncreate 412
  6. oncreate 和设置背景图片 504
  7. 初始化友盟...

从开机到显示需要500毫秒的时间,白屏的体验很差,我想知道应用在什么时候才显示activity 的背景的, 于是给 入口activity的xml文件设置了一个背景,
然后在 application的onCreate和 activity 的oncreate 和onresume 中 分别 SystemClock.sleep(4000);

然后发现 应用在0~13,14秒的时候总是处于白屏状态。
所以显示activity(包括在这个activity的布局文件中设置背景图片)的时机是在onResume以后了

在app的theme下 添加

        <item name="android:windowBackground">@drawable/loading</item>

观察发现没什么卵用,换台oppo真机测试却有效果,,

红米4 是无效的

虽然在oppo下是有效果的,但是为了证明的确是

        <item name="android:windowBackground">@drawable/loading</item>

属性引起的改变,在apptheme中删除该行代码,发现该行代码的确是有效果的。。。

上一篇下一篇

猜你喜欢

热点阅读