至于app启动时候为什么会白屏,咱们不多赘述,相关的文章以及启动时间优化文章多了去了。咱们这里主要讲述优化完成后如何解决白屏问题。

app启动时候黑屏或者白屏是还没加载到布局文件,就已经显示了window窗口背景,黑屏白屏就是window窗口背景。这样的话。我们可以将Windows背景设置成和启动页一样的背景。这样就ok了。

解决要点:

  • 设置启动页背景和启动页之前的Windows背景
  • 保证背景不可以被拉伸
  • 保证部分手机底部虚拟键盘不遮挡

设置启动页背景和启动页之前的Windows背景

背景样式我们此处简单的以一个白底。外加一个底部logo,再加一个中间展示图片为例展示,
如下:

1、背景资源

推荐使用这种Layout-list制作背景图片(也可以使用.9图)
这样可以保证图片不会被拉伸

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"><!-- 设置整个屏幕背景为白色 --><item><color android:color="@color/white" /></item><!-- 展示图片 --><item android:bottom="124dp"><bitmapandroid:gravity="bottom"android:src="@mipmap/ic_start" /></item><!-- 底部图表 --><itemandroid:height="124dp"android:gravity="bottom"android:bottom="24dp"android:top="16dp"><bitmapandroid:layout_width="64dp"android:layout_height="84dp"android:gravity="bottom|center_horizontal"android:src="@mipmap/ic_start_logo" /></item></layer-list>

2、给Windows设置背景

我们通过theme去设置
theme资源:

    <style name="ThemeSplash" parent="@android:style/Theme.Light.NoTitleBar.Fullscreen"><item name="android:windowBackground">@drawable/layout_list_app_start_bg</item><item name="colorPrimaryDark">@color/white</item><item name="windowActionBar">false</item><item name="windowNoTitle">true</item></style>

重点是:@android:style/Theme.Light.NoTitleBar.Fullscreen

给启动的activity设置theme

 <activityandroid:name=".ui.start.WelcomeActivity"android:screenOrientation="portrait"android:theme="@style/ThemeSplash">
</activity>

3、启动的activity XML布局

我们也采用和启动页相同的布局,这样在启动页加载时候就会无差别的切换

我们再说一下之前为啥设置@android:style/Theme.Light.NoTitleBar.Fullscreen

因为白屏是整个windows的。这样部分手机存在底部虚拟键盘的话。虚拟键盘会遮挡住白屏背景。当切换到welcomeActivity的时候。背景在展示出来。会出现错位。那样效果就不好。

ok。这样就可以了。

Android app启动白屏适配方案相关推荐

  1. android白屏优化方案,优化Android App启动白屏

    问题描述 随着Android App开发时间越来越长,项目中的功能,以及用到的第三方库也越来越多,apk的体积也会越来越大.用户在打开应用时,白屏的时间也越来越长,带来了不好的使用体验,如何才能做到 ...

  2. Android APP启动白屏的解决办法

    平时发现自己写的APP,启动后总有几秒的白屏,很恶心,所以下决心改一下! 下面这个是全局的的Style <style name="AppTheme" parent=" ...

  3. android app启动白屏优化

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/wuliang756071448/article/details/74067058 可以看到启动的时候 ...

  4. Android app启动白屏优化

    可以看到启动的时候会有一个白屏, 如果手机较慢的话, 这个白屏就会持续一段时间, 不太友好. 那么还有没有什么办法优化呢? 给我们的应用窗口弄一个PlaceHolder Android最新的Mater ...

  5. android app启动失败,Android应用App启动白屏(黑屏)问题解决

    Android应用App启动白屏(黑屏)问题解决 点击Android手机桌面的应用App icon图标后,Android启动这个应用,正常情况下会立即看到并进入到开发者自己写在MainActivity ...

  6. Android应用App启动白屏(黑屏)问题解决

    Android应用App启动白屏(黑屏)问题解决 点击Android手机桌面的应用App icon图标后,Android启动这个应用,正常情况下会立即看到并进入到开发者自己写在MainActivity ...

  7. Android 开发过程中遇到的棘手的问题笔记(SP引起的ANR,4G网络请求慢,app启动白屏)(持续更新)

    前言 经历过面试的人应该都知道,一般我们在进行技术面试的时候,面试官都会问你,在项目开发中遇到过什么棘手的问题?最后是怎么解决的?本人之前就问到过好几次,可是由于准备不足,一时之间想不起来所遇到过的& ...

  8. linux中白屏变黑屏咋变,解决 APP启动白屏黑屏问题

    闪屏页简介 闪屏页,我们手机上的每个 APP 几乎都有自己的闪屏页,就是在真正进入程序前,会有一个页面停顿几秒钟.其实我们完全可以充分利用好这几秒钟做很多的程序初始化了启动. 为什么我的 APP 启动 ...

  9. 【转】Android APP 启动黑屏优化补丁 (2016-01-18 10:35:23)

    [转]Android APP 启动黑屏优化补丁 (2016-01-18 10:35:23) 转载▼ 这个必须转,这才是高手,解决官方都解决不好的问题! 原文地址,以下为转贴内容: 使用说明 ***** ...

最新文章

  1. C#中调用Windows API时的数据类型对应关系
  2. 单独的plsql链接数据库
  3. 用Python做自然语言处理必知的八个工具【转载】
  4. linux(3):Linux MBR分区、挂载操作步骤,逻辑卷扩容操作
  5. 找连续数(HDU-5247)
  6. android开源动态图表库,hellocharts-android-Android图表开源库的使用(一)
  7. 转移符 个人工作中使用记录一下
  8. 后台填充_单元格噩梦终于有救?500多行隔行填充,我就两步!
  9. 【OEIS】Xor Sum AtCoder2272
  10. php 写聊天室源码,PHP实现简单聊天室(附源码)_PHP
  11. 图形工作站/服务器硬件如何配置?这里有最新最全的硬件配置方案
  12. php复杂海报合成,才发现 | 每一步都不该错过的合成海报教程
  13. Win10系统开启黑暗主题
  14. python监听多个udp端口_尝试实现非阻塞python-udp多端口获取wierd异常
  15. zemax设置 像方远心_像方远心光学系统具有以下特征
  16. 这台笔记本最适合程序员编程!!
  17. Interview with Dustin Kirkland, Ubuntu Core Developer about encryption in Ubuntu
  18. 360个人图书馆禁止复制问题
  19. 定时器Timer使用
  20. 机器学习之PAC学习框架

热门文章

  1. 上班盯盘太累?这五个开源项目了解下!
  2. 【第四讲】制作动画 -【Python动画设计教程】
  3. 九键输入java程序_九键怎么学
  4. html字体颜色设置
  5. CentOS7.4安装部署openstack[Liberty版](1)
  6. docker学习第三节_创建Python、MySQL容器
  7. 每一个企业都能成为新云原生企业
  8. 《GitHub入门与实践》第4章 通过实际操作学习Git 基本操作——学习笔记
  9. C语言中的'0'、'\0'、0
  10. 2018软工实践—Alpha冲刺(8)