Modeveast Appcelerator Presentation
Upcoming SlideShare
Loading in...5

Modeveast Appcelerator Presentation






Total Views
Views on SlideShare
Embed Views



12 Embeds 1,328 1031 142 87 22 19 10 7 4 2 2 1 1



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • Show TiStudio IDE, focus on debugger, deployment to device on android and iOS, packaging for app store delivery, code completion, git/svn integration
  • Titanium lets you leverage skills you have already
  • 200,000+ developers / 27,000 apps “in the wild”
  • Show TiStudio IDE, focus on debugger, deployment to device on android and iOS, packaging for app store delivery, code completion, git/svn integration
  • Show TiStudio IDE, focus on debugger, deployment to device on android and iOS, packaging for app store delivery, code completion, git/svn integration

Modeveast Appcelerator Presentation Modeveast Appcelerator Presentation Presentation Transcript

  • Building Mobile Apps with Titanium Appcelerator Part Two Aaron K. Saunders Appcelerator Platform Evangelist Founder/CTO Clearly Innovative Inc.
  • Who Am I?• Founder/CTO Clearly Innovative Inc.• Appcelerator Platform Evangelist• 25+ years experience in software development field – Recently Enterprise Web Development w/Java & Open Source Technologies• Mobile App Development with Appcelerator for last two years• Top Contributor on Appcelerator Q&A Forum
  • Here Comes The Marketing Pitch View slide
  • Titanium Is…• A cross-platform JavaScript-based framework• With access to native OS and hardware features• Modular and extensible• Free View slide
  • Titanium exploits the nativeecosystemNative User Experience MultimediaNative performance + Native UI Camera, video camera,(tables, animations, gestures…e streaming/device audio/videotc.)Location-based services AnalyticsAugmented Track usage patterns andreality, geolocation, compass, n adoptionative mapsSocial sharing Titanium modulesFacebook, Twitter, Yahoo YQL. Appcelerator Marketplace forNative email/address book add-on functionalityData Development toolsLocal Titanium Studio, integrationSQLite, filesystem, properties with native SDK toolsdata store, web services
  • Titanium is easier// Objective-CUIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert" message:@"Hello World" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];[alert show];[alert release];
  • Titanium is easier// Java/AndroidAlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setMessage("Hello World") .setCancelable(false) .setPositiveButton("OK", new DialogInterface.OnClickListener(){• public void onClick(DialogInterface dialog, int id) { MyActivity.this.finish(); } });AlertDialog alert = builder.create();
  • Titanium is easier// Titaniumalert("Hello World"); … and it’s cross platform!
  • Powered by TitaniumApplications:• NBC apps• NYS Senate• Wunderlist• GetGlueCompanies:• Kellogg’s• NBC/Universal• eBay and PayPal• Anheuser Busch• Jaguar• … and many more
  • Back To The Code
  • Use The Tools• Titanium Studio is your friend – Eclipse Based IDE – Integrated debugger – Code completion – Project Management – SVN/Git/Terminal Integration – Xcode Build and Deployment Integration• Command Line still available
  • Demonstration
  • Use The Documentation• QA Forum – Lots of content – Improved overall site search capabilities – Monitored by Developer Relations• Appcelerator Wiki – Recent restructuring, lots of good stuff and sample code• FREE, FREE, FREE Online Videos for Appcelerator Certification Exam w/Code
  • Use The Modules• Appcelerator Marketplace• Search Github• Ask in the forums• Build Your Own
  • A Change is Upon Us• Not Recommended – Write your app like Kitchen Sink – multiple context application structure – use of Ti.Include• Recommended – CommonJS modules for application structure – Single Application namespace – Pass variables into modules – Event Based Programming
  • CommonJS Application Structure// app.js// commonjs module for database functionalityvar db = require(db);// commonjs module for user interface functionalityvar ui = require(ui);// call methods on objectsdb.createDb();var tabGroup = ui.createAppTabGroup();;
  • CommonJS Module Structure// db.js// variable scope is local to this modulevar DATABASE_NAME = todo;// exports indicates that the method is publicexports.createDb = function() { Ti.Database.install(todo.sqlite, DATABASE_NAME);};exports.selectItems = function(_done) { var retData = []; var db =; var rows = db.execute(select ROWID, * from todo where done = ?, _done); while (rows.isValidRow()) { retData.push({item:rows.fieldByName(item), id:rows.fieldByName(ROWID)});; } db.close(); return retData;};
  • Examples?• Sample Projects will soon be added to Titanium Studio• See Wiki Page – /CommonJS+in+Titanium• Android & iOS Compatible – RSS Feed Application – Map/Location Based Application – TODO database Application
  • Demonstration
  • Questions Aaron K. @aaronksaunders