SlideShare a Scribd company logo
1 of 48
Mobile App Dev. Using
Drupal As Base Syetem
 Sumit Kataria (sumitk)
                          26. aug 10:00
                          VPS.NET
About Me
  Sumit Kataria
Freelancer & Engineer at CivicActions


 sumitk@sumitk.net
http://twitter.com/sumitk
       IRC: sumitk
Overview
But Why Build For
     Mobile?
More than 41 million iPhones sold
to date
 Android now runs on more than
64 mobile devices
 60,000 Android devices
&100,000 more iPhones sold each
day!
 40% of all Internet traffic will be
by Mobile in 2013
But Isn’t Mobile
Development Expensive?
“Most apps take at least six
  months of full-time work
 and cost between $20,000
 and $150,000 to develop.”
       - Forrester Research
Other Questions
        Come ....
★Which platforms do you choose?
★How many codebases do you want to (or even
 can you) support?
★How long will it take to build native on N
 platforms?
★How much effort will be duplicated?
★What if you bet on the wrong platform?
★Who writes the code? Hire out? Retrain/
 retool yourself or your devs?
The Web Is An
       Option...
★...and should be preferred when
 feasible
★Mobile browsers are progressing
 fast and converging around WebKit
★But there are limitations
★Native apps are inherently more
 capable than web apps
What to Do Then..?
You can Look For
New Better Tools....
We Choose Titanium ...
Who Uses Titanium?
★NBC Universal
★PayPal
★MTV
★Anheuser-Busch
★Computer Sciences Corporation
★Intridea (Oil Reporter)
★100s of Titanium apps hitting the stores each
 month (should soon eclipse 1000/month)
What is Titanium?
Titanium is an open source
framework for building native
mobile (or desktop) applications
using open web technologies
(JavaScript - optionally HTML and
CSS)
More ..
  Open Source - Apache 2.0 License
  Build Native Apps - 9.x+
  Very Fast in Performance
  Modular Approach to Add
Functionality
  Lot of APIs Available and Ready to Us
  Support and Partner Programs
Available
★Titanium   Mobile is Free
(as in Beer)
★Userscan pay for additional
 support.
★You can get your App out in
 development time of 2-3 weeks
 with 1-2 developers.
Platforms
Why Use Drupal to Manage
 Your Mobile Application
         Data?
What is Drupal?
Drupal is a Free and Open Source Content
 Management System that allows users to
easily publish, manage and organize a wide
       variety of content on a website.
It is the most reliable CMS in the
world
 Manages all your data and content
 ... meta data and users...
 ... search needs and geo-data...
 All in a very reliable way
 And besides...
You are already using it ....
What You’ll Be Programming
  Javascript
  Titanium API
  WebViews
  HTML 5
  CSS 3
How Do You Use Drupal to
  Manage Your Mobile
   Application's Data?
Services API
Enables Drupal to act as a webservice to
accept and send data in a secure way.

    http://drupal.org/project/services
Services API Consists of 3 Parts
  Services
  Servers
  Authentication Layer
Services
Services are methods intended for
consumption by remote applications.

  e.g. user.get user.save node.get
      node.save views.get etc.
Servers
 Servers are ways in which a Service
  could be called from remote site.

e.g. xmlrpc (ships with Services core),
        json, jsonrpc, rest etc.
Authentication Methods

★ Keys (Services core)
★ OAuth
Titanium Architecture
Titanium Features
Native UI                            Rich Media APIs
Real native tables, tabs, sliders,   Local and streaming audio and
and views                            video, media recording


Location APIs                        Open Source and Extensible
Native Maps, Compass, and            Extend Titanium with custom
Geolocation                          modules in native code


Local and Remote Data                Integrated Analytics
Local SQL Database, Lightweight      Baked-in analytics APIs to
Key/Value Store, XHR                 measure
                                     results and behavior

Social APIs                          Development Tools
Integrated Facebook Connect          Develop and distribute your app
and YQL                              for
                                     multiple platforms from a single
                                     tool
Modular Approach
Custom Modules - Obj-C & Java
What Titanium Mobile is not:
★ Not a native wrapper around a web view
 (PhoneGap being an example of this
 approach)
★ However, you do have a web view
 component for HTML/CSS UI if that is your
 preference
★ Your JavaScript code is invoking native APIs
 for UI and other native functions
How to Get Started..
  Install iPhone SDK (Mac OS only)
  Install Titanium Developer (Mac Win
Linux)
  Create account on Titanium Developer
  Download and install Services and
json_server modules from drupal.org
  More help:
http://civicactions.com/blog/sumit
Data, Users   Services API


Drupal


       TI Network API




                        Titanium Framework
