SlideShare une entreprise Scribd logo
1  sur  16
Télécharger pour lire hors ligne
Adventures in Mobile
            development.
                   Mango edition
Monday, 5 December, 11
PhoneGap is a hack
             iOS - the Early Days

                   Nitobi created iPhone Gap
                   stringByEvaluatingJavascriptString()


                   JS->Native used       window.location   changes




Monday, 5 December, 11
Android


             Android SDK introduced the     webview.bind
             method

             Native code called javascript with ‘javascript:’
             URLs

             ( with issues )


Monday, 5 December, 11
Android + Callback
             Override prompt in javascript

             callback server with Polling

             It works




Monday, 5 December, 11
BlackBerry

             Originally it didn’t seem
             possible

                   Until Dave discovered
                   that JS cookies were
                   observable from Native
                   code.




Monday, 5 December, 11
BlackBerry WebWorks


                         WebWorks embraces
                         Javascript code, it becomes
                         a first class citizen on the
                         device.




Monday, 5 December, 11
WebOS
             WebOS the
             whole app is
             Javascript, so
             another simple
             shim

             WebOS did a
             lot right; just
             bad timing/luck




Monday, 5 December, 11
Windows Phone 7
         So how does WP7 do it? ScriptNotify

         Calling to Native

               javascript can call   window.external.Notify(string)


               C# code listens for the     ScriptNotify   event




Monday, 5 December, 11
WP7 Native->JS




             C# can call JS

                   this.webBrowser.InvokeScript(scriptName,string []args);




Monday, 5 December, 11
Why Not Sooner?
             Mango brings IE9

                   finally a compliant browser

                         addEventListener ( no more
                         conditional event model )


                         JSON built in


                         Array.forEach, Object.defineProperty


                         querySelectorAll, Canvas, SVG, ...



Monday, 5 December, 11
Stumbling Points
             IsolatedStorage

             WebStorage ( supported? )

             XMLHttpRequest




Monday, 5 December, 11
Non-Optimal
                         fixes

                           Panning + Zooming

                           The Grey Box

                           TouchEvents

                           The AppStore’s
                           Static Analyzer


Monday, 5 December, 11
Missing in Action
             WebSQL

             WebGL

             WebWorkers

             position:fixed

             Overflow:scroll



Monday, 5 December, 11
Persons Of Interest
            @Purplcabbage

                 My Blog:
                 risingj.com

            Abu Obeida Bakhach
            (Microsoft Interop Team)


            Sergei Grebnov
            (Microsoft Sponsored)


            @ColinEberhardt
            (First AppStore WP7 PhoneGap
            app!)

Monday, 5 December, 11
There be Monsters
             PhoneGap is still a hack!

             SDK designers are not yet considering this
             use-case.

             We are still outlaws, operating outside
             their imagination, successfully!

             It is still a new frontier




Monday, 5 December, 11
Demo Time




     Images from: http://en.wikipedia.org/wiki/File:Carta_Marina.jpeg

Monday, 5 December, 11

Contenu connexe

Similaire à Wp7 gapmeetup

Mobile Web App Development
Mobile Web App DevelopmentMobile Web App Development
Mobile Web App Development
Brian LeRoux
 
Mobile Development with Icenium
Mobile Development with IceniumMobile Development with Icenium
Mobile Development with Icenium
Bill Condo
 
Rcos presentation
Rcos presentationRcos presentation
Rcos presentation
mskmoorthy
 
Building businesspost.ie using Node.js
Building businesspost.ie using Node.jsBuilding businesspost.ie using Node.js
Building businesspost.ie using Node.js
Richard Rodger
 
Enterprise javascriptsession1
Enterprise javascriptsession1Enterprise javascriptsession1
Enterprise javascriptsession1
Troy Miles
 
The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)
The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)
The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)
Murat Yener
 

Similaire à Wp7 gapmeetup (20)

Mobile Web App Development
Mobile Web App DevelopmentMobile Web App Development
Mobile Web App Development
 
CloudFoundry and MongoDb, a marriage made in heaven
CloudFoundry and MongoDb, a marriage made in heavenCloudFoundry and MongoDb, a marriage made in heaven
CloudFoundry and MongoDb, a marriage made in heaven
 
HTML5 and Sencha Touch
HTML5 and Sencha TouchHTML5 and Sencha Touch
HTML5 and Sencha Touch
 
Multiplatform, Promises and HTML5
Multiplatform, Promises and HTML5Multiplatform, Promises and HTML5
Multiplatform, Promises and HTML5
 
Mobile Development with Icenium
Mobile Development with IceniumMobile Development with Icenium
Mobile Development with Icenium
 
