最近,我注意到我第一次运行我的应用程序的debug
变体 - 意味着第一次安装,白屏显示在启动画面之前 ,它会停留很长时间~ 15 sec on Nexus 6
。
如果我清除数据并再次运行也会发生。
起初我认为它是任何补丁的副作用,所以我回滚到正在运行的发布版本。
但同样的事情发生了。虽然如果我从Play
安装,它可以正常运行。
所以,我发布了一个'发布'建立,瞧!它正常工作。它显然不是由Application类或任何其他代码更改引起的,因为发布时也会发生这种情况。
它显然与其他地方提到的简短白屏问题不同,例如:thread):
因此,当我按照建议将transparent theme
应用于splash
时,点击应用后,手机屏幕冻结,无法触摸 相同的时间,然后 Splash 显示。
没有任何线索为什么更改为debug
会导致如此巨大的问题。为什么首先只运行。
答案 0 :(得分:4)
这是因为你正在使用Android studio即时运行。
你可以这样禁用它:
属性 - >即时运行 - >取消选中“启用即时运行...”
答案 1 :(得分:0)
根据我使用app pls时的经验,请忽略此事,但是当您向客户端/测试人员提供构建时,请在您的设备中进行构建和检查,此问题将解决。尽管如此,我还是通过调试找到了完美的解决方案,直到你可以使用它。 (这只发生在API 24及更高版本中。)
答案 2 :(得分:0)
制作一个名为background_splash
的类似drawable<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@color/gray"/>
<item>
<bitmap
android:gravity="center"
android:src="@mipmap/ic_launcher"/>
</item>
</layer-list>
然后在样式中添加如下样式:
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/background_splash</item>
</style>
然后在你的清单活动中添加你的风格
<activity
android:name=".SplashActivity"
android:theme="@style/SplashTheme">
更多信息: Splash Screens the Right Way
你也可以检查android性能模式的情节: android performance patterns
答案 3 :(得分:0)
如果您已将7.0
放入清单文件中
将其更改为
sqrt
或 属性 - &gt;即时运行 - &gt;取消选中“启用即时运行...”
答案 4 :(得分:0)
属性 - &gt;即时运行 - &gt;取消选中&#39;启用即时运行...&#39;