Appcelerator Developer Blog

ARti Source Code Released

We’re pleased to announce the release of the Augmented Reality for Titanium (ARti) application source code. We first announced this back in the first week of January and we had hoped to release the source shortly thereafter but ran into some issues that required us to release the code along with a 1.6.x build of our MobileSDK.

The core of this application will hopefully spark Titanium developers to push for more advanced and different applications. It truly shows what can be done with tools provided in its raw forms. ARTi is released under the Apache 2.0 license and is available to all that want to play with it. We hope that by putting tools like this into your hands, that community developers can focus around hacking, forking, and generally improving the applications that are produced. ARTi, we feel, is a great stepping stone towards this goal.

If you are looking to improve or develop more around the ARTi code, consider adding the following tools and enhancements:

  • Accelerometer Controls
  • Converting 2D Matrices to 3D
  • Updating information based on location
  • Additional Facebook improvements like checkin

NOTE: ARti only works for iOS and only under the emulator, iPhone 3GS and iPhone 4

To run ARti you’re going to need to download and install Titanium Mobile 1.6.0 RC1.

To install the MobileSDK, you’ll want to download and then extract into your Titanium directory. On OSX, your Titanium directory will be under either /Library/Application Support/Titanium or~/Library/Application Support/Titanium.

Now, you’ll need to restart Titanium Developer to pick up the new release. Once restarted, remember to change the ARti application SDK version and then click the ‘Save’ button.

Here are the links to what you need to get started with ARti.

Titanium Mobile 1.6.0 RC1
ARti Source Code

NOTE: If you’re experiencing issues with this please do a clean pull from github. What’s currently in GitHub is currently working.

Code Strong!

