首次运行 AS 2.0 和 gradle 2.0 所花费的时间



最近我Android Studio1.5升级到2.0

有了它,我正在使用gradle 2.0.0

classpath 'com.android.tools.build:gradle:2.0.0'

但是它似乎有一些问题,每当我第一次运行我的应用程序时,它都会显示 while/黑屏 10-15 秒。

我在应用程序类或启动器活动上没有做任何事情,但它也需要花费这么多时间。

我不知道是AS 2.0的问题还是Gradle 2.0.0的问题.奇怪的是它在模拟器上正常工作,只是在设备上花费时间。因此,可能存在设备RAM或处理问题,但是我已经在10-12个设备中检查了它,并且所有设备都有相同的问题。

当我第一次运行我的应用程序时,然后在它像往常一样工作并在几分之一秒内加载启动器活动之后,就会出现问题。

谁能帮我?

每当我第一次运行我的应用程序时,它似乎有一些问题 时间,它显示 while/黑屏 10-15 秒。

我想您的应用程序中有冷启动问题。

冷启动 :

当用户启动应用时,Android 会创建一个新进程 在充电期间,显示黑/白屏幕,该屏幕内置 应用程序主题,或作为条目的活动的主题 点。

如果我们的应用程序很复杂并且 覆盖应用程序对象,该对象通常用于 初始化分析、错误报告器等。

溶液:

  1. 在应用程序主题中指定android:windowBackground
  2. 将初始屏幕添加到应用。

有关详细信息,请查看,http://saulmm.github.io/avoding-android-cold-starts

谢谢。

正如文档描述的那样:

即时运行将更新的代码和资源推送到您连接的设备 或通过执行热插拔、热插拔或冷插拔来执行仿真器。它 根据类型自动确定要执行的交换类型 您所做的更改。

还有文档提到它不是即时运行的错误:

部署全新构建版本时,Android Studio 会将您的应用检测到 允许即时运行推送代码和资源更新。虽然更新 正在运行的应用程序发生得更快,第一次构建可能需要 完成时间更长

您可以通过配置一些 DexOptions 设置来改进构建过程:

android {
  ...
  dexOptions {
    maxProcessCount 4 // this is the default value
    javaMaxHeapSize "2g"
  }
}
  • JavaMaxHeapSize

  • 最大进程计数

在 android studio 中,打开首选项。在搜索栏(首选项对话框)中,键入即时运行或导航到"生成"、"执行"、"部署">"即时运行",然后取消选中所有选项。但是,当然,您将失去即时运行的力量。

更改类路径

classpath 'com.android.tools.build:gradle:2.0.0'

到您以前的构建版本(例如)

classpath 'com.android.tools.build:gradle:1.5.0'

相关内容

  • 没有找到相关文章

最新更新