首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么android的闪屏不能放在可用空间内?

Android的闪屏(Splash Screen)通常不能放在可用空间内,原因如下:

  1. 可用空间加载时间:可用空间是指应用程序的主要界面,包括各种功能和交互元素。为了提供更好的用户体验,Android应用程序通常会尽快加载可用空间,以便用户能够尽快开始使用应用程序。将闪屏放在可用空间内会增加可用空间的加载时间,导致用户等待时间过长,降低用户体验。
  2. 闪屏的作用:闪屏是应用程序启动时显示的一个短暂的界面,用于展示应用程序的品牌标识、名称或其他相关信息。它的主要作用是在应用程序加载过程中提供一个过渡界面,让用户知道应用程序正在启动。闪屏通常只需要显示几秒钟,不需要用户进行任何操作。将闪屏放在可用空间内会导致用户无法立即进入应用程序,增加了用户的等待时间。
  3. 启动速度优化:为了提高应用程序的启动速度,Android应用程序通常会采取一些优化措施,例如使用冷启动和热启动、延迟加载等技术。将闪屏放在可用空间内会增加应用程序的启动时间,降低了启动速度优化的效果。

总结起来,Android的闪屏不能放在可用空间内是为了提供更好的用户体验,减少用户等待时间,同时保持应用程序的启动速度优化效果。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

面试官:今日头条启动很快,你觉得可能是做了哪些优化?

二、启动优化 直奔主题,常见的启动优化方式大概有这些: 闪屏页优化 MultipDex优化(本文重点) 第三方库懒加载 WebView优化 线程优化 系统调用优化 2.1 闪屏页优化 消除启动时的白屏/...需要注意的是闪屏页的Activity,包括闪屏页中引用到的其它类必须在主dex中,不然在MultiDex.install之前加载这些不在主dex中的类会报错Class Not Found。...,启动闪屏页,加载完准备进入主页直接崩掉了。...所以这种方案的缺点很明显: MultiDex加载逻辑放在闪屏页的话,闪屏页中引用到的类都要配置在主dex。...总结一下这篇文章主要涉及到哪些内容: 应用启动流程 闪屏页优化 MultiDex 原理分析 ClassLoader 加载一个类的流程分析 热修复原理 MultiDex优化: 介绍了两种方式,一种是直接在闪屏页开个子线程去加载