32 Responses to “ARti Source Code Released”

  1. Kosso says:

    “only under the emulator” ?

    So this won’t work deployed as an app?

    (I suppose I’ll pull it down and give it a go :) )

    thanks anyway! :)

    K

  2. Chris says:

    Looks like the app is still looking for the facebook module?

    I get the error: Can’t find module ti.facebook

  3. @Kosso: Under the emulator or deployed on those 2 HW devices.

  4. [...] This post was mentioned on Twitter by Appcelerator, Appcelerator, Chad Auld, Benjamin Sterling, neofreko and others. neofreko said: RT @appcelerator: Source code for the Augmented Reality for Titanium (ARti) application is now available – http://bit.ly/eIBic2 [...]

  5. Kosso says:

    @Tony cheers. ;)

    So. Do we need to install the facebook module separately? I’m getting the ti.facebook module not found error too.

  6. Kosso says:

    @Tony (and @Chris) : It looks like the Facebook module on github only has code for Android?

    https://github.com/appcelerator/titanium_modules/tree/master/facebook/mobile

  7. Kosso says:

    Just tried the 1.6.0 RC1 and also the latest 1.7.0 from github. Both complain about ti.facebook

    The modules link above (in comments and the article) only contains Android module code. I’m trying to build for iOS.

  8. @Kosso: It should have been part of the MobileSDK, regardless I just pushed the module into the ARti repo.

  9. Kosso says:

    @Tony thanks. I’ll try it again.

    It’s definitely not in the mobile SDK – at least not in the latest RC1 or 1.7.0

    (I did clear the build folder etc. And restart Ti Developer)

  10. Mostafa Farghaly says:

    I suggest supporting OCR beside AR, it’ll open the door to alot of interesting apps like WorldLens.

  11. Kosso says:

    OK. Tried a fresh pull with the module code too:

    It detects the ‘third-party’ module zip to install it, then fails building with a builder.py error, followed by a run.py

    Where would you like me to send the details/output/log? Helpdesk or Lighthouse?

    Probably not a good idea here in a blog comments ;)

    For anyone else reading this : TITANIUM ROCKS!! OK!!?

    good ;)

  12. James says:

    same here. wiped out the content of the /build/iphone folder and rebuild.

    File “/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/builder.py”, line 1003, in main
    execute_xcode(“iphonesimulator%s” % link_version,["GCC_PREPROCESSOR_DEFINITIONS=__LOG__ID__=%s DEPLOYTYPE=development TI_DEVELOPMENT=1 DEBUG=1 TI_VERSION=%s" % (log_id,sdk_version)],False)
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/builder.py”, line 924, in execute_xcode
    output = run.run(args,False,False,o)
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/run.py”, line 39, in run
    sys.exit(rc)
    SystemExit: 1

  13. ikuya says:

    I suppose “/Library/Appcelerator Support/Titanium” is ~/Library/Application Support/Titanium.
    I will try this out! Thanks!

  14. Marco says:

    Same with me.
    Tried with 1.6.0.RC1 and 1.7.0 clean rebuild

  15. Benoit says:

    same problem as James. Please help.

  16. Hardbyte says:

    Hi, I’m also experiencing problems with ti.facebook module not being found on mobileSDK 1.6.0

    Anyone got a solution?

    Many thanks

  17. Alexandros says:

    Same problem here, as James noted in previous comment.

  18. [...] add comment at this time.  Aaron K. Saunders you should check out this demo applicationhttp://developer.appcelerator.co…7:46pmView All 0 CommentsCannot add comment at this time. Add [...]

  19. Jae says:

    Getting the same error with SDK 1.6.0.RC1

    [ERROR] Error: Traceback (most recent call last):
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/builder.py”, line 1003, in main
    execute_xcode(“iphonesimulator%s” % link_version,["GCC_PREPROCESSOR_DEFINITIONS=__LOG__ID__=%s DEPLOYTYPE=development TI_DEVELOPMENT=1 DEBUG=1 TI_VERSION=%s" % (log_id,sdk_version)],False)
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/builder.py”, line 924, in execute_xcode
    output = run.run(args,False,False,o)
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/run.py”, line 39, in run
    sys.exit(rc)
    SystemExit: 1

  20. Please try running using MobileSDK 1.5.1

  21. Jae says:

    I’ve actually tried using Ti SDK 1.5.1 on it but has issues of it’s own.
    While setting up the permission for Facebook (1)after pressing the OK button on the last page from Facebook it doesn’t return back to ARTi (2)and ARTi seems to have trouble picking up the login session.

  22. MDavid Low says:

    Hey guys,

    OK, I know my way around Ti fairly well, this is just irritating the hell out of me.

    So, I did all the walk through says – I grabbed the source code, imported, threw the module in the correct folder, and updated so that I could use MobileSDK 1.6 RC1 properly.

    When I build, I am always using iOS and 4.2.

    When I build using the MobileSDK 1.6 RC1, I get this error:

    [INFO] One moment, building …
    [INFO] Detected third-party module: ti.facebook/0.1
    [INFO] Titanium SDK version: 1.6.0.RC1
    [INFO] iPhone Device family: iphone
    [INFO] iPhone SDK version: 4.2
    [INFO] iPhone simulated device: iphone
    [ERROR]
    [ERROR] Error: Traceback (most recent call last):
    File “/Users/MDavid/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/builder.py”, line 1003, in main
    execute_xcode(“iphonesimulator%s” % link_version,["GCC_PREPROCESSOR_DEFINITIONS=__LOG__ID__=%s DEPLOYTYPE=development TI_DEVELOPMENT=1 DEBUG=1 TI_VERSION=%s" % (log_id,sdk_version)],False)
    File “/Users/MDavid/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/builder.py”, line 924, in execute_xcode
    output = run.run(args,False,False,o)
    File “/Users/MDavid/Library/Application Support/Titanium/mobilesdk/osx/1.6.0.RC1/iphone/run.py”, line 39, in run
    sys.exit(rc)
    SystemExit: 1

    When I switch over to TiSDK 1.5.1 and build it, I get this error saying that the FB module isn’t there:

    [INFO] One moment, building …
    [ERROR] Third-party module: ti.facebook/0.1 detected in tiapp.xml but not found at /Library/Application Support/Titanium/modules/iphone/ti.facebook/0.1
    [ERROR] Error: Traceback (most recent call last):
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.5.1/iphone/builder.py”, line 534, in main
    sys.exit(1)
    SystemExit: 1

    Any ideas?

    I’d really love to start playing around with ARti, looks like a lot of fun and I have some great ideas for it!

    Cheers,
    //MD

  23. Hardbyte says:

    With 1.6.0 I get ti.facebook not found.

    With 1.5.1 I get:

    [INFO] One moment, building …
    [ERROR] Third-party module: ti.facebook/0.1 detected in tiapp.xml but not found at /Library/Application Support/Titanium/modules/iphone/ti.facebook/0.1
    [ERROR] Error: Traceback (most recent call last):
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.5.1/iphone/builder.py”, line 534, in main
    sys.exit(1)
    SystemExit: 1

  24. Hardbyte says:

    If you select 1.5.1 it gives the below error message. I’ve then shuffled the ti.facebook folder around on the system to suit the error location below and now it runs fine on 1.5.1 (I get other errors on 1.6.0)

    [ERROR] Third-party module: ti.facebook/0.1 detected in tiapp.xml but not found at /Library/Application Support/Titanium/modules/iphone/ti.facebook/0.1

  25. Hamii says:

    Did as requested Tony and here is the output:

    [INFO] Compiling JavaScript…one moment
    [WARN] JavaScript compiler reported “Be careful when making functions within a loop. Consider putting the function in a closure.” at cameraar.js:134
    [WARN] JavaScript compiler reported “Unescaped ‘-’.” at dates.js:17
    [WARN] JavaScript compiler reported “Unescaped ‘-’.” at dates.js:18
    [WARN] JavaScript compiler reported “‘lblLocal’ is already defined.” at windetail.js:50
    [WARN] JavaScript compiler reported “‘lblSelected’ was used before it was defined.” at winsettings.js:43
    [INFO] One moment, building …
    [ERROR] Third-party module: ti.facebook/0.1 detected in tiapp.xml but not found at /Library/Application Support/Titanium/modules/iphone/ti.facebook/0.1
    [ERROR] Error: Traceback (most recent call last):
    File “/Library/Application Support/Titanium/mobilesdk/osx/1.5.1/iphone/builder.py”, line 534, in main
    sys.exit(1)
    SystemExit: 1

    I did delete the build directory contents to force a full re-build as well. Same result.

  26. Ayo Adesugba says:

    I finally got it working. I had to make the following changes:

    In winmain.js:
    Replace

    var facebook = require("ti.facebook");

    with:

    var facebook = Titanium.Facebook;

    Replace:
    facebook.requestWithGraphPath("search",{q:searchTerm,type:"place",center:center,distance:String(win.distance)},function(e){

    with:

    facebook.requestWithGraphPath("search",{q:searchTerm,type:"place",center:center,distance:String(win.distance)},"GET",function(res){

    Replace the loop that processes the results with:

    var data = [];

    //Ti.API.info(JSON.stringify(e.result));
    var e = JSON.parse(res.result);
    Ti.API.info("Length: "+e.data.length);
    for (var c=0;c<e.data.length;c++) {
    Ti.API.info(e.data[c].id);
    data[c] = {title:e.data[c].name,
    id: e.data[c].id,
    name:e.data[c].name,
    lat:e.data[c].location.latitude,
    lng:e.data[c].location.longitude,
    street:e.data[c].location.street,
    city:e.data[c].location.city,
    state:e.data[c].location.state,
    zip:e.data[c].location.zip
    };
    }

    I apologise if the formatting is messed up. I hope this helps others. This should be run with 1.6.0RC1 which already has the facebook module. You do not need to include the facebook module that was in the github. Delete the Build and modules directories in your project, and rebuild.

    Titanium rocks!!!

  27. MDavid Low says:

    Scratch that, I had mirrored module folders. All fixed now. One was on my HD one was in my user folder. Modules need to be on the HD not in the user folder’s library.

  28. All: If you’re experiencing issues with this please do a clean pull from github. What’s currently in GitHub is currently working on device and on the emulator.

  29. kazuaki konno says:

    I downloaded the source again.
    Now it’s working fine!

  30. phikachu says:

    I had to build using the 1.6.1 mobile sdk in order to get it to work but other than that it works great!

    I’ve trying to get it to work in landscape and in order to do so I’ve applied a 2dmatrix rotation on the overlayView. However, the width always remains the same 320px. Did you guys ever try getting it to work in landscape?