the story behind pf2014 - cordova

61
The story behind PF2014 http://pf2014.sinusgear.com Juraj Michálek Brno

Upload: juraj-michalek

Post on 05-Sep-2014

1.676 views

Category:

Technology


0 download

DESCRIPTION

The story behind building application PF2014 based on Cordova with AngularJS, jQuery without Canvas. Short info about app markets like Google Play, Apple App Store, Amazon App Store and Windows Phone store

TRANSCRIPT

Page 1: The story behind PF2014 - Cordova

The story behind PF2014http://pf2014.sinusgear.com

Juraj MichálekBrno

Page 2: The story behind PF2014 - Cordova

Creativity is just connecting things.- Jobs

Page 3: The story behind PF2014 - Cordova
Page 4: The story behind PF2014 - Cordova

Motivation

Create something new

Learn something new

Do something new

Page 5: The story behind PF2014 - Cordova

PF 2010

Page 6: The story behind PF2014 - Cordova

PF 2011

Page 7: The story behind PF2014 - Cordova

PF 2012

HTML5 Canvas

Page 8: The story behind PF2014 - Cordova

PF 2013

Webfonts

Page 9: The story behind PF2014 - Cordova

PF 2014?

Mobile

Touch

Page 10: The story behind PF2014 - Cordova

Apache Cordova

Page 11: The story behind PF2014 - Cordova
Page 12: The story behind PF2014 - Cordova
Page 13: The story behind PF2014 - Cordova

Install NodeJS

Page 14: The story behind PF2014 - Cordova

Install Cordova

Page 15: The story behind PF2014 - Cordova

Create project

Page 16: The story behind PF2014 - Cordova

Add platform

Page 17: The story behind PF2014 - Cordova

Build

Page 18: The story behind PF2014 - Cordova

Emulate - AVD Manager

Page 19: The story behind PF2014 - Cordova

Import to Idea

Page 20: The story behind PF2014 - Cordova

Correction of modules

Page 21: The story behind PF2014 - Cordova

Run/Emulate from Idea

Page 22: The story behind PF2014 - Cordova

Logs

Page 23: The story behind PF2014 - Cordova

Cordova project structure

● platforms○ android○ ios

● plugins● www (edit code here)

Page 24: The story behind PF2014 - Cordova

Testing in browser

Page 25: The story behind PF2014 - Cordova

HTML5 Canvas - EaselJS

A Javascript library that makes working with the HTML5 Canvas element easy.

Page 26: The story behind PF2014 - Cordova

Problems

performance: Caching demo - 2 FPS - Samsung Galaxy Sworse tooling than HTML :-(

Page 27: The story behind PF2014 - Cordova

Constellations

Page 28: The story behind PF2014 - Cordova

Tracing Paper tool

http://tp.sinusgear.com

Page 29: The story behind PF2014 - Cordova

Display stars<i class="positionMarker fa fa-star"

data-index="{{$index}}"ng-repeat="item in visibleStars" ng-style="getStarStyle(item)">

</i>

Page 30: The story behind PF2014 - Cordova

http://fontawesome.io/

Page 31: The story behind PF2014 - Cordova

Use Font Awesome in Cordova

Page 32: The story behind PF2014 - Cordova

Drag the star

Angular-drag-drop, Angular-touch

angular.module('app', ['ngTouch', 'ngDragDrop']) .controller('ConstellationController',...

Page 33: The story behind PF2014 - Cordova

Drag’n’drop

jQuery-ui - animationdrag by mouse

Page 34: The story behind PF2014 - Cordova

No Canvas?

How to draw a line?!

Page 35: The story behind PF2014 - Cordova

Div + CSS3

.line {width: 100px;

height: 2px;transform: rotate(120deg);background: lightyellow; ...

}

Page 36: The story behind PF2014 - Cordova

AngularJS dynamic style

<div class="line" ng-repeat="line in visibleLines" ng-style="getLineStyle(line)">

</div>

Page 37: The story behind PF2014 - Cordova

Chrome Developer Tools - F12

Page 38: The story behind PF2014 - Cordova

GoogleChromeCanary

Page 39: The story behind PF2014 - Cordova

Mobile device emulation

Page 40: The story behind PF2014 - Cordova

Hups!

Drag’n’drop does not work on mobile!

Page 41: The story behind PF2014 - Cordova

Event mapping override switch(event.type) { case "touchstart": type = "mousedown"; break; case "touchmove": type="mousemove"; break; case "touchend": type="mouseup"; break; default: return; }

Page 42: The story behind PF2014 - Cordova

Persisting game state

Page 43: The story behind PF2014 - Cordova

Angular local storage

Page 44: The story behind PF2014 - Cordova

Going mobile

Page 45: The story behind PF2014 - Cordova

https://play.google.com/apps/publishRegistration: 25$

- one time payment for developer

Page 46: The story behind PF2014 - Cordova

Signed APK

Page 47: The story behind PF2014 - Cordova

Prepare and publish

https://play.google.com/apps/publish

Page 48: The story behind PF2014 - Cordova

Review ~ 1 day

Page 49: The story behind PF2014 - Cordova

Going live

Page 50: The story behind PF2014 - Cordova

Analytics

Page 51: The story behind PF2014 - Cordova

http://developer.apple.comRegistration: 99$ / yearApproved bank account: ~2 days

Page 52: The story behind PF2014 - Cordova
Page 53: The story behind PF2014 - Cordova
Page 54: The story behind PF2014 - Cordova

Build: only Mac OS X- requires: XCode- sign by valid Apple certificate

Page 55: The story behind PF2014 - Cordova

Review: 5-7 days

Page 56: The story behind PF2014 - Cordova

http://www.windowsphone.com/Registration: 19$/yearBuild: WP8 requires Windows 8

Page 57: The story behind PF2014 - Cordova

https://developer.amazon.com/home.html

Registration: freeReview: ~1 day

Page 58: The story behind PF2014 - Cordova
Page 59: The story behind PF2014 - Cordova

PF 2014 summary

Web: 188 visitsGoogle Play: 25Amazon: 6Apple App Store: 0, still waiting for approval

Campaign channels: Mail, Skype, Google+

Page 60: The story behind PF2014 - Cordova

Grab the source code :-)

https://github.com/georgik/pf2014

Page 61: The story behind PF2014 - Cordova

Share and enjoy

PF 2014: http://georgik.sinusgear.com/2013/12/28/pf-2014/

PF 2013: http://georgik.sinusgear.com/2012/12/22/pf-2013/

PF 2012: http://georgik.sinusgear.com/2011/12/31/pf-2012/

PF 2011: http://georgik.sinusgear.com/2010/12/23/pf2011/

PF 2010: http://georgik.sinusgear.com/2009/12/26/pf-2010/