5

我有一台 2013 Retina MacBook pro,对 XCode 的构建速度感到惊讶。我可以在大约 2-3 秒内在模拟器中构建并运行一个相当大的 Objective-C 应用程序。

在为 iPhone 构建和运行较小的 Titanium 应用程序时,大约需要 15 秒,我想知道为什么。在控制台中,构建过程确实很快,但应用程序在“Invoking xcodebuild”上挂了大约 10 秒

$ titanium build -p ios
Titanium Command-Line Interface, CLI version 3.0.24, Titanium SDK version 3.0.2.v20130206164716
Copyright (c) 2012-2013, Appcelerator, Inc.  All Rights Reserved.

Please report bugs to http://jira.appcelerator.org/

[INFO]  Build type: development
[INFO]  Building for target: simulator
[INFO]  Building using iOS SDK: 6.1
[INFO]  Building for iOS iPhone Simulator: 6.1
[INFO]  Building for device family: iphone
[INFO]  Minimum iOS version: 4.3
[INFO]  Debugging disabled
[INFO]  Initiating prepare phase
[INFO]  Copying custom Info.plist from project directory
[INFO]  Forcing rebuild: custom Info.plist CFBundleIdentifier not equal to tiapp.xml <id>
[INFO]  No Titanium Modules required, continuing
[INFO]  Cleaning old build directory
[INFO]  Performing full rebuild
[INFO]  Copying Xcode iOS files
[INFO]  Creating Xcode project directory: .../build/iphone/MyProject.xcodeproj
[INFO]  Writing Xcode project data file: Titanium.xcodeproj/project.pbxproj
[INFO]  Writing Xcode project configuration: project.xcconfig
[INFO]  Writing Xcode module configuration: module.xcconfig
[INFO]  Creating symlinks for simulator build
[INFO]  Forcing rebuild: ApplicationDefaults.m has changed since last build
[INFO]  Writing properties to ApplicationDefaults.m
[INFO]  No module resources to copy
[INFO]  No CommonJS modules to copy
[INFO]  Invoking xcodebuild

我能做些什么来加快速度吗?

4

2 回答 2

4

我得到了导致我的Appcelerator QA Question 问题解决的提示

日志中的这一行暗示了每次完整构建的原因:

Forcing rebuild: custom Info.plist CFBundleIdentifier not equal to tiapp.xml <id>

我的项目中有一个自定义 Info.plist,每次都复制到 XCode 项目中。我已将tiapp.xml <id>属性更改为相同,CFBundleIdentifier现在构建在不到 4 秒的时间内完成。

于 2013-03-12T14:44:26.417 回答
2

实际上在objective-c中,您可以直接运行需要2-3秒的应用程序,但在

钛首先将javascript转换为objective-c,然后将此objective-c转换为本机应用程序,因此需要一些时间..但是一旦您编译了应用程序。第二次运行不会花费太多时间,依此类推。因为一旦构建已经创建。它只是在构建和运行中进行很少的更改。除了第一次运行其他运行需要更少的时间..但有时可能需要尽管 。. 我们无法估计时间

于 2013-03-12T06:07:25.807 回答