When last we met our hero…
browsers
emulators
devices
ALL THE PLATFORMS
We’ve been busy.
$ cordova platform save
$ cordova plugin save
Continuous Integration
Catching plugin bugs in every commit on all the platforms
like a freakin’ venus fly trap.
100s of plugin bugs
Cordova 6.0
[applause]
This affects all of us.
Adobe PhoneGap
Apache Cordova
Cocoon
Framework 7
Ionic Framework
Monaca
IBM MobileFirst
Intel XDK
Meteor
SAP
Telerik
Visual Studio
Nearly 200% growth in three years
0% 10% 20% 30% 40% 50% 60% 70%
PhoneGap/Cordova
Xamarin
Unity
Qt
Adobe Air
Appcelerator
Corona
Marmelade
Codename One
Live Code
2012 2015
Vision Mobile Analysis of Cross-Platform Development, July 2015
Where do we go next?
1. Better community == better platform
2. Tools made for mobile development
3. Focus on UX
Debug your code on any browser, emulator or device.
Increase speed & accuracy with Intellisense for plugins.
Invoke Cordova commands from the editor.
Visual Studio Code
1. Better community == better platform
2. Tools made for mobile development
3. Focus on UX
Apache
Cordova
Native
Experiment
Apache
Cordova
Native
Experiment
Apache
Cordova
Experiment
… Sometimes you may just
need native UI components
Not for the entire app,
Just parts of it
for a native
side-menu
for overlays
for page
transitions
reuse native
components
standardized
native screens
An escape hatch to the native world
• Native UI
• Native APIs
• Still Cordova. Still a webview.
• UI defined in XML, AndroidXML or JS
• Available as a Cordova Plugin
• Experimental. Send feedback.
 Docked
 Overlays
 Separate, full screen
 Page Transitions
Native UI
JavaScript
XML
Android XML
Interface Builder
(NIB/XIB)
var button = new ace.Button();
<Button />
var button;
if (ace.platform == "iOS")
button = new ace.NativeObject("UIButton");
else if (ace.platform == "Android")
button = new ace.NativeObject("android.widget.Button");
<if:iOS>
<ios:UIButton />
</if:iOS>
<if:Android>
<android:Button />
</if:Android>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content" />
Cross-Platform
(write once)
Platform-Specific
(write twice)
http://taco.tools
Made with ♥ in Redmond
@ryanjsalva #aceplugin♠

PhoneGap Day 2016 USA

Editor's Notes

  • #20 Eric Alli talked about “don’t forget that you’re building an app, not a website”
  • #22 Shawn from Mobify Shaz from Adobe