Make a Drupal view.get Service Call
Example
Example
Example
Titanium Developer
★ Manage   and run
  Titanium applications
★ Package applications for
  distribution
★ Run on a device for
  testing
★ Manage Appcelerator
  account
Questions so far ...
Titanium Fundamentals
• A Titanium application is a
  JavaScript program that is
  interpreted at runtime on the
  device
• app.js defines the root
  execution context of the app
• Note that we are not running
  in a browser
• It use the WebKit KJS
  JavaScript engine (iOS) or
  Rhino (Android/BB)
Titanium JavaScript API
★ Organized into logical namespaces
★ “Titanium” (or just “Ti” for short) is the root
 namespace for all Titanium functionality
★ A few other odds and ends in the global space
  ★ setTimeout/setInterval
  ★ alert
  ★ JSON
Cross-Platform Development
★ Not all UI is available across platforms
★ Titanium != “Write Once, Run Everywhere”
★ It tries to enable native apps that look and feel
 like they were created in Objective-C or Java
★ Also note that even cross-platform UI
 components (like table views) will render
 differently cross platform
★ Cross Platform testing is critical during dev cycle
But wait, there’s more!
★ Animation APIs
★ Social Networks
★ Custom Module
 Development
★ iPad Development
★ HTML 5 and CSS 3
★ Explore Desktop!!!
Resources
★ Community Q&A
  http://developer.appcelerator.com
★ Reference Docs
★ My Blog: http://civicactions.com/blog/sumit
  OR http://sumitk.net
★ http://groups.drupal.org/titanium-api
Anything Else ...
   Sumit Kataria
   sumitk@sumitk.net
   http://www.sumitk.net
         IRC: sumitk
http://cph2010.drupal.org/node/5728

More Related Content

What's hot

Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkCihad Horuzoğlu
 
Mobilizing your Existing Enterprise Applications
Mobilizing your Existing Enterprise ApplicationsMobilizing your Existing Enterprise Applications
Mobilizing your Existing Enterprise ApplicationsNick Landry
 
Hybrid App Development with PhoneGap
Hybrid App Development with PhoneGapHybrid App Development with PhoneGap
Hybrid App Development with PhoneGapDotitude
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notesjaxarcsig
 
Cordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ CodeaholicsCordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ CodeaholicsEddie Lau
 
Ionic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile appsIonic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile appsAndreas Sahle
 
JVx and Vaadin, in practice
JVx and Vaadin, in practiceJVx and Vaadin, in practice
JVx and Vaadin, in practiceSIB Visions GmbH
 
Introduction to the Ionic Framework
Introduction to the Ionic FrameworkIntroduction to the Ionic Framework
Introduction to the Ionic Frameworkrrjohnson85
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapNick Landry
 
Cross platform mobile application development
Cross platform mobile application developmentCross platform mobile application development
Cross platform mobile application developmentwebprogr.com
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkTroy Miles
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSZvika Epstein
 
Hybrid Mobile Development
Hybrid Mobile DevelopmentHybrid Mobile Development
Hybrid Mobile DevelopmentShai Raiten
 
Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioMizanur Sarker
 
Building Universal Windows Apps for Smartphones and Tablets with XAML & C#
Building Universal Windows Apps for Smartphones and Tablets with XAML & C#Building Universal Windows Apps for Smartphones and Tablets with XAML & C#
Building Universal Windows Apps for Smartphones and Tablets with XAML & C#Nick Landry
 

What's hot (20)

tittanium
tittaniumtittanium
tittanium
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic Framework
 
Mobilizing your Existing Enterprise Applications
Mobilizing your Existing Enterprise ApplicationsMobilizing your Existing Enterprise Applications
Mobilizing your Existing Enterprise Applications
 
Hybrid App Development with PhoneGap
Hybrid App Development with PhoneGapHybrid App Development with PhoneGap
Hybrid App Development with PhoneGap
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notes
 
Cordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ CodeaholicsCordova, Angularjs & Ionic @ Codeaholics
Cordova, Angularjs & Ionic @ Codeaholics
 
Ionic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile appsIonic Framework - get up and running to build hybrid mobile apps
Ionic Framework - get up and running to build hybrid mobile apps
 
JVx and Vaadin, in practice
JVx and Vaadin, in practiceJVx and Vaadin, in practice
JVx and Vaadin, in practice
 
Introduction to the Ionic Framework
Introduction to the Ionic FrameworkIntroduction to the Ionic Framework
Introduction to the Ionic Framework
 
Ionic framework
Ionic frameworkIonic framework
Ionic framework
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
 
TypeScript
TypeScriptTypeScript
TypeScript
 
