首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Xamarin.Android的构建/部署非常慢。如何提高它们的速度?

Xamarin.Android的构建/部署非常慢。如何提高它们的速度?
EN

Stack Overflow用户
提问于 2013-11-21 23:56:16
回答 1查看 13.3K关注 0票数 24

我们有一个大型的Xamarin.Android项目,有两个独立的项目和一堆第三方动态链接库,在Hax-x86模拟器或Nexus5设备上进行调试部署(没有任何更改)是非常慢的(> 80秒)。相比之下,Xamarin.iOS版本的应用程序可以在不到7秒的时间内部署到真正的设备上。

为了测试部署时间,我还创建了一个全新的Xamarin.Android项目,它可以在大约4秒内完成部署。当我添加一个依赖项目时,部署时间会增加到7秒。当我将布局文件添加到依赖项目中时,部署时间增加到大约10秒。

有没有可能使用Xamarin Studio来加速Android的构建和部署?相比之下,大型Eclipse Android项目的部署速度相当快。

更新:

仅运行安装构建步骤就需要大约40秒:

代码语言:javascript
代码运行次数:0
运行
复制
time xbuild /t:Install BigApp.csproj
...
...
...
Time Elapsed 00:00:42.8526970

大约一半的时间花在将上述命令打印到控制台上:

代码语言:javascript
代码运行次数:0
运行
复制
Target _CompileDex:
      JavaSourceFiles:
      JavaLibraries:
      ExternalJavaLibraries:
Tool /usr//bin/java execution started with arguments: -Xmx512M -jar 
/Users/myname/Library/Developer/Xamarin/android-sdk-mac_x86/build-tools/17.0.0//lib/dx.jar 
--no-strict --dex --output=obj/Debug/android/bin/classes.dex obj/Debug/android/bin/classes
/Library/Frameworks/Xamarin.Android.framework/Versions/Current/lib/mandroid/platforms/android-15/mono.android.jar
/Users/myname/Projects/BigApp/obj/Debug/__library_projects__/TestFlightBindings.Jars.TestFlightLib_1_2.jar
/Users/myname/Projects/BigApp/obj/Debug/__library_projects__/android-support-v4.jar
/Users/myname/Projects/BigApp/obj/Debug/__library_projects__/classes.jar
/Users/myname/Library/Developer/Xamarin/android-sdk-mac_x86/extras/google/google_play_services/libproject/google-play-services_lib/libs/google-play-services.jar

当我从Xamarin Studio运行解决方案时,这个步骤发生了两次。一次用于从属项目,一次用于主项目。我尝试用以下命令在控制台上重现此行为

代码语言:javascript
代码运行次数:0
运行
复制
"/Applications/Xamarin Studio.app/Contents/MacOS/mdtool" -v build "--configuration:Debug -t Install" "BigApp.sln"

但这只构建了主项目。

更新:

我创建了一个部署时间非常慢的小型演示项目:https://github.com/perpetual-mobile/SlowAndroidDeploymentWithXamarin

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-29 16:47:31

我就这个问题联系了Xamarin的人,他们修复了Xamarin.Android中的两个问题:

开始提供

在没有任何更改的情况下,我的大型项目的构建时间现在约为5秒。当在最深的lib中进行代码更改时,部署周期不会超过16秒。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20125720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档