SlideShare una empresa de Scribd logo
1 de 58
PhoneGap 101
or: how I learned to stop writing
 platform-specific code and love
    JavaScript, HTML and CSS

@MattRogish (mrogish@toura.com)
 and @touradev / @touramobile
Matt Rogish
To APP or not to APP...
http://designmind.frogdesign.com/blog/mobile-apps-must-die.html
http://designmind.frogdesign.com/blog/mobile-apps-must-die.html
“The purpose of PhoneGap is for PhoneGap to cease to exist”
- Brian LeRoux, Nitobi (now Adobe)
“The	 purpose	 of	 
PhoneGap	 is	 for	 
  PhoneGap	 to	 
 cease	 to	 exist”
The purpose of <Other Mobile Platform> is for
<Other Mobile Platform> to cease to exist?
What is PhoneGap?
PhoneGap is an HTML5 app platform that allows you to
author native applications with web technologies and get
 access to APIs and app stores. PhoneGap leverages web
technologies developers already know best... HTML and
                        JavaScript.
                    - PhoneGap.com
Huh?
Yeah, but can I make real apps with it?
SQLite      DOM Key-Value




File System       HTTP
http://www.chromeexperiments.com/webgl
vasc ri pt
Okay, okay. How do I get started?
1. Download & Install PhoneGap & Pre-
   requisites

2. Write HelloWorld.html

3. ???

4. Profit!
“???” explained...
or: getting from zero to app in 60 seconds
Mulberry takes the promise of PhoneGap
       — mobile apps built with web
technologies — and smooths over many of
  the “gotchas” that front-end developers
 confront as they venture into client-side
    application development in a mobile
                environment.
        - http://toura.github.com/mulberry/
Huh?
Demo: http://mulberry.toura.com
Thank you! Any Questions?
• http://www.phonegap.com
• http://groups.google.com/group/phonegap
• http://www.meetup.com/The-New-York-
  Phone-Gap-Devlopers-Enthusiasts-Meetup/

• http://mulberry.toura.com
• http://api.toura.com/weinre
• http://www.twitter.com/touradev

Más contenido relacionado

La actualidad más candente

Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGapdegarden
 
Getting Started with PhoneGap Windows Phone 7
Getting Started with PhoneGap Windows Phone 7Getting Started with PhoneGap Windows Phone 7
Getting Started with PhoneGap Windows Phone 7Alius Petraška
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGapRamesh Nair
 
20 Wireframing Tools
20 Wireframing Tools20 Wireframing Tools
20 Wireframing Toolsdonvito123
 
Vue storefront London PWA meetup
Vue storefront London PWA meetupVue storefront London PWA meetup
Vue storefront London PWA meetupFilip Rakowski
 
Basics of Embedded Systems / Hardware - Architectures
Basics of Embedded Systems / Hardware - ArchitecturesBasics of Embedded Systems / Hardware - Architectures
Basics of Embedded Systems / Hardware - ArchitecturesAyan Pahwa
 
PhoneGap Day US 2013 - Chrome Packaged Apps
PhoneGap Day US 2013 - Chrome Packaged AppsPhoneGap Day US 2013 - Chrome Packaged Apps
PhoneGap Day US 2013 - Chrome Packaged AppsPhoneGap
 
Apresentação PWA - FCTech
Apresentação PWA - FCTechApresentação PWA - FCTech
Apresentação PWA - FCTechGilmar Oliveira
 
PhoneGap @ LDNUG
PhoneGap @ LDNUGPhoneGap @ LDNUG
PhoneGap @ LDNUGMatt Lacey
 
August Chicago Mobile Meetup talk 8-25-11
August Chicago Mobile Meetup talk 8-25-11August Chicago Mobile Meetup talk 8-25-11
August Chicago Mobile Meetup talk 8-25-11biolithic
 

La actualidad más candente (19)

Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
Getting Started with PhoneGap Windows Phone 7
Getting Started with PhoneGap Windows Phone 7Getting Started with PhoneGap Windows Phone 7
Getting Started with PhoneGap Windows Phone 7
 
Live-Note
Live-NoteLive-Note
Live-Note
 
Phone gap
Phone gapPhone gap
Phone gap
 