Cross platform mobile application development
Cross platform mobile application developmentCross platform mobile application development
Cross platform mobile application development
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
 
Building mobile apps using meteorJS
Building mobile apps using meteorJSBuilding mobile apps using meteorJS
Building mobile apps using meteorJS
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJS
 
Building iOS app using meteor
Building iOS app using meteorBuilding iOS app using meteor
Building iOS app using meteor
 
Hybrid Mobile Development
Hybrid Mobile DevelopmentHybrid Mobile Development
Hybrid Mobile Development
 
Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual Studio
 
Building Universal Windows Apps for Smartphones and Tablets with XAML & C#
Building Universal Windows Apps for Smartphones and Tablets with XAML & C#Building Universal Windows Apps for Smartphones and Tablets with XAML & C#
Building Universal Windows Apps for Smartphones and Tablets with XAML & C#
 

Viewers also liked

Drupal, JavaScript és jQuery
Drupal, JavaScript és jQueryDrupal, JavaScript és jQuery
Drupal, JavaScript és jQueryErno Zsemlye
 
Services Apps Iand Flex Applications
Services Apps Iand Flex ApplicationsServices Apps Iand Flex Applications
Services Apps Iand Flex ApplicationsSumit Kataria
 
Drupal+javascript
Drupal+javascriptDrupal+javascript
Drupal+javascriptPéter Nagy
 
Drupal as Base For Your NEXT Mobile App
Drupal as Base For Your NEXT Mobile AppDrupal as Base For Your NEXT Mobile App
Drupal as Base For Your NEXT Mobile AppSumit Kataria
 
Drupal on Your TV: Drupal Design Camp Boston 2010
Drupal on Your TV: Drupal Design Camp Boston 2010Drupal on Your TV: Drupal Design Camp Boston 2010
Drupal on Your TV: Drupal Design Camp Boston 2010Ryan Price
 
Mobile apps using drupal as base system SumitK DrupalCon Chicago
Mobile apps using drupal as base system   SumitK DrupalCon ChicagoMobile apps using drupal as base system   SumitK DrupalCon Chicago
Mobile apps using drupal as base system SumitK DrupalCon ChicagoSumit Kataria
 
Front-end Performance in Drupal
Front-end Performance in DrupalFront-end Performance in Drupal
Front-end Performance in DrupalLimoenGroen
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016Andrew Chen
 

Viewers also liked (9)

Drupal, JavaScript és jQuery
Drupal, JavaScript és jQueryDrupal, JavaScript és jQuery
Drupal, JavaScript és jQuery
 
Services Apps Iand Flex Applications
Services Apps Iand Flex ApplicationsServices Apps Iand Flex Applications
Services Apps Iand Flex Applications
 
Drupal+javascript
Drupal+javascriptDrupal+javascript
Drupal+javascript
 
Drupal as Base For Your NEXT Mobile App
Drupal as Base For Your NEXT Mobile AppDrupal as Base For Your NEXT Mobile App
Drupal as Base For Your NEXT Mobile App
 
Drupal on Your TV: Drupal Design Camp Boston 2010
Drupal on Your TV: Drupal Design Camp Boston 2010Drupal on Your TV: Drupal Design Camp Boston 2010
Drupal on Your TV: Drupal Design Camp Boston 2010
 
Mobile apps using drupal as base system SumitK DrupalCon Chicago
Mobile apps using drupal as base system   SumitK DrupalCon ChicagoMobile apps using drupal as base system   SumitK DrupalCon Chicago
Mobile apps using drupal as base system SumitK DrupalCon Chicago
 
Intro to Drush
Intro to DrushIntro to Drush
Intro to Drush
 
Front-end Performance in Drupal
Front-end Performance in DrupalFront-end Performance in Drupal
Front-end Performance in Drupal
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016
 

Similar to SumitK's mobile app dev using drupal as base ststem

Primers on mobile application development
Primers on mobile application developmentPrimers on mobile application development
Primers on mobile application developmentSatta Nathan
 
An introduction to Titanium
An introduction to TitaniumAn introduction to Titanium
An introduction to TitaniumGraham Weldon
 
Native Mobile Application Using Java Script
Native  Mobile  Application  Using  Java ScriptNative  Mobile  Application  Using  Java Script
Native Mobile Application Using Java ScriptBorey Lim
 
Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...Shoukry Kattan
 
Latest trends in information technology
Latest trends in information technologyLatest trends in information technology
Latest trends in information technologyEldos Kuriakose
 
Appcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium EcosystemAppcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium EcosystemBoydlee Pollentine
 
Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.Oracle Developers
 