Big app design for Node.js
Big app design for Node.jsBig app design for Node.js
Big app design for Node.js
 
Rcos presentation
Rcos presentationRcos presentation
Rcos presentation
 
Cool shits javascript can do
Cool shits javascript can doCool shits javascript can do
Cool shits javascript can do
 
WebGL For Game Development 2012
WebGL For Game Development 2012WebGL For Game Development 2012
WebGL For Game Development 2012
 
Hyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and JavascriptHyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and Javascript
 
Java Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
Java Tech & Tools | Grails in the Java Enterprise | Peter LedbrookJava Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
Java Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
 
Building businesspost.ie using Node.js
Building businesspost.ie using Node.jsBuilding businesspost.ie using Node.js
Building businesspost.ie using Node.js
 
Mobile Accessibility - Accessibility Camp Toronto
Mobile Accessibility - Accessibility Camp TorontoMobile Accessibility - Accessibility Camp Toronto
Mobile Accessibility - Accessibility Camp Toronto
 
DrupalCampNYC 10 - Native mobile apps with Drupal
DrupalCampNYC 10 - Native mobile apps with DrupalDrupalCampNYC 10 - Native mobile apps with Drupal
DrupalCampNYC 10 - Native mobile apps with Drupal
 
Mobile? WT... F?
Mobile? WT... F?Mobile? WT... F?
Mobile? WT... F?
 
Groke
GrokeGroke
Groke
 
Javascript - How to avoid the bad parts
Javascript - How to avoid the bad partsJavascript - How to avoid the bad parts
Javascript - How to avoid the bad parts
 
Adobe: Changing the game
Adobe: Changing the gameAdobe: Changing the game
Adobe: Changing the game
 
Enterprise javascriptsession1
Enterprise javascriptsession1Enterprise javascriptsession1
Enterprise javascriptsession1
 
The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)
The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)
The Horoscope of OSGi: Meet Eclipse Libra, Virgo and Gemini (JavaOne 2013)
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
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...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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)
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
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
 
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...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
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
 
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?
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Wp7 gapmeetup

  • 1. Adventures in Mobile development. Mango edition Monday, 5 December, 11
  • 2. PhoneGap is a hack iOS - the Early Days Nitobi created iPhone Gap stringByEvaluatingJavascriptString() JS->Native used window.location changes Monday, 5 December, 11
  • 3. Android Android SDK introduced the webview.bind method Native code called javascript with ‘javascript:’ URLs ( with issues ) Monday, 5 December, 11
  • 4. Android + Callback Override prompt in javascript callback server with Polling It works Monday, 5 December, 11
  • 5. BlackBerry Originally it didn’t seem possible Until Dave discovered that JS cookies were observable from Native code. Monday, 5 December, 11
  • 6. BlackBerry WebWorks WebWorks embraces Javascript code, it becomes a first class citizen on the device. Monday, 5 December, 11
  • 7. WebOS WebOS the whole app is Javascript, so another simple shim WebOS did a lot right; just bad timing/luck Monday, 5 December, 11
  • 8. Windows Phone 7 So how does WP7 do it? ScriptNotify Calling to Native javascript can call window.external.Notify(string) C# code listens for the ScriptNotify event Monday, 5 December, 11
  • 9. WP7 Native->JS C# can call JS this.webBrowser.InvokeScript(scriptName,string []args); Monday, 5 December, 11
  • 10. Why Not Sooner? Mango brings IE9 finally a compliant browser addEventListener ( no more conditional event model ) JSON built in Array.forEach, Object.defineProperty querySelectorAll, Canvas, SVG, ... Monday, 5 December, 11
  • 11. Stumbling Points IsolatedStorage WebStorage ( supported? ) XMLHttpRequest Monday, 5 December, 11
  • 12. Non-Optimal fixes Panning + Zooming The Grey Box TouchEvents The AppStore’s Static Analyzer Monday, 5 December, 11
  • 13. Missing in Action WebSQL WebGL WebWorkers position:fixed Overflow:scroll Monday, 5 December, 11
  • 14. Persons Of Interest @Purplcabbage My Blog: risingj.com Abu Obeida Bakhach (Microsoft Interop Team) Sergei Grebnov (Microsoft Sponsored) @ColinEberhardt (First AppStore WP7 PhoneGap app!) Monday, 5 December, 11
  • 15. There be Monsters PhoneGap is still a hack! SDK designers are not yet considering this use-case. We are still outlaws, operating outside their imagination, successfully! It is still a new frontier Monday, 5 December, 11
  • 16. Demo Time Images from: http://en.wikipedia.org/wiki/File:Carta_Marina.jpeg Monday, 5 December, 11

Notes de l'éditeur

  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