SlideShare a Scribd company logo
Debugging and
                                  Deploying with
                                    PhoneGap
                              Tools and techniques for testing and
                                distributing cross-platform apps




Thursday, February 16, 2012
Ryan Stewart
                              Web Developer Evangelist, Adobe

                                     ryan@adobe.com

                                     blog.digitalbackcountry.com
                                     @ryanstewart

                                     github.com/ryanstewart



              Based in Seattle
              Things I Like:
               Beer
               Mountaineering/Hiking/Backpacking
               Geolocation/Mapping stuff



Thursday, February 16, 2012
Agenda


                    • Debugging with PhoneGap
                    • Deploying PhoneGap Apps with
                              PhoneGap Build




Thursday, February 16, 2012
Debugging




Thursday, February 16, 2012
Debugging these
            kinds of apps is
            best done on
            device. Luckily
            there are a few
            tools that make
            that easy.




Thursday, February 16, 2012
It’s all just HTML/
            JS, so you can use
            your browser!
            Take advantage of
            Chrome Developer
            tools/Firebug to
            test your app’s UI.




Thursday, February 16, 2012
But what about Device APIs?
Because we’re in the web view, there is no
   way to do line-by-line debugging.




Thursday, February 16, 2012
No
                                    w
                                        wi
                                          th




            Luckily we have
            Weinre, which lets
            us debug and
            manipulate the
            DOM from our
            PCs.




Thursday, February 16, 2012
No
                                    w
                                        wi
                                          th




            Luckily we have
            Weinre, which lets
            us debug and
            manipulate the
            DOM from our
            PCs.




Thursday, February 16, 2012
Weinre can be
            configured as a
            server (there is a
            Mac application)
            and uses the
            developer tools
            from Chrome to
            provide hooks into
            the mobile app.



Thursday, February 16, 2012
Drop in a <script>
            tag on a remote
            server and Weinre
            will let you use the
            Developer Tools
            on your apps.
            *Requires internet
            access, so keep
            that in mind.



Thursday, February 16, 2012
Demo:
     Debugging with Weinre




Thursday, February 16, 2012
But, a much easier
            way:
            http://
            debug.phonegap.com/




Thursday, February 16, 2012
Demo:
     debug.phonegap.com




Thursday, February 16, 2012
Deploying
                              build.phonegap.com




Thursday, February 16, 2012
e Problem:

   You’re building a cross-platform app, but
     dealing with a lot of native projects




Thursday, February 16, 2012
e Solution:
   PhoneGap Build - a cloud service for
creating binary files for multiple platforms
         from a single codebase




Thursday, February 16, 2012
Thursday, February 16, 2012
What PhoneGap Build
                              lets you do:




Thursday, February 16, 2012
No vendor platform lock-in

 Want to build for iOS but don’t have a Mac?
 No problem.




Thursday, February 16, 2012
Build for every platform at once




  PhoneGap Build creates binaries for all of the
  major platforms at the same time and in one
  place.


Thursday, February 16, 2012
Debug on your devices

  Use PhoneGap Build to incorporate debug
  code in your application so you can test on
  the device itself.




Thursday, February 16, 2012
Getting Started




Thursday, February 16, 2012
1) Sign up for an account
      2) Create an application
        a) Can be uploaded
        HTML/CSS/JS files
        b) Can be a Git/SVN
        repo
        c) PhoneGap can create
        and host a Git repo
      3) Profit




Thursday, February 16, 2012
Build lets you
      configure app
      properties across
      platforms.

      You can also target
      specific versions of
      PhoneGap to
      maximize
      compatibility.



Thursday, February 16, 2012
Core part of PhoneGap Build:

                              Work how you want to work




Thursday, February 16, 2012
Using Git/SVN
                              repositories




Thursday, February 16, 2012
Build lets you
            create a new app
            from a Git or SVN
            repository
            (including GitHub
            support).

            Note: It can’t be a
            private repo.