1.1K30
  • 解决 APP启动白屏黑屏问题

    闪屏页简介 闪屏页,我们手机上的每个 APP 几乎都有自己的闪屏页,就是在真正进入程序前,会有一个页面停顿几秒钟。其实我们完全可以充分利用好这几秒钟做很多的程序初始化了启动。...为什么我的 APP 启动会白屏或者黑屏 有时候我们会发现,我们在启动我们自己的 APP 的时候,总是有那么点时间是白屏(黑屏),经过了白屏(黑屏)后才会进入我们的 APP。那么这是为什么呢?...我们都知道 Window 布局的顶层是 DecorView,而 StaringWindow 显示的是一个空的 DecorView,只是这个 DecorView 会应用我们的这个 Activity 所指定的...我们默认的 Theme 是 @android:style/Theme.Light 的话,这个时候就会产生白屏了。...黑屏就是应用了 @android:style/Theme.Black,好了到这里我们就彻底明白为什么会出现白屏或者黑屏了。

    2.8K20

    被后台杀死后,Android应用如何重新走闪屏逻辑

    从推送唤起被杀APP时,如何走闪屏逻辑 对于推送消息的处理,其路由器一般放在MainActivity,并且在onCreate跟onNewIntent都有添加,如果APP存活的情况,可以直接跳转目标页面,...如果APP被杀,这个时候,希望先跳转主界面,再跳转目标页面,在效果上来看就是,用户先看到目标页面,点击返回的时候再看到主界面,如果加上闪屏,希望达到的效果是先看到闪屏、点击返回看到目标页,再点击返回看到主页面...的路由系统中,针对这两种场景要,先跳转闪屏,闪屏回来后,再跳转推送页 如何判断呢,后面两种场景其实只需要判断是否有Activity存活即可,也就是查查APP的topActivity是否为null,注意不要去向...,基本能够满足APP“死亡”的情况下,先跳转闪屏的需求。...作者:看书的小蜗牛 原文链接:被后台杀死后,Android应用如何重新走闪屏逻辑 仅供参考,欢迎指正

    2.9K40

    Android性能优化(四)之内存优化实战

    Memory Leak 内存泄漏:对于Java来说,就是new出来的Object 放在Heap上无法被GC回收(内存中存在无法被回收的对象);内存泄漏发生时的主要表现为内存抖动,可用内存慢慢变少。...OOM(art运行环境的统计规则还是和dalvik保持一致) 内存溢出是程序运行到某一阶段的最终结果,直接原因是剩余的内存不能满足内存的申请,但是再分析间接原因内存为什么没有了: 内存泄漏的存在可能导致可用内存越来越少...通常内存抖动会导致多次的GC,实践中内存抖动代表了一段时间内分配了临时对象。...6.3 实现方式可能存在的问题:例如启动页闪屏图,show完毕之后应该释放掉Bitmap。 一些实现方式看起来没有问题实现了功能但是实际上可能对内存造成了影响。...与之类似的还有:首页闪屏图展示之后,Bitmap对象应该及时释放掉。

    1.2K30

    Android 内存优化总结&实践

    (前台进程) 系统需要进行内存回收时最先回收空进程,然后是后台进程,以此类推最后才会回收前台进程(一般情况下前台进程就是与用户交互的进程了,如果连前台进程都需要回收那么此时系统几乎不可用了)。...Android App为什么会OOM呢?其实就是申请的内存超过了Dalvik Heap的最大值。...通过这个方式我们看到这三张图分别是闪屏,App主背景,App抽屉背景。 ?...这里其实有两个问题: 这几张图原图实际都是1280x720,而在1080p手机上实测这几张图都缩放到了1920x1080 闪屏页面,其实这张图在闪屏显示过后应该可以回收,但是因为历史原因(和JOOX的退出机制有关...优化方式:我们通过将这三张图从xhdpi挪动到xxhdpi(当然这里需要看下图片显示效果有没很大的影响),以及在闪屏显示过后回收闪屏图片。 优化结果: ?

    2K71

    Android App性能优化全方面解析

    讲道理是不能收的。虽然实际也是不能收的。因为顾客是上帝~~~ So,我们如何判断一个对象是一个可回收的垃圾对象呢?这是我们的一个主观的判断。...第二、流量的使用!!我又要拿我们公司项目搞事情了。一个闪屏的缓存60+M。。。没错,就是60+M。简直可怕,我清个3、5次缓存,在打开个3、5次。好了,2分钟时间,我一个月流量就没了。。。...但启动时,系统依然会展示闪屏页,直到第一个 Activity 的内容呈现为止。 热启动 相比暖启动,热启动时应用做的工作更少,启动时间更短。...但是一般项目都会有闪屏页。然后从闪屏跳转到首页。我们可以按照大多数的项目来改善。怎么说的,我们可以看到一般项目都有倒计时显示。也就是说倒计时结束就自动进入首页。或者可以直接跳过进入首页。...我们还可以这样,闪屏页我们把他当作一个fragment嵌套在MainActivity中,那么我们可以在进入闪屏时直接预加载主页的view。倒计时我们把闪屏页remove掉直接显示首页。

    67610

    App、接口测试面试题

    cookie 数据存放在客户的浏览器上,session 数据存放在服务器上。...cookie 不是很安全,别人可以分析存放在本地的 cookie 并进行 cookie 欺骗,考虑到安全应当使用 session。 session 会在一定时间内保存在服务器上。...单个 cookie 保存的数据不能超过 4K,很多浏览器都限制一个站点最多保存 20 个 cookie ,可以将登陆信息等重要信息存放为 session;其他信息需要保存,可以放在 cookie。...可用性测试:根据约定的协议、方法、格式内容,传输数据到接口经处理后返回期望的结果。 接口功能是否正确实现。 返回值测试 - 返回值除了内容要正确,类型也要正确,保证调用方能够正确地解析。...输入异常值(空值、特殊字符、超过约定长度等),接口抛错,没做封装处理。 输入错误的参数、多输入、少输入参数,接口可能出现的错误。

    95730

    Android性能优化(一)之启动加速35%

    项目修改: 将友盟、Bugly、听云、GrowingIO、BlockCanary等组件放在WorkThread中初始化; 延迟地图定位、ImageLoader、自有统计等组件的初始化:地图及自有统计延迟...[三方组件调用优化示例代码] 注意:闪屏页的2秒停留可以利用,把耗时操作延迟到这个时间间隔里。...卡顿不能都靠异步来解决,错误的使用工程线程不仅不能改善卡顿,反而可能加剧卡顿。...; 工作线程使用未设置优先级; 信息未缓存,重复获取同样信息; 流程问题:例如闪屏图每次下载,当次使用; 以及其它细节问题: 执行无用老代码; 执行开发阶段使用的代码; 执行重复逻辑; 调用三方SDK里或者...修改广告闪屏逻辑为下次生效。

    1.4K30

    Android 性能优化—— 启动优化提升60%

    因为现在 App 应用启动都会先进入一个闪屏页(LaunchActivity) 来展示应用信息 默认情况下会出现白屏现象,系统默认会在启动应用程序的时候 启动空白窗口 ,直到 App 应用程序的入口...,直到 App 应用程序的入口 Activity 创建成功,视图绘制完毕 解决方法可查看Android启动界面SplashActivit的实现方法 代码优化 Android中如何计算 App 的启动时间...最后还剩下那些为数不多的组件在主线程初始化动作,例如埋点,点击流,数据库初始化等,不过这些消耗的时间可以在其它地方相抵 需求背景: 应用App通常会设置一个固定的闪屏页展示时间,例如2000ms,所以我们可以根据用户手机的运行速度...//所以闪屏页展示的时间为 2000ms - diffTime. } 所以我们就可以动态的设置应用闪屏的显示时间,尽量让每一部手机展示的时间一致,这样就不会让手机配置较低的用户感觉漫长难熬的闪屏页时间...(例如初始化了2000ms,又要展示2000ms的闪屏页时间.)

    2K20

    如何打造一款高质量的Android移动应用

    崩溃处理 1、Java崩溃类型比较明显,实际开发过程中NullPointerException空指针的情况比较多,从后台获取的数据没有判空就就进行使用等情况容易产生空指针异常,或者OutOfMemoryError...Bitmap内存一般占据应用总内存很大一部分,把bitmap放到native内存,虽然可以减少GC频繁调用带来的问题,提高了系统内存利用率,但是并不能解决bitmap占用内存过大的问题。...Android APP启动过程优化 Android APP启动过程: 1、点击桌面图标解析Manifest; 2、Application创建,闪屏Activity创建;...根据整个启动流程我们可以把启动优化分为:闪屏优化,业务梳理,业务优化,线程优化,GC优化和系统调用优化。...,展示完毕有remove掉,同时在闪屏的2秒时间内进行首页网络数据的缓存,同时采用viewstub形式对activity_main的布局进行懒加载,防止首页过于复杂耽误view的解析时间。

    1.3K40

    Android全方位性能调优:启动页面(闪屏页面)的实现

    闪屏页面是指APP刚启动时的页面会自动跳转到主页面 单单实现闪屏页面非常简单。...闪屏界面的作用: 1.展示自己软件的logo,口号标识语等 2.作为广告平台,获取利益 3.加载下一页面(其他Activity或全局)所需要的数据 4.检查更新 首先目录结构 image.png...> 首先在AndroidManifest.xml中注册新加入的SplashActivity。...然后将的内容放在SplashActivity下。 意思就是让SplashActivity的内容先启动。然后再跳转到MainActivity 最后 如果你看到了这里,觉得文章写得不错就给个赞呗?...如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。 希望读到这的您能转发分享和关注一下我,以后还会更新技术干货,谢谢您的支持!

    2.2K10

    折叠屏开发指导系列⑤丨揭秘开发者不可不看的开发、调测工具

    本文将介绍通过模拟器调试、命令模拟器调试的方法,提供测试用例建议,为开发者快速完成应用在折叠屏设备上的调试提供指导。...1.通过模拟器调试 从Android Studio 3.5 Canary版本开始,开发者可创建一个运行Q Beta 2版本的折叠屏虚拟设备,其支持的硬件配置分别为7.3英寸(折叠后为4.6英寸),以及8...建议开发者选择8英寸的设备来模拟适配华为的MateX折叠屏手机(备注:Android Studio 3.5 Canary版本下载地址:https://developer.android.google.cn...3.2 用例2:应用在展开态下核心页面功能正常 测试步骤: 1)在屏幕展开的状态下,打开应用; 2)遍历应用核心页面的控件按钮,所有功能按钮可用,无失效/crash/anr等问题。...预期结果: 2)应用在折叠屏展开后,核心页面功能可用。

    2.2K20

    硬核实践经验 - 企鹅辅导 RN 迁移及优化总结

    首屏相关 缓存问题 从上面的图片可以看到,虽然我们做了缓存,但是Loading 的时间其实还是有点长的,随之我们对和首屏相关的每个阶段耗时做了个仔细的分析( Android),APP 启动到 RN 模块注册的这段时间前端无法掌控...能不能快速的拿到缓存的数据呢?...这里有一个小点 ,为了减少 JSBridge的通信时间,我们可以尽可能多的将数据放到一个 key 中,比如首屏的数据其实可以拆成多个 key 存放在 Asyncstorage 中,也可以存放在一个 key...但这样在重定位的时候也会遇到闪的问题,原因就是重定位前和重定位后的item大小缩放是不一样的。...上屏慢的问题 上屏慢的问题本质就是 Android的 Image 上屏渲染慢的问题,虽然我们已经在首屏的时候只渲染一张图片,但是我们还是可以发现首屏的时候,除了 Image 其他的组件其实是已经渲染完的

    3.7K30

    Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解

    问:如果在这里你会问 onRestart()的这个方法,你这个靠英语理解一下就可知道的,重新启动,那么会问为什么不onCreate()的方法,因为MainActivity()的这个已经创建了,所以就不用而用...MainActivity onStop()放在 SecondActivity onCreate() 之前会导致什么呢,会出现闪退效果的。onStop()调用,后台运行,不会销毁。...竖屏与横屏周期 什么是竖屏与横屏周期,就是手机上有横屏看,和竖屏看的效果,周期也是有不一样的。...()->onResume() 竖屏与横屏切换会闪屏效果,这是创建到销毁到创建的效果。...❤️ 总结 本文讲了Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解,如果您还有更好地理解,欢迎沟通 定位:分享 Android&Java

    68230

    Android开发者的Flutter入门(二)

    涉及到的有以下这些点: 闪屏页 自定义布局 下拉刷新 上拉加载更多 使用Assets 路由(页面跳转) 内嵌WebView 闪屏页 由于启动Flutter app的时候需要初始化Flutter...这个时间是比较长的。所以开发Flutter app的时候都需要加一个闪屏页。给Android平台上跑的Flutter app加闪屏页其实是和给一个正常的Android app加闪屏页是一样的。...那段注释的大概意思是说这个标签是用来表示让Flutter在启动过程中保持闪屏页直到第一帧画面被绘制出来。也就是说,闪屏页的隐藏不需要我们来处理了。 接下来看看这个LaunchTheme: ?...LaunchTheme 可见就定义了一个窗口的背景了,也就是我们的闪屏页本尊了,这里你可以把这个drawable改成你自己的闪屏页图片也OK。 至于ios平台的闪屏页怎么弄,可以参考这里。...自定义布局 我们都知道,在Android中,如果系统提供的布局控件不能满足我们的需求,我们会自定义布局控件来实现。Flutter同样的也提供自定义布局控件的功能。

    1.4K20
    领券