Crosswalk and the Intel XDK
Crosswalk and the Intel XDKCrosswalk and the Intel XDK
Crosswalk and the Intel XDKIntel® Software
 
Titanium Meetup Deck
Titanium Meetup DeckTitanium Meetup Deck
Titanium Meetup Decksschwarzhoff
 
Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.Techugo
 
HTML5: The Apps, the Frameworks, the Controversy
HTML5: The Apps, the Frameworks, the Controversy HTML5: The Apps, the Frameworks, the Controversy
HTML5: The Apps, the Frameworks, the Controversy Apigee | Google Cloud
 
Native Mobile Application Using Open Source
Native Mobile Application Using Open SourceNative Mobile Application Using Open Source
Native Mobile Application Using Open SourceAxway Appcelerator
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium TutorialKevin Whinnery
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) Animesh Singh
 
Building modern applications in the cloud
Building modern applications in the cloudBuilding modern applications in the cloud
Building modern applications in the cloudCommit Software Sh.p.k.
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsRomin Irani
 
Exploring Google APIs with Python
Exploring Google APIs with PythonExploring Google APIs with Python
Exploring Google APIs with Pythonwesley chun
 
Toronto node js_meetup
Toronto node js_meetupToronto node js_meetup
Toronto node js_meetupShubhra Kar
 

Similar to SumitK's mobile app dev using drupal as base ststem (20)

Primers on mobile application development
Primers on mobile application developmentPrimers on mobile application development
Primers on mobile application development
 
An introduction to Titanium
An introduction to TitaniumAn introduction to Titanium
An introduction to Titanium
 
Native Mobile Application Using Java Script
Native  Mobile  Application  Using  Java ScriptNative  Mobile  Application  Using  Java Script
Native Mobile Application Using Java Script
 
Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...Introduction to building multi platform mobile applications with javascript u...
Introduction to building multi platform mobile applications with javascript u...
 
Latest trends in information technology
Latest trends in information technologyLatest trends in information technology
Latest trends in information technology
 
Appcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium EcosystemAppcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium Ecosystem
 
Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.
 
Crosswalk and the Intel XDK
Crosswalk and the Intel XDKCrosswalk and the Intel XDK
Crosswalk and the Intel XDK
 
SamSegalResume
SamSegalResumeSamSegalResume
SamSegalResume
 
Titanium Meetup Deck
Titanium Meetup DeckTitanium Meetup Deck
Titanium Meetup Deck
 
Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.
 
HTML5: The Apps, the Frameworks, the Controversy
HTML5: The Apps, the Frameworks, the Controversy HTML5: The Apps, the Frameworks, the Controversy
HTML5: The Apps, the Frameworks, the Controversy
 
Sam segal resume
Sam segal resumeSam segal resume
Sam segal resume
 
Native Mobile Application Using Open Source
Native Mobile Application Using Open SourceNative Mobile Application Using Open Source
Native Mobile Application Using Open Source
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium Tutorial
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
 
Building modern applications in the cloud
Building modern applications in the cloudBuilding modern applications in the cloud
Building modern applications in the cloud
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElements
 
Exploring Google APIs with Python
Exploring Google APIs with PythonExploring Google APIs with Python
Exploring Google APIs with Python
 
Toronto node js_meetup
Toronto node js_meetupToronto node js_meetup
Toronto node js_meetup
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 