Thursday, February 16, 2012
All of your
            development can
            be done from
            source control.
            Simply “Update
            Code” from the
            App page and
            Build will recreate
            the binaries based
            on the code in
            your repository.


Thursday, February 16, 2012
Debugging and Testing




Thursday, February 16, 2012
Build includes a
            debugging option
            that will inject the
            Weinre JavaScript
            into the app so it
            can be remotely
            debugged using
            debug.phonegap.c
            om



Thursday, February 16, 2012
Just click the
            “debug” button in
            Build and start
            debugging.

            No dealing with
            the same wifi
            connection or USB
            tethering.



Thursday, February 16, 2012
What I find to be
            easiest is to set up
            a “regular” version
            of the app and a
            “debug” version of
            the app. Can be
            the exact same
            repo, but one will
            provide debug
            binaries
            automatically.


Thursday, February 16, 2012
Build lets you
            define individuals
            as tester/
            developer which
            changes
            permissions on the
            project
            accordingly.




Thursday, February 16, 2012
Testers: Can access
            the binaries and
            rebuild the
            binaries based on
            what’s in the
            linked repository.



            Developers: Can
            admin the
            application as well
            as do all the things
            testers can do.
Thursday, February 16, 2012
You can use Build as your testing
                              distribution as well by making the
                                    download pages public.



Thursday, February 16, 2012
PhoneGap Build Roadmap




Thursday, February 16, 2012
Will (soon)
            support popular
            plugins so that you
            can build plugins
            right into the build
            process.




Thursday, February 16, 2012
Windows support
            also coming




Thursday, February 16, 2012
Demo:
           PhoneGap Build




Thursday, February 16, 2012
Q&A

                              Ryan Stewart
                              Web Developer Evangelist, Adobe

                                     ryan@adobe.com

                                     blog.digitalbackcountry.com
                                     @ryanstewart

                                     github.com/ryanstewart

Thursday, February 16, 2012
Are you building a cool app??

                              Let me know! - ryan@adobe.com




Thursday, February 16, 2012

More Related Content

What's hot

PhoneGap: a brief history and apologia
PhoneGap: a brief history and apologiaPhoneGap: a brief history and apologia
PhoneGap: a brief history and apologia
lorinbeer
 
Building Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGapBuilding Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGap
Simon MacDonald
 
Phone gap
Phone gapPhone gap
Phone gap
Ali Dany
 
Building mobile apps using Phonegap
Building mobile apps using PhonegapBuilding mobile apps using Phonegap
Building mobile apps using Phonegap
Mohammad Shoriful Islam Ronju
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
Quang Minh Dao
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
degarden
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
Joseph Labrecque
 
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
 
PhoneGap Talk @ Sencha Con 2010
PhoneGap Talk @ Sencha Con 2010PhoneGap Talk @ Sencha Con 2010
PhoneGap Talk @ Sencha Con 2010
alunny
 
Mapping and Geolocation on the Flash Platform
Mapping and Geolocation on the Flash PlatformMapping and Geolocation on the Flash Platform
Mapping and Geolocation on the Flash Platform
Ryan Stewart
 
DroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using PhonegapDroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
Ayushman Jain
 
BlackBerry WebWorks
BlackBerry WebWorksBlackBerry WebWorks
BlackBerry WebWorks
Josue Bustos
 
Phonegap - An Overview
Phonegap - An OverviewPhonegap - An Overview
Phonegap - An Overview
Neev Technologies
 
Rapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka PhonegapRapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka Phonegap
Josue Bustos
 
Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020
Devathon
 
Complete guide to flutter app development
Complete guide to flutter app developmentComplete guide to flutter app development
Complete guide to flutter app development
Concetto Labs
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
Steve Drucker
 
Introduction to flutter
Introduction to flutter Introduction to flutter
Introduction to flutter
Wan Muzaffar Wan Hashim
 
Phonegap
PhonegapPhonegap
Phonegap
Marissa Parmele
 
iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group Meeting
Jim Tochterman
 

What's hot (20)

PhoneGap: a brief history and apologia
PhoneGap: a brief history and apologiaPhoneGap: a brief history and apologia
PhoneGap: a brief history and apologia
 
