至于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. springboot基于maven多模块项目搭建(直接启动webApplication)
  2. 互联网1分钟 |1226
  3. GridView Bind 短日期 格式
  4. c语言点阵字符,点阵的汉字程序
  5. Shell 企业29道面试题 [转]
  6. 视频时代的大数据:问题、挑战与解决方案
  7. 移动IPv6光猫登录的一般ip地址账号与密码,移动光猫变桥接模式
  8. 十二进制转十进制-练习
  9. 如何用cocos2d-x来开发简单的Uphone游戏:(三) 射击子弹 碰撞检测
  10. Source Insight 4.0安装破解及简单使用
  11. 罗技craft键盘使用入门
  12. 配置 nginx server 出现nginx: [emerg] root directive is duplicate in /etc/nginx/server/blogs.conf:107...
  13. docker搭建企业级habor仓库
  14. Linux 安装httpd(apache)超详细教程
  15. 关于处理npm ERR! Unexpected token in JSON at position...
  16. 一元三次方程-盛金公式求解
  17. 山东大学中外合作计算机专业,山东大学威海分校计算机专业
  18. UI设计趋势中的新拟物化图标设计素材模板
  19. android解锁界面分析,Android 7.0 锁屏解锁之向上滑动显示解锁界面分析
  20. SCUPI 第十四周编程作业 SCU 题目笔记

热门文章

  1. ASP.NET 'Atlas' 概述
  2. Python 超级简单精准计算地点日出日落时间
  3. UnixBench的实现介绍
  4. Java多线程拾遗(五) 使用CountDownLatch同步线程
  5. Excel 函数功能分享之Find 函数
  6. 【考研英语语法】过去完成进行时习题
  7. 在IIS7上部署FluorineFx找不到Fluorine.aspx问题的解决
  8. 消息中间件(二)消息队列常见的几种使用场景介绍
  9. jq遍历json/数组
  10. 日志库glog之如何用cmake将源码生成.sln文件