SumitK's mobile app dev using drupal as base ststem

  • 1. Mobile App Dev. Using Drupal As Base Syetem Sumit Kataria (sumitk) 26. aug 10:00 VPS.NET
  • 2. About Me Sumit Kataria Freelancer & Engineer at CivicActions sumitk@sumitk.net http://twitter.com/sumitk IRC: sumitk
  • 4.
  • 5. But Why Build For Mobile?
  • 6. More than 41 million iPhones sold to date Android now runs on more than 64 mobile devices 60,000 Android devices &100,000 more iPhones sold each day! 40% of all Internet traffic will be by Mobile in 2013
  • 8. “Most apps take at least six months of full-time work and cost between $20,000 and $150,000 to develop.” - Forrester Research
  • 9. Other Questions Come .... ★Which platforms do you choose? ★How many codebases do you want to (or even can you) support? ★How long will it take to build native on N platforms? ★How much effort will be duplicated? ★What if you bet on the wrong platform? ★Who writes the code? Hire out? Retrain/ retool yourself or your devs?
  • 10. The Web Is An Option... ★...and should be preferred when feasible ★Mobile browsers are progressing fast and converging around WebKit ★But there are limitations ★Native apps are inherently more capable than web apps
  • 11. What to Do Then..?
  • 12. You can Look For New Better Tools....
  • 14. Who Uses Titanium? ★NBC Universal ★PayPal ★MTV ★Anheuser-Busch ★Computer Sciences Corporation ★Intridea (Oil Reporter) ★100s of Titanium apps hitting the stores each month (should soon eclipse 1000/month)
  • 15. What is Titanium? Titanium is an open source framework for building native mobile (or desktop) applications using open web technologies (JavaScript - optionally HTML and CSS)
  • 16. More .. Open Source - Apache 2.0 License Build Native Apps - 9.x+ Very Fast in Performance Modular Approach to Add Functionality Lot of APIs Available and Ready to Us Support and Partner Programs Available
  • 17. ★Titanium Mobile is Free (as in Beer) ★Userscan pay for additional support. ★You can get your App out in development time of 2-3 weeks with 1-2 developers.
  • 19. Why Use Drupal to Manage Your Mobile Application Data?
  • 20. What is Drupal? Drupal is a Free and Open Source Content Management System that allows users to easily publish, manage and organize a wide variety of content on a website.
  • 21. It is the most reliable CMS in the world Manages all your data and content ... meta data and users... ... search needs and geo-data... All in a very reliable way And besides...
  • 22. You are already using it ....
  • 23. What You’ll Be Programming Javascript Titanium API WebViews HTML 5 CSS 3
  • 24. How Do You Use Drupal to Manage Your Mobile Application's Data?
  • 25. Services API Enables Drupal to act as a webservice to accept and send data in a secure way. http://drupal.org/project/services
  • 26. Services API Consists of 3 Parts Services Servers Authentication Layer
  • 27. Services Services are methods intended for consumption by remote applications. e.g. user.get user.save node.get node.save views.get etc.
  • 28. Servers Servers are ways in which a Service could be called from remote site. e.g. xmlrpc (ships with Services core), json, jsonrpc, rest etc.
  • 29. Authentication Methods ★ Keys (Services core) ★ OAuth
  • 31. Titanium Features Native UI Rich Media APIs Real native tables, tabs, sliders, Local and streaming audio and and views video, media recording Location APIs Open Source and Extensible Native Maps, Compass, and Extend Titanium with custom Geolocation modules in native code Local and Remote Data Integrated Analytics Local SQL Database, Lightweight Baked-in analytics APIs to Key/Value Store, XHR measure results and behavior Social APIs Development Tools Integrated Facebook Connect Develop and distribute your app and YQL for multiple platforms from a single tool
  • 33. What Titanium Mobile is not: ★ Not a native wrapper around a web view (PhoneGap being an example of this approach) ★ However, you do have a web view component for HTML/CSS UI if that is your preference ★ Your JavaScript code is invoking native APIs for UI and other native functions
  • 34. How to Get Started.. Install iPhone SDK (Mac OS only) Install Titanium Developer (Mac Win Linux) Create account on Titanium Developer Download and install Services and json_server modules from drupal.org More help: http://civicactions.com/blog/sumit
  • 35. Data, Users Services API Drupal TI Network API Titanium Framework
  • 36. Make a Drupal view.get Service Call
  • 40. Titanium Developer ★ Manage and run Titanium applications ★ Package applications for distribution ★ Run on a device for testing ★ Manage Appcelerator account
  • 42. Titanium Fundamentals • A Titanium application is a JavaScript program that is interpreted at runtime on the device • app.js defines the root execution context of the app • Note that we are not running in a browser • It use the WebKit KJS JavaScript engine (iOS) or Rhino (Android/BB)
  • 43. Titanium JavaScript API ★ Organized into logical namespaces ★ “Titanium” (or just “Ti” for short) is the root namespace for all Titanium functionality ★ A few other odds and ends in the global space ★ setTimeout/setInterval ★ alert ★ JSON
  • 44. Cross-Platform Development ★ Not all UI is available across platforms ★ Titanium != “Write Once, Run Everywhere” ★ It tries to enable native apps that look and feel like they were created in Objective-C or Java ★ Also note that even cross-platform UI components (like table views) will render differently cross platform ★ Cross Platform testing is critical during dev cycle
  • 45. But wait, there’s more! ★ Animation APIs ★ Social Networks ★ Custom Module Development ★ iPad Development ★ HTML 5 and CSS 3 ★ Explore Desktop!!!
  • 46. Resources ★ Community Q&A http://developer.appcelerator.com ★ Reference Docs ★ My Blog: http://civicactions.com/blog/sumit OR http://sumitk.net ★ http://groups.drupal.org/titanium-api
  • 47. Anything Else ... Sumit Kataria sumitk@sumitk.net http://www.sumitk.net IRC: sumitk

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n