自升级到Android Studio 2.0(稳定版)以来,我注意到我安装的Android Studio 1.5早期版本中没有的问题。
我正在开发一个当前项目,我将构建(调试版本)并在真实设备和模拟器上运行,我在Android Studio 1.5中这样做。
每当我构建(调试)相同的项目/应用程序并运行它时,升级Android Studio 2.0,我注意到我在设备或模拟器上暂停了。在应用程序打开之前我得到了一个白色的屏幕几秒钟,这是我之前在AS 1.5中没有的,应用程序会立即打开,没有暂停,没有白屏 - 无论是使用ADB插入手机,都会出现这种情况,或拔掉插头。如果应用程序仍然在手机内存中,它会立即打开,但如果手机重新启动,我会在应用程序打开时获得暂停和白屏。
他们是解决这个问题的吗?还有其他人经历过这个吗?我可能有点过早,因为我还没有完成发布版本,但这似乎是一个奇怪的问题 - 如果它是一个问题!
修改
我正在使用Instant Run,但无论设备是否已插入,都会发生这种情况。如果未插入,Instant Run是否会对其执行产生影响?
更新
如下所示,在Android Studio 2.0中关闭“即时运行”选项可以解决问题。有趣的是,评论表明,使用Instant Run时APK尺寸较小。这是什么意思?可能是Instant Run使用旧的Dalvik / JIT编译器而不是ART吗?这可以解释Apk大小差异和滞后(Dalvik在飞行中编译 - JIT)。每次应用程序运行时,ART都需要安装/编译,这意味着它的Apk大小会更大,执行速度也会更慢,就像这样。
希望有更多经验和知识的人可以确认或揭穿这个......
答案 0 :(得分:35)
Check image for reference 在“设置”中关闭“即时运行” 文件>设置>构建,部署>即时运行 取消选择此处显示的所有选项。
现在解决了白屏问题。
在android studio 2.0中,使用Instant Run时我的APK大小为16 MB 不使用Instant Run就变成了27 MB。 在1.5 ..而大小是27 MB。
Instant Run是罪魁祸首。
<强>更新强> 白屏问题/即时运行仅适用于调试版本。问题不会影响版本构建。
答案 1 :(得分:-5)
根本不需要, 如果您尝试取消选择“设置”中的所有选项。文件&gt;设置&gt;构建,部署&gt;即时运行,您的应用程序将在设备上进行大规模构建。 (在您的设备上转到设置 - &gt;应用程序 - &gt;以比正常大的尺寸查看您的应用。 在这种情况下,为避免在运行您的应用时出现白屏,请在AndroidMenifest.xml中的第一个活动中添加:
"android:theme="@android:style/Theme.Translucent.NoTitleBar"
例如:
<activity
android:name=".WelcomeScreen"
android:label="@string/app_name"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".SplashActivity" />
在此示例中,WelcomeScreen是我的第一个启动活动。
Goodluck给你!