Titanium Community Questions & Answer Archive

We felt that 6+ years of knowledge should not die so this is the Titanium Community Questions & Answer Archive

Any way to force a rebuild every time?

Titanium is a development package, what are the chances that I am changing things every time I run the emulator?

So why does it skip the rebuild nearly every time, that is so infuriating!!!

I have to edit something in the options, save it and re-build which is SUCH a pain.

Is there no way to tell this thing to rebuild EVERY time?

It would save me a lot more time than not rebuilding would save me.

I know its there to be helpful but it fails badly these days.

So, is there a way around it?

— asked June 23rd 2010 by Stephen Page
  • force
  • rebuild
  • titanium
1 Comment
  • Best way to force a full rebuild is to touch tiapp.xml from command line:

    > touch <PROJECT_DIR>/tiapp.xml

    — commented April 18th 2011 by John Olmstead

4 Answers

  • Accepted Answer

    Best way to force a full rebuild is to touch tiapp.xml from command line:

    > touch <PROJECT_DIR>/tiapp.xml

    — answered April 18th 2011 by John Olmstead
    permalink
    1 Comment
    • doesn't work

      — commented May 10th 2011 by soemarko ridwan
  • You do not need to rebuild as soon as titanium create a bootstrap app. so You don't even neeed to restart to emulator to see your change. just change the view in the emulator after editing/saving a file, or if you want just relaunch app (push big button and launch app)

    this is a major improvement, and developpement is faster this way.

    — answered June 23rd 2010 by Stephane Pelamourgues
    permalink
    1 Comment
    • I have tried closing the app in the emulator and re-launching, I have tried closing the emulator and re-launching. The only time I get any changes showing in the emulator is if I see that Titanium has gone through a re-build by viewing the windows while it is starting the emulator. Is there another way? What are the steps?

      — commented June 23rd 2010 by Stephen Page
  • I know what you mean, it always seemed to ignore my changes forcing me to change the version number each time for a full recompile. Eventually I just made the following batch file to copy from my code workspace for compile and to compile it all using the commands gleaned from a debug mode compile. I am on a PC so it is android only and you will have to alter paths to suit your system. For a mac you will need to make a simple shell script. The important part is to place all your code into the device\bin\assets\Resources directory.

    bypass.bat

    copy /Y C:\Users\Me\workspace\UM\*.js C:\Users\Me\Desktop\Work\Test\Resources
    rmdir /S /Q C:\Users\Me\Desktop\Work\Test\build\android\bin\assets\Resources
    mkdir C:\Users\Me\Desktop\Work\Test\build\android\bin\assets\Resources
    xcopy /S C:\Users\Me\Desktop\Work\Test\Resources C:\Users\Me\Desktop\Work\Test\build\android\bin\assets\Resources
    
    java -cp C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\js.jar org.mozilla.javascript.tools.jsc.Main -opt 9 -nosource -package org.appcelerator.generated -d C:\Users\Me\Desktop\Work\Test\build\android\bin\classes C:\Users\Me\Desktop\Work\Test\build\android\bin\assets\Resources\*.js
    
    C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\tools\aapt.exe package -m -J C:\Users\Me\Desktop\Work\Test\build\android\src -M C:\Users\Me\Desktop\Work\Test\build\android\AndroidManifest.xml -S C:\Users\Me\Desktop\Work\Test\build\android\res -I C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\android.jar
    
    javac -classpath C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\android.jar;C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\titanium.jar -d C:\Users\Me\Desktop\Work\Test\build\android\bin\classes -sourcepath C:\Users\Me\Desktop\Work\Test\build\android\src C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\R.java C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\TestActivity.java C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\TestAppInfo.java C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\TestApplication.java
    
    javac -classpath C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\android.jar;C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\titanium.jar -d C:\Users\Me\Desktop\Work\Test\build\android\bin\classes -sourcepath C:\Users\Me\Desktop\Work\Test\build\android\src C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\R.java C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\TestActivity.java C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\TestAppInfo.java C:\Users\Me\Desktop\Work\Test\build\android\src\test\test\TestApplication.java
    
    java -Xmx512M -Djava.ext.dirs=C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\tools -jar C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\tools\lib\dx.jar --dex --output=C:\Users\Me\Desktop\Work\Test\build\android\bin\classes.dex C:\Users\Me\Desktop\Work\Test\build\android\bin\classes C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\commons-codec-1.3.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\jaxen-1.1.1.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\js.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\titanium.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-accelerometer.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-analytics.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-api.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-app.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-database.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-filesystem.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-geolocation.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-gesture.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-json.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-map.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-media.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-network.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-platform.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-ui.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-utils.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-xml.jar C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-yahoo.jar
    
    C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\tools\aapt.exe package -f -M AndroidManifest.xml -A C:\Users\Me\Desktop\Work\Test\build\android\bin\assets -S res -I C:\Users\Me\Desktop\eclipse\android-sdk-windows\platforms\android-4\android.jar -I C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\titanium.jar -F C:\Users\Me\Desktop\Work\Test\build\android\bin\app.ap_
    
    C:\Users\Me\Desktop\eclipse\android-sdk-windows\tools\apkbuilder.bat C:\Users\Me\Desktop\Work\Test\build\android\bin\app-unsigned.apk -u -z C:\Users\Me\Desktop\Work\Test\build\android\bin\app.ap_ -f C:\Users\Me\Desktop\Work\Test\build\android\bin\classes.dex -rf C:\Users\Me\Desktop\Work\Test\build\android\src -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\commons-codec-1.3.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\jaxen-1.1.1.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\js.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\titanium.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-accelerometer.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-analytics.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-api.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-app.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-database.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-filesystem.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-geolocation.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-gesture.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-json.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-map.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-media.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-network.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-platform.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-ui.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-utils.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-xml.jar -rj C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\modules\titanium-yahoo.jar
    
    jarsigner -storepass tirocks -keystore C:\ProgramData\Titanium\mobilesdk\win32\1.3.0\android\dev_keystore -signedjar C:\Users\Me\Desktop\Work\Test\build\android\bin\app.apk C:\Users\Me\Desktop\Work\Test\build\android\bin\app-unsigned.apk tidev
    
    C:\Users\Me\Desktop\eclipse\android-sdk-windows\tools\zipalign.exe -v 4 C:\Users\Me\Desktop\Work\Test\build\android\bin\app.apk C:\Users\Me\Desktop\Work\Test\build\android\bin\app.apkz
    
    — answered June 23rd 2010 by Gary Blosser
    permalink
    0 Comments
  • Steve you are absolutely right and Titanium sometimes even installs a previous version on to my device, when it is supposed to de a full rebuild in these circumstances. There is no possibility of a mistake here, the changes are very visible and I first delete the app from the device and also from iTunes -> to the Trash. I worry what Titanium might package up for the app store!

    The only thing I have found to guarantee the latest version gets on to the device is to do a rebuild, close the app in the simulator and then delete the app from the simulator (and all the useless copies that accumulate there), then exit and rebuild.

    That does it for me.

    regards,

    JH

    — answered June 24th 2010 by John Holman
    permalink
    0 Comments
The ownership of individual contributions to this community generated content is retained by the authors of their contributions.
All trademarks remain the property of the respective owner.