All About Phonegap
All About Phonegap All About Phonegap
All About Phonegap
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
Maintainable design
Maintainable designMaintainable design
Maintainable design
 
20 Wireframing Tools
20 Wireframing Tools20 Wireframing Tools
20 Wireframing Tools
 
Vue storefront London PWA meetup
Vue storefront London PWA meetupVue storefront London PWA meetup
Vue storefront London PWA meetup
 
Basics of Embedded Systems / Hardware - Architectures
Basics of Embedded Systems / Hardware - ArchitecturesBasics of Embedded Systems / Hardware - Architectures
Basics of Embedded Systems / Hardware - Architectures
 
PhoneGap Day US 2013 - Chrome Packaged Apps
PhoneGap Day US 2013 - Chrome Packaged AppsPhoneGap Day US 2013 - Chrome Packaged Apps
PhoneGap Day US 2013 - Chrome Packaged Apps
 
PhoneGap
PhoneGapPhoneGap
PhoneGap
 
Phonegap
PhonegapPhonegap
Phonegap
 
Apresentação PWA - FCTech
Apresentação PWA - FCTechApresentação PWA - FCTech
Apresentação PWA - FCTech
 
Designing FirefoxOS style apps
Designing FirefoxOS style appsDesigning FirefoxOS style apps
Designing FirefoxOS style apps
 
PhoneGap @ LDNUG
PhoneGap @ LDNUGPhoneGap @ LDNUG
PhoneGap @ LDNUG
 
Evaluation 6
Evaluation 6Evaluation 6
Evaluation 6
 
August Chicago Mobile Meetup talk 8-25-11
August Chicago Mobile Meetup talk 8-25-11August Chicago Mobile Meetup talk 8-25-11
August Chicago Mobile Meetup talk 8-25-11
 
Extended slow parts
Extended slow partsExtended slow parts
Extended slow parts
 

Destacado

Мониторинг социальных медиа. От статистики к реальному потребителю
Мониторинг социальных медиа. От статистики к реальному потребителюМониторинг социальных медиа. От статистики к реальному потребителю
Мониторинг социальных медиа. От статистики к реальному потребителюbrandhouse
 
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7Sergey Zwezdin
 
Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7beloslab
 
Windows Phone School HSE Lecture 6
Windows Phone School HSE Lecture 6Windows Phone School HSE Lecture 6
Windows Phone School HSE Lecture 6Dmitry Gridnev
 
Windows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGapWindows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGapDoncho Minkov
 
How to build PhoneGap App for Windows Phone?
How to build PhoneGap App for Windows Phone?How to build PhoneGap App for Windows Phone?
How to build PhoneGap App for Windows Phone?MobilePundits
 

Destacado (7)

Мониторинг социальных медиа. От статистики к реальному потребителю
Мониторинг социальных медиа. От статистики к реальному потребителюМониторинг социальных медиа. От статистики к реальному потребителю
Мониторинг социальных медиа. От статистики к реальному потребителю
 
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
 
Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7
 
Windows Phone School HSE Lecture 6
Windows Phone School HSE Lecture 6Windows Phone School HSE Lecture 6
Windows Phone School HSE Lecture 6
 
Windows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGapWindows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGap
 
How to build PhoneGap App for Windows Phone?
How to build PhoneGap App for Windows Phone?How to build PhoneGap App for Windows Phone?
How to build PhoneGap App for Windows Phone?
 
Web Design Concepts
Web Design ConceptsWeb Design Concepts
Web Design Concepts
 

Similar a PhoneGap 101 & Toura Mulberry

HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do ThatNathan Smith
 
Besides Objective-C
Besides Objective-CBesides Objective-C
Besides Objective-CJiwei Xu
 
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5Christian Heindel
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Christian Heindel
 
Html5 mobile develop tools
Html5 mobile develop toolsHtml5 mobile develop tools
Html5 mobile develop toolsLey Liu
 
Best Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile AppBest Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile AppSt. Petersburg College
 
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampPhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampMihai Corlan
 
Why HTML5 is getting on my nerves…
Why HTML5 is getting on my nerves…Why HTML5 is getting on my nerves…
Why HTML5 is getting on my nerves…Avenga Germany GmbH
 
