I have a 2013 Retina MacBook pro and am amazed by the XCode build speed. I can build and run a fairly large Objective-C app in the simulator in about 2-3 seconds.
When building and running a smaller Titanium App for iPhone, it takes about 15 seconds an I am wondering why. In the console, the build process is really fast, but the app hangs for about 10 seconds on "Invoking xcodebuild"
$ 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
Is there anything I can do to make this faster?
I got the hint that lead to the solution of the problem on my Appcelerator QA Question
The cause of the full build each time was hinted by this line in the logs:
Forcing rebuild: custom Info.plist CFBundleIdentifier not equal to tiapp.xml <id>
I have a custom Info.plist in my project which is copied to the XCode project each time. I have changed the tiapp.xml <id> property be identical to CFBundleIdentifier and the build goes through now in less than 4 seconds.
Actually in objective-c You directly can run the app which takes you 2-3 seconds but in
titanium first javascript is converted to objective-c and then this objective-c to the native app so it takes a little while ..but once you compiled the app . it will not take much time for second run and so on.since once built has been created .it just makes little changes in built and run ..except for first time it takes less time for other run..but some times it may take while . . we cannot estimate the time
Related
When I compile my application targeting android sdk 23 on with 5.1.1.GA and a phone running Marshmallow I get a crash on the startup of the app right after
[INFO] App successfully installed
[INFO] Starting app: com.rexel.rexelmobile/.RexelUsaActivity
[DEBUG] Trying to start the app...
[INFO] Application pid: 30040
[INFO] Project built successfully in 1m 11s 341ms
I have no way of knowing what is causing this, if I use a Lollipop phone everything works fine. My log level is the lowest possible.
UPDATE: It is a module. I am working on modifying it to add the ask for permissions requirement. I hope Appcelerator knows that Marshmallow likely broke a majority of the current modules.
I was getting the same error as you but I am using 5.1.0.GA.
If you are using any modules, make sure they are updated. I am using ti.imagefactory and had to update it from 2.1 to 2.2 in order to get Android M to actually open my app. Hope this solves your problem.
i am new in titanium development environment, i have just installed titanium, nodejs and android framework on my pc. everything is fine but when i am trying to run my project it's giving me this log :-
Titanium Command-Line Interface, CLI version 3.2.1, Titanium SDK version 3.2.2.GA
Copyright (c) 2012-2014, Appcelerator, Inc. All Rights Reserved.
Please report bugs to http://jira.appcelerator.org/
[INFO] : Deploy type: development
[INFO] : Building for target: emulator
[INFO] : Building for emulator: Nexus 7
[INFO] : Targeting Android SDK: 19
[INFO] : Building for the following architectures: armeabi, armeabi-v7a, x86
[INFO] : Signing with keystore: C:\Users\adnig\AppData\Roaming\Titanium\mobilesdk\win32\3.2.2.GA\android\dev_keystore (tidev)
[INFO] : Debugging disabled
[INFO] : Profiler disabled
[INFO] : Forcing rebuild: C:\Users\adnig\Documents\Titanium_Studio_Workspace\Work\build\android\build-manifest.json does not exist
[INFO] : Launching emulator: Nexus 7
[INFO] : Running: C:\Users\adnig\Downloads\Compressed\adt-bundle-windows-x86-20140321\adt-bundle-windows-x86-20140321\sdk\tools\emulator.exe "-avd" "Nexus 7" "-port" "5554" "-no-boot-anim" "-partition-size" "128"
[ERROR] Application Installer abnormal process termination. Process exit value was 1
i don't know what's this problem is all about.
Check if you installed required Android SDKs.
In your case you need to install Android SDK 19 or change it in tiapp.xml file.
In my experience with Titanium , the " Application Installer abnormal process termination. Process exit value was 1 " error is the most common error and it does not point to something specific. Basically everything that makes your app / emulator crash or close will throw up that error. Common errors that cause this are :
-A faulty setup of the SDK
-An error in your Code
-Mismatch between The titanium IDE version in your tiapp.xml file and your actual titanium version.
-An error in your emulator
Also note that the default emulator is too slow.
What I would do in your situation :
-Check the status of your SDK by going to Dashboard, and scroll down to setup native sdk's. Make sure that the environment you are deploying to is shown as green !
-Use a real device to test, or use genymotion as emulator (it's super fast !)
-Set up a new project (file -> new project -> mobile application project -> 2 tabbed alloy , fill in the details) with sample code and see if it runs.
CLI version 3.2.0, Titanium SDK version 3.1.3.GA
the app runs fine in simulator but on device i get an error at start up
couldn't find module alloy/sync/util
error is correct as in build logs and on alloy directory i do not see util.js
i only see
[INFO] : - alloy/sync/localStorage.js
[INFO] : - alloy/sync/properties.js
[INFO] : - alloy/sync/sql.js
before upgrade of titanium studio the app worked fine on device
can some one tell me where did the util.js file go ? or i have add reference to that file ?
and yes my app is using migrations
I am a newbie of Titanium. I created a Titanium Alloy project, and run it in iPhone simulator. And it builds successfully:
....
[INFO] : Finished building the application in 1s 881ms
[INFO] : Running application in iOS Simulator
[INFO] : Launching application in iOS Simulator
[INFO] : Focusing the iOS Simulator
[INFO] : Application has exited from iOS Simulator
[INFO] : Project built successfully in 2s 645ms
But when I open iOS simulator, the application does not exist.
Note: I already put the link to the correct path of iOS SDK.
Can you help me figure out, how to solve this problem?
Doing the following could solve your problem
1)Reset the iOS simulator
2)Delete the Old build
3)Give the project clean build
Thanks
I downloaded Titanium and installed. As instructed in quick guide, I created Hello World Project. I run the project. Looks everything going well. Last few line in console:
[INFO] : Running application in iOS Simulator
[INFO] : Launching application in iOS Simulator
[INFO] : Focusing the iOS Simulator [
[INFO] : Application has exited from iOS Simulator
[INFO] : Project built successfully in 37s 420ms
However, the simulator doesn't launched. What went wrong?
try to clean build project and delete app if installed in simulator then try again.
try this 3-4 times because sometimes it creates problem as you got.
and also try to build app with different titanium sdks as well.
Fixed after upgrading to Mac to 10.8