phonegap day 2016 usa
TRANSCRIPT
When last we met our hero…
browsersemulatorsdevices
ALL THE PLATFORMS
We’ve been busy.
$ cordova platform save$ cordova plugin save
Continuous IntegrationCatching 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 PhoneGapApache CordovaCocoonFramework 7Ionic FrameworkMonacaIBM MobileFirstIntel XDKMeteorSAPTelerikVisual Studio
Nearly 200% growth in three years
PhoneGap/CordovaXamarin
UnityQt
Adobe AirAppcelerator
CoronaMarmelade
Codename OneLive Code
0% 10% 20% 30% 40% 50% 60% 70%
2015 2012
Vision Mobile Analysis of Cross-Platform Development, July 2015
Where do we go next?
1. Better community == better platform2. Tools made for mobile development3. 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 platform2. Tools made for mobile development3. Focus on UX
ApacheCordovaNativeExperiment
ApacheCordovaNativeExperiment
ApacheCordovaExperiment
… 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.toolsMade with ♥ in Redmond
@ryanjsalva #aceplugin♠