Cross platform-mobile-applications
Cross platform-mobile-applicationsCross platform-mobile-applications
Cross platform-mobile-applicationsmailalamin
 
"How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn...
"How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn..."How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn...
"How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn...Eurapp
 
I like i phone and android but know .net
I like i phone and android but know .netI like i phone and android but know .net
I like i phone and android but know .netChris Love
 
AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!Mobile Web Italy Meetup
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoChristian Heilmann
 
Building for real standards (includes notes)
Building for real standards (includes notes)Building for real standards (includes notes)
Building for real standards (includes notes)Christian Heilmann
 
How to Hybrid : Effective Tactics in HTML5-Native App Development
How to Hybrid : Effective Tactics in HTML5-Native App DevelopmentHow to Hybrid : Effective Tactics in HTML5-Native App Development
How to Hybrid : Effective Tactics in HTML5-Native App DevelopmentDroidConTLV
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonnyLama K Banna
 
Benefits of PhoneGap for Mobile App Development - Appzure
Benefits of PhoneGap for Mobile App Development - AppzureBenefits of PhoneGap for Mobile App Development - Appzure
Benefits of PhoneGap for Mobile App Development - AppzureAppzure -Mobile App Development
 
10 Reasons to Adopt HTML5 for Mobile Apps
10 Reasons to Adopt HTML5 for Mobile Apps 10 Reasons to Adopt HTML5 for Mobile Apps
10 Reasons to Adopt HTML5 for Mobile Apps Fresh Digital Group
 

Similar a PhoneGap 101 & Toura Mulberry (20)

HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
 
Besides Objective-C
Besides Objective-CBesides Objective-C
Besides Objective-C
 
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
 
Phone gap
Phone gapPhone gap
Phone gap
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5
 
Html5 mobile develop tools
Html5 mobile develop toolsHtml5 mobile develop tools
Html5 mobile develop tools
 
Best Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile AppBest Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile App
 
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampPhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
 
Why HTML5 is getting on my nerves…
Why HTML5 is getting on my nerves…Why HTML5 is getting on my nerves…
Why HTML5 is getting on my nerves…
 
Cross platform-mobile-applications
Cross platform-mobile-applicationsCross platform-mobile-applications
Cross platform-mobile-applications
 
"How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn...
"How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn..."How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn...
"How Can Web Devs Reach the Mobile Market?" by Dimitris Michalakos, Web Techn...
 
I like i phone and android but know .net
I like i phone and android but know .netI like i phone and android but know .net
I like i phone and android but know .net
 
AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San Francisco
 
Building for real standards (includes notes)
Building for real standards (includes notes)Building for real standards (includes notes)
Building for real standards (includes notes)
 
How to Hybrid : Effective Tactics in HTML5-Native App Development
How to Hybrid : Effective Tactics in HTML5-Native App DevelopmentHow to Hybrid : Effective Tactics in HTML5-Native App Development
How to Hybrid : Effective Tactics in HTML5-Native App Development
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonny
 
PhoneGap
PhoneGapPhoneGap
PhoneGap
 
Benefits of PhoneGap for Mobile App Development - Appzure
Benefits of PhoneGap for Mobile App Development - AppzureBenefits of PhoneGap for Mobile App Development - Appzure
Benefits of PhoneGap for Mobile App Development - Appzure
 
10 Reasons to Adopt HTML5 for Mobile Apps
10 Reasons to Adopt HTML5 for Mobile Apps 10 Reasons to Adopt HTML5 for Mobile Apps
10 Reasons to Adopt HTML5 for Mobile Apps
 

Último

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 