Building Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGapBuilding Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGap
 
Phone gap
Phone gapPhone gap
Phone gap
 
Building mobile apps using Phonegap
Building mobile apps using PhonegapBuilding mobile apps using Phonegap
Building mobile apps using Phonegap
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
Introduction to PhoneGap
Introduction to PhoneGapIntroduction to PhoneGap
Introduction to PhoneGap
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
 
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 Talk @ Sencha Con 2010
PhoneGap Talk @ Sencha Con 2010PhoneGap Talk @ Sencha Con 2010
PhoneGap Talk @ Sencha Con 2010
 
Mapping and Geolocation on the Flash Platform
Mapping and Geolocation on the Flash PlatformMapping and Geolocation on the Flash Platform
Mapping and Geolocation on the Flash Platform
 
DroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using PhonegapDroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
 
BlackBerry WebWorks
BlackBerry WebWorksBlackBerry WebWorks
BlackBerry WebWorks
 
Phonegap - An Overview
Phonegap - An OverviewPhonegap - An Overview
Phonegap - An Overview
 
Rapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka PhonegapRapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka Phonegap
 
Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020
 
Complete guide to flutter app development
Complete guide to flutter app developmentComplete guide to flutter app development
Complete guide to flutter app development
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
 
Introduction to flutter
Introduction to flutter Introduction to flutter
Introduction to flutter
 
Phonegap
PhonegapPhonegap
Phonegap
 
iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group Meeting
 

Similar to Debugging and deploying with phone gap

Windows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGapWindows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGap
Doncho Minkov
 
The Best Alternatives To The Ionic Framework.pdf
The Best Alternatives To The Ionic Framework.pdfThe Best Alternatives To The Ionic Framework.pdf
The Best Alternatives To The Ionic Framework.pdf
Moon Technolabs Pvt. Ltd.
 
Android
AndroidAndroid
Android
TAInteractive
 
Android
AndroidAndroid
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
 
13 Best Mobile IDEs for Android.pdf
13 Best Mobile IDEs for Android.pdf13 Best Mobile IDEs for Android.pdf
13 Best Mobile IDEs for Android.pdf
iDataScientists
 
Android developer webinar-march-2012-mindstormsoftware
Android developer webinar-march-2012-mindstormsoftwareAndroid developer webinar-march-2012-mindstormsoftware
Android developer webinar-march-2012-mindstormsoftware
Romin Irani
 
An Introduction to Universal Windows Apps
An Introduction to Universal Windows AppsAn Introduction to Universal Windows Apps
An Introduction to Universal Windows Apps
Ken Cenerelli
 
Most recommended android app development frameworks for app development
Most recommended android app development frameworks for app developmentMost recommended android app development frameworks for app development
Most recommended android app development frameworks for app development
Appsquadz Technologies
 
Cross-platform mobile that Works - Coobers
Cross-platform mobile that Works - CoobersCross-platform mobile that Works - Coobers
Cross-platform mobile that Works - Coobers
Coobers
 
android app development, app developer in USA, mobile app design, digital mar...
android app development, app developer in USA, mobile app design, digital mar...android app development, app developer in USA, mobile app design, digital mar...
android app development, app developer in USA, mobile app design, digital mar...
Sophiaeddi
 
Phone gap
Phone gapPhone gap
NodeJS vs Golang - A detailed comparison
NodeJS vs Golang - A detailed comparisonNodeJS vs Golang - A detailed comparison
NodeJS vs Golang - A detailed comparison
Devathon
 
fdocuments.in_apache-cordova-overview.pptx
fdocuments.in_apache-cordova-overview.pptxfdocuments.in_apache-cordova-overview.pptx
fdocuments.in_apache-cordova-overview.pptx
ssuserd27db6
 
Android_Studio_Structure.docx
Android_Studio_Structure.docxAndroid_Studio_Structure.docx
Android_Studio_Structure.docx
KNANTHINIMCA
 
