我有2013年的Retina MacBook pro,并对XCode的构建速度感到惊讶。我可以在大约2-3秒内在模拟器中构建并运行一个相当大的Objective-C应用程序。
在为iPhone制作和运行较小的Titanium App时,我想知道为什么需要大约15秒。在控制台中,构建过程非常快,但应用程序在“调用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
我能做些什么来加快速度吗?
答案 0 :(得分:4)
我得到的提示导致我Appcelerator QA Question
上的问题得到解决每次完整构建的原因都在日志中的这一行暗示:
Forcing rebuild: custom Info.plist CFBundleIdentifier not equal to tiapp.xml <id>
我的项目中有一个自定义Info.plist,每次都复制到XCode项目。我已将tiapp.xml
<id>
属性更改为CFBundleIdentifier
,并且构建在不到4秒的时间内完成。
答案 1 :(得分:2)
实际上在objective-c中您可以直接运行应用程序,这需要2-3秒,但在
钛首先将javascript转换为objective-c,然后将此objective-c转换为本机应用程序,这样需要一段时间..但是一旦你编译了应用程序。它不会花费太多时间进行第二次运行等等。因为一旦构建完成。它只是在构建和运行中做了一点改变。除了第一次它需要更少的时间进行其他运行..但有时可能需要而。 。我们无法估计时间