Último (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

PhoneGap 101 & Toura Mulberry

Notas del editor

  1. \n
  2. Hi, I&amp;#x2019;m Matt. I work at Toura, etc.\n
  3. Toura has a bunch of products and stuff we do\n
  4. Before we get into PhoneGap proper, there&amp;#x2019;s still some debate as to whether or not we should do mobile apps at all\n
  5. A lot of folks think they are stupid, dying, proprietary, etc. etc.\n
  6. That they lead to fragmentation of code\n
  7. And that you should just write HTML apps (or HTML5, depending on your target audience)\n
  8. This is the future they predict\n
  9. I think the reports of mobile app&amp;#x2019;s deaths are greatly exaggerated \n
  10. What&amp;#x2019;s the difference between these devices\n
  11. and this one?\n
  12. LOTS of native functionality outside of the browser sandbox. Functionality that has no desktop browser analog.\n
  13. AND native functionality that differs on a per-platform basis. Stuff that mobile web can&amp;#x2019;t yet touch.\n
  14. To access this stuff on a computer (where applicable) you needed to use Flash\n
  15. But flash is dead on mobile\n
  16. Or, you could write native code\n
  17. Something \n
  18. tells\n
  19. me\n
  20. we&amp;#x2019;re looking at it the wrong way\n
  21. Let&amp;#x2019;s think about this. We need to access native features across multiple disparate platforms\n
  22. So, we want a mix - HTML5 and Javascript to write apps in ways that are cross-platform in a language we know and love\nand native code to access things that aren&amp;#x2019;t (YET) exposed in the browser\n
  23. Happy\n
  24. That&amp;#x2019;s PhoneGap! It allows you to mix HTML, JS, and native code all in a nice tidy package\n
  25. Nitobi was purchased by Adobe. PhoneGap is open source, and now being accepted into the Apache Foundation; you cannot &amp;#x201C;own&amp;#x201D; open source software.\n
  26. But, you may ask - why would I choose PhoneGap over any of the other platforms? Consider PhoneGap&amp;#x2019;s philosophy\n
  27. \n
  28. PhoneGap (and Nitobi, the folks just acquired by Adobe) want the web to win. PhoneGap is a temporary fix until HTML5/JS exposes ALL of the stuff in a unified, standardized way\n
  29. Don&amp;#x2019;t hold your breath waiting for that to happen anytime soon, however. It&amp;#x2019;s taken years for the W3C to suggest standards, and some vendors aren&amp;#x2019;t implementing it all the same. It&amp;#x2019;ll be a while until all the native functionality is exposed in pure Javascript.\n
  30. Do the other cross-platform mobile application frameworks exist so they&amp;#x2019;ll be obsolete? Or does it exist to further lock you in to their technology stack? When the magical day occurs when the W3C and Device Manufacturers all have full Javascript interoperability occurs, will you be able to easily port your apps to it? To mobile web? Hmm. Ponder that.\n
  31. What about the Appcelerator folks? They are decidedly NOT open source. They compile their own JS to native components. So it&amp;#x2019;s not even really cross platform. If the rapture occurs and you can remove phonegap, you can&amp;#x2019;t simply take your Appcelerator app and make it a mobile web app.\n\nRhoMobile is somewhat similar. Now that they are owned by Motorola Solutions, unsure as to the future of the product. But that&amp;#x2019;s a bit of FUD from me. Take it with a grain of salt. :)\n\nstrobe is dead, acquired by facebook.\n\nSenchaTouch is NOT free software. It has a commercial software license that, although is free as in &amp;#x201C;Free beer&amp;#x201D; is not free as in &amp;#x201C;Free speech&amp;#x201D;. \n
  32. What about the Appcelerator folks? They are decidedly NOT open source. They compile their own JS to native components. So it&amp;#x2019;s not even really cross platform. If the rapture occurs and you can remove phonegap, you can&amp;#x2019;t simply take your Appcelerator app and make it a mobile web app.\n\nRhoMobile is somewhat similar. Now that they are owned by Motorola Solutions, unsure as to the future of the product. But that&amp;#x2019;s a bit of FUD from me. Take it with a grain of salt. :)\n\nstrobe is dead, acquired by facebook.\n\nSenchaTouch is NOT free software. It has a commercial software license that, although is free as in &amp;#x201C;Free beer&amp;#x201D; is not free as in &amp;#x201C;Free speech&amp;#x201D;. \n
  33. What about the Appcelerator folks? They are decidedly NOT open source. They compile their own JS to native components. So it&amp;#x2019;s not even really cross platform. If the rapture occurs and you can remove phonegap, you can&amp;#x2019;t simply take your Appcelerator app and make it a mobile web app.\n\nRhoMobile is somewhat similar. Now that they are owned by Motorola Solutions, unsure as to the future of the product. But that&amp;#x2019;s a bit of FUD from me. Take it with a grain of salt. :)\n\nstrobe is dead, acquired by facebook.\n\nSenchaTouch is NOT free software. It has a commercial software license that, although is free as in &amp;#x201C;Free beer&amp;#x201D; is not free as in &amp;#x201C;Free speech&amp;#x201D;. \n
  34. So, anyway, on to the good stuff.\n
  35. \n
  36. Show, don&amp;#x2019;t tell.\n
  37. It&amp;#x2019;s simply a www directory, with all your static web content. And by static I mean &amp;#x201C;No server required&amp;#x201D; - aka what we used to make in Dreamweaver back in the late 90s/early 2000s. But this aint no Web1.0 stuff - this is full on webkit-y goodness.\n
  38. PhoneGap opens a browser, full screen and without all the chrome - and navigates to your index.html\n
  39. As you can see, this is all HTML, CSS, Javascript. You can open it in your local browser and do development. You just have to be careful to not call hardware-specific things when not on a device, which is easy to test.\n
  40. PhoneGap is an interface between YOUR Javascript and the native code. It&amp;#x2019;s a bridge that allows you to call native (and thus hardware) code from a standard, consistent Javascript API. You&amp;#x2019;re also not limited to PhoneGap native code, you can easily write code that extends their API for your own doings (like analytics, augmented reality, etc.). The downside, of course, is you&amp;#x2019;d need to write it for every platform in every language. D&amp;#x2019;oh!\n
  41. PhoneGap has broad support for many hardware specific capabilities - Windows Mobile 7.5 (mango) is quasi-supported by PhoneGap but isn&amp;#x2019;t officially on the list yet.\n
  42. There&amp;#x2019;s also a vibrant plugin community that offers native code components for different platforms. All licensed MIT/BSD - aka do what you want with it.\n
  43. There&amp;#x2019;s also PhoneGap build. An automated service to take your project file (the www directory we saw earlier) and turn that into a compiled binary for iOS, Android, etc.\n
  44. So - yeah, vibrating the device is fine and all, but what about interactivity and data collection? How do I persist my stuff so when the app opens again, it&amp;#x2019;s not brand new?\n
  45. PhoneGap, via webkit, supports &lt;each&gt;. The cool thing about HTTP is that since your app is running in a privileged sandbox via file:// you can do XHR to *any domain*. That&amp;#x2019;s something you can&amp;#x2019;t do on a normal web site; you&amp;#x2019;d need your server to process xhrs, or you&amp;#x2019;d have to use JSON-P or some other hax\n
  46. You can definitely make apps that look and feel native. MOST native apps aren&amp;#x2019;t super graphically intense things that require lots of native code.\n
  47. But even JS is getting 3d-accelerated graphics. \n
  48. I think a lot of people still view JS as a toy language. It isn&amp;#x2019;t. As a ruby developer, I&amp;#x2019;ve pulled a lot of cool things from JS, and I&amp;#x2019;ve brought a lot of ruby stuff to JS.\n
  49. \n
  50. First, you need to have the pre-requisites. For iOS, that&amp;#x2019;s Xcode and a Mac. For Android, that&amp;#x2019;s the Android SDK (Unix and Windows). For WinMo, a Windows PC/VM and the right .NET stuff. etc.\n\nYou can quickly download and install PhoneGap from PhoneGap.com\n\nWrite a HelloWorld HTML file, press compile, and voila!\n
  51. But it&amp;#x2019;s a lot harder than that. You have to build single-page javascript applications. You need to interface with server APIs if you want to do anything interesting. You need to know about WebKit and CSS3 on different devices, and all that stuff. We&amp;#x2019;ve done all that, and we&amp;#x2019;ve released it open source.\n
  52. \n
  53. \n
  54. \n
  55. We also have a remote debugging service. sometimes you encounter bugs when on the device. Usually not in the JS code, but in the way different devices handle CSS rendering (Android v. iOS, etc.)\n
  56. A product called Weinre allows you to debug on a live, running app! We have a hosted service at api.toura.com/weinre that works out of the box with our apps\n
  57. \n