Latest Android App Development Tools 2019
Latest Android App Development Tools 2019Latest Android App Development Tools 2019
Latest Android App Development Tools 2019
Elijahj Williams
 
Installing android sdk on net beans
Installing android sdk on net beansInstalling android sdk on net beans
Installing android sdk on net beans
Aravindharamanan S
 
Debugging mobile websites and web apps
Debugging mobile websites and web appsDebugging mobile websites and web apps
Debugging mobile websites and web apps
Mihai Corlan
 
Jetpack compose session1 (1).pptx
Jetpack compose session1 (1).pptxJetpack compose session1 (1).pptx
Jetpack compose session1 (1).pptx
ShubhamJogdand8
 
Android Web app
Android Web app Android Web app
Android Web app
Sumit Kumar
 

Similar to Debugging and deploying with phone gap (20)

Windows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGapWindows Phone Mango and PhoneGap
Windows Phone Mango and PhoneGap
 
The Best Alternatives To The Ionic Framework.pdf
The Best Alternatives To The Ionic Framework.pdfThe Best Alternatives To The Ionic Framework.pdf
The Best Alternatives To The Ionic Framework.pdf
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
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?
 
13 Best Mobile IDEs for Android.pdf
13 Best Mobile IDEs for Android.pdf13 Best Mobile IDEs for Android.pdf
13 Best Mobile IDEs for Android.pdf
 
Android developer webinar-march-2012-mindstormsoftware
Android developer webinar-march-2012-mindstormsoftwareAndroid developer webinar-march-2012-mindstormsoftware
Android developer webinar-march-2012-mindstormsoftware
 
An Introduction to Universal Windows Apps
An Introduction to Universal Windows AppsAn Introduction to Universal Windows Apps
An Introduction to Universal Windows Apps
 
Most recommended android app development frameworks for app development
Most recommended android app development frameworks for app developmentMost recommended android app development frameworks for app development
Most recommended android app development frameworks for app development
 
Cross-platform mobile that Works - Coobers
Cross-platform mobile that Works - CoobersCross-platform mobile that Works - Coobers
Cross-platform mobile that Works - Coobers
 
android app development, app developer in USA, mobile app design, digital mar...
android app development, app developer in USA, mobile app design, digital mar...android app development, app developer in USA, mobile app design, digital mar...
android app development, app developer in USA, mobile app design, digital mar...
 
Phone gap
Phone gapPhone gap
Phone gap
 
NodeJS vs Golang - A detailed comparison
NodeJS vs Golang - A detailed comparisonNodeJS vs Golang - A detailed comparison
NodeJS vs Golang - A detailed comparison
 
fdocuments.in_apache-cordova-overview.pptx
fdocuments.in_apache-cordova-overview.pptxfdocuments.in_apache-cordova-overview.pptx
fdocuments.in_apache-cordova-overview.pptx
 
Android_Studio_Structure.docx
Android_Studio_Structure.docxAndroid_Studio_Structure.docx
Android_Studio_Structure.docx
 
Latest Android App Development Tools 2019
Latest Android App Development Tools 2019Latest Android App Development Tools 2019
Latest Android App Development Tools 2019
 
Installing android sdk on net beans
Installing android sdk on net beansInstalling android sdk on net beans
Installing android sdk on net beans
 
Debugging mobile websites and web apps
Debugging mobile websites and web appsDebugging mobile websites and web apps
Debugging mobile websites and web apps
 
Jetpack compose session1 (1).pptx
Jetpack compose session1 (1).pptxJetpack compose session1 (1).pptx
Jetpack compose session1 (1).pptx
 
Android Web app
Android Web app Android Web app
Android Web app
 

More from Ryan Stewart

HTML5 and jQuery for Flex Developers
HTML5 and jQuery for Flex DevelopersHTML5 and jQuery for Flex Developers
HTML5 and jQuery for Flex Developers
Ryan Stewart
 
Getting Started with Flex and PHP
Getting Started with Flex and PHPGetting Started with Flex and PHP
Getting Started with Flex and PHP
Ryan Stewart
 
Flash Builder and Flex Future - Multiscreen Development
Flash Builder and Flex Future - Multiscreen DevelopmentFlash Builder and Flex Future - Multiscreen Development
Flash Builder and Flex Future - Multiscreen Development
Ryan Stewart
 
Introduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile DevicesIntroduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile Devices
Ryan Stewart
 
Getting Started with Flex and PHP
Getting Started with Flex and PHPGetting Started with Flex and PHP
Getting Started with Flex and PHP
Ryan Stewart
 
Mapping and Geolocation with the Flash Platform
Mapping and Geolocation with the Flash PlatformMapping and Geolocation with the Flash Platform
Mapping and Geolocation with the Flash Platform
Ryan Stewart
 
DelveNYC: Flash Catalyst
DelveNYC: Flash CatalystDelveNYC: Flash Catalyst
DelveNYC: Flash Catalyst
Ryan Stewart
 

More from Ryan Stewart (7)

HTML5 and jQuery for Flex Developers
HTML5 and jQuery for Flex DevelopersHTML5 and jQuery for Flex Developers
HTML5 and jQuery for Flex Developers
 
Getting Started with Flex and PHP
Getting Started with Flex and PHPGetting Started with Flex and PHP
Getting Started with Flex and PHP
 
Flash Builder and Flex Future - Multiscreen Development
Flash Builder and Flex Future - Multiscreen DevelopmentFlash Builder and Flex Future - Multiscreen Development
Flash Builder and Flex Future - Multiscreen Development
 
Introduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile DevicesIntroduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile Devices
 
Getting Started with Flex and PHP
Getting Started with Flex and PHPGetting Started with Flex and PHP
Getting Started with Flex and PHP
 
Mapping and Geolocation with the Flash Platform
Mapping and Geolocation with the Flash PlatformMapping and Geolocation with the Flash Platform
Mapping and Geolocation with the Flash Platform
 
DelveNYC: Flash Catalyst
DelveNYC: Flash CatalystDelveNYC: Flash Catalyst
DelveNYC: Flash Catalyst
 

Recently uploaded

TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
UiPathCommunity
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
Liveplex
 
How Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdfHow Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdf
HackersList
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
ScyllaDB
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
Mark Billinghurst
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
SynapseIndia
 
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Erasmo Purificato
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
BookNet Canada
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Chris Swan
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
Adam Dunkels
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
Matthew Sinclair
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
Larry Smarr
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
Bert Blevins
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
Toru Tamaki
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
Stephanie Beckett
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
rajancomputerfbd
 

Recently uploaded (20)

TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
 
How Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdfHow Social Media Hackers Help You to See Your Wife's Message.pdf
How Social Media Hackers Help You to See Your Wife's Message.pdf
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
 
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
 

Debugging and deploying with phone gap

  • 1. Debugging and Deploying with PhoneGap Tools and techniques for testing and distributing cross-platform apps Thursday, February 16, 2012
  • 2. Ryan Stewart Web Developer Evangelist, Adobe ryan@adobe.com blog.digitalbackcountry.com @ryanstewart github.com/ryanstewart Based in Seattle Things I Like: Beer Mountaineering/Hiking/Backpacking Geolocation/Mapping stuff Thursday, February 16, 2012
  • 3. Agenda • Debugging with PhoneGap • Deploying PhoneGap Apps with PhoneGap Build Thursday, February 16, 2012
  • 5. Debugging these kinds of apps is best done on device. Luckily there are a few tools that make that easy. Thursday, February 16, 2012
  • 6. It’s all just HTML/ JS, so you can use your browser! Take advantage of Chrome Developer tools/Firebug to test your app’s UI. Thursday, February 16, 2012
  • 7. But what about Device APIs? Because we’re in the web view, there is no way to do line-by-line debugging. Thursday, February 16, 2012
  • 8. No w wi th Luckily we have Weinre, which lets us debug and manipulate the DOM from our PCs. Thursday, February 16, 2012
  • 9. No w wi th Luckily we have Weinre, which lets us debug and manipulate the DOM from our PCs. Thursday, February 16, 2012
  • 10. Weinre can be configured as a server (there is a Mac application) and uses the developer tools from Chrome to provide hooks into the mobile app. Thursday, February 16, 2012
  • 11. Drop in a <script> tag on a remote server and Weinre will let you use the Developer Tools on your apps. *Requires internet access, so keep that in mind. Thursday, February 16, 2012
  • 12. Demo: Debugging with Weinre Thursday, February 16, 2012
  • 13. But, a much easier way: http:// debug.phonegap.com/ Thursday, February 16, 2012
  • 14. Demo: debug.phonegap.com Thursday, February 16, 2012
  • 15. Deploying build.phonegap.com Thursday, February 16, 2012
  • 16. e Problem: You’re building a cross-platform app, but dealing with a lot of native projects Thursday, February 16, 2012
  • 17. e Solution: PhoneGap Build - a cloud service for creating binary files for multiple platforms from a single codebase Thursday, February 16, 2012
  • 19. What PhoneGap Build lets you do: Thursday, February 16, 2012
  • 20. No vendor platform lock-in Want to build for iOS but don’t have a Mac? No problem. Thursday, February 16, 2012
  • 21. Build for every platform at once PhoneGap Build creates binaries for all of the major platforms at the same time and in one place. Thursday, February 16, 2012
  • 22. Debug on your devices Use PhoneGap Build to incorporate debug code in your application so you can test on the device itself. Thursday, February 16, 2012
  • 24. 1) Sign up for an account 2) Create an application a) Can be uploaded HTML/CSS/JS files b) Can be a Git/SVN repo c) PhoneGap can create and host a Git repo 3) Profit Thursday, February 16, 2012
  • 25. Build lets you configure app properties across platforms. You can also target specific versions of PhoneGap to maximize compatibility. Thursday, February 16, 2012
  • 26. Core part of PhoneGap Build: Work how you want to work Thursday, February 16, 2012
  • 27. Using Git/SVN repositories Thursday, February 16, 2012
  • 28. Build lets you create a new app from a Git or SVN repository (including GitHub support). Note: It can’t be a private repo. Thursday, February 16, 2012
  • 29. All of your development can be done from source control. Simply “Update Code” from the App page and Build will recreate the binaries based on the code in your repository. Thursday, February 16, 2012
  • 30. Debugging and Testing Thursday, February 16, 2012
  • 31. Build includes a debugging option that will inject the Weinre JavaScript into the app so it can be remotely debugged using debug.phonegap.c om Thursday, February 16, 2012
  • 32. Just click the “debug” button in Build and start debugging. No dealing with the same wifi connection or USB tethering. Thursday, February 16, 2012
  • 33. What I find to be easiest is to set up a “regular” version of the app and a “debug” version of the app. Can be the exact same repo, but one will provide debug binaries automatically. Thursday, February 16, 2012
  • 34. Build lets you define individuals as tester/ developer which changes permissions on the project accordingly. Thursday, February 16, 2012
  • 35. Testers: Can access the binaries and rebuild the binaries based on what’s in the linked repository. Developers: Can admin the application as well as do all the things testers can do. Thursday, February 16, 2012
  • 36. You can use Build as your testing distribution as well by making the download pages public. Thursday, February 16, 2012
  • 37. PhoneGap Build Roadmap Thursday, February 16, 2012
  • 38. Will (soon) support popular plugins so that you can build plugins right into the build process. Thursday, February 16, 2012
  • 39. Windows support also coming Thursday, February 16, 2012
  • 40. Demo: PhoneGap Build Thursday, February 16, 2012
  • 41. Q&A Ryan Stewart Web Developer Evangelist, Adobe ryan@adobe.com blog.digitalbackcountry.com @ryanstewart github.com/ryanstewart Thursday, February 16, 2012
  • 42. Are you building a cool app?? Let me know! - ryan@adobe.com Thursday, February 16, 2012