e2 appspresso hands on lab

69
Apps presso Hands-on Labs / 웹어플리케이션팀 / 팀장 김민태 @ibare http://www.ibare.kr [email protected]

Upload: naver-d2

Post on 15-Jan-2015

1.316 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: E2 appspresso hands on lab

AppspressoHands-on Labs����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  /����������� ������������������  웹어플리케이션팀����������� ������������������  /����������� ������������������  팀장����������� ������������������  김민태

@ibare����������� ������������������  ����������� ������������������  http://www.ibare.kr����������� ������������������  ����������� ������������������  ����������� ������������������  [email protected]

Page 2: E2 appspresso hands on lab

Download http://www.appspresso.com

Page 3: E2 appspresso hands on lab
Page 4: E2 appspresso hands on lab
Page 5: E2 appspresso hands on lab

HelloWorld

File > New > Appspresso Application Project

File > New > Appspresso Plugin Project

Page 6: E2 appspresso hands on lab

HelloWorldStep 1 - project info

Page 7: E2 appspresso hands on lab

HelloWorldStep 2 - choose template

Page 8: E2 appspresso hands on lab

HelloWorldProject Directory Structure

Page 9: E2 appspresso hands on lab

HelloWorldProject.xml - Overview

Page 10: E2 appspresso hands on lab

HelloWorldProject.xml - Plugin

Page 11: E2 appspresso hands on lab

HelloWorldProject.xml - Plugin / Add Built-in Plugin

Page 12: E2 appspresso hands on lab

HelloWorldProject.xml - Plugin / Add Built-in Plugin > ax.ext.media & ax.ext.net

Page 13: E2 appspresso hands on lab

HelloWorldProject.xml - Feature

Page 14: E2 appspresso hands on lab

HelloWorldProject.xml - iOS

Page 15: E2 appspresso hands on lab

HelloWorldProject.xml - Android

Page 16: E2 appspresso hands on lab

HelloWorldProject.xml - Preference

Page 17: E2 appspresso hands on lab

HelloWorldProject.xml - Source

Page 18: E2 appspresso hands on lab

HelloWorldIndex.html

Page 19: E2 appspresso hands on lab

HelloWorld

Run demo

Page 20: E2 appspresso hands on lab

Web Development

Code Deploy Run Edit

Reload

Page 21: E2 appspresso hands on lab

Native Development

Code Compile Run Edit

Page 22: E2 appspresso hands on lab

On the fly development

Code

Run

Edit

Reload

Compile

1

Page 23: E2 appspresso hands on lab

Setup on the flyPreference

Page 24: E2 appspresso hands on lab

Use on the fly

54

3

2 1

6

Stop

Start

Pro

jec

t

Start file

Eva

luate

Page 25: E2 appspresso hands on lab

On the fly

demo

Page 26: E2 appspresso hands on lab

26

BODYdata-role=”page” id=”page1”

data-role=”header”H1

data-role=”content”...href=”link”

data-role=”page” id=”page2”...

file 1

Ajax

file 2 file 3

Stack History Management

<!doctype html><html>...

<div data-role=”page”...

SPI (Single Page Interface)

Page 27: E2 appspresso hands on lab

jQueryMobile

Page 28: E2 appspresso hands on lab

HTML Structure

Page 29: E2 appspresso hands on lab

<!doctype html><html><head><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><link rel="stylesheet" href="css/jquery.mobile-1.0a4.1.css" /><script src="js/jquery-1.5.js"></script><script src="js/jquery.mobile-1.0a4.1.js"></script><script src="/appspresso/appspresso.js"></script></head><body><div data-role=”page” id=”home”> <div data-role=”header”> </div> <div data-role=”content”> </div> <div data-role=”footer”> </div></div></body>

Page 30: E2 appspresso hands on lab

<!doctype html><html><head><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><link rel="stylesheet" href="css/jquery.mobile-1.0a4.1.css" /><script src="js/jquery-1.5.js"></script><script src="js/jquery.mobile-1.0a4.1.js"></script><script src="/appspresso/appspresso.js"></script></head><body><div data-role=”page” id=”home”> <div data-role=”header”> </div> <div data-role=”content”> </div> <div data-role=”footer”> </div></div></body>

Page 31: E2 appspresso hands on lab

<!doctype html><html><head><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><link rel="stylesheet" href="css/jquery.mobile-1.0a4.1.css" /><script src="js/jquery-1.5.js"></script><script src="js/jquery.mobile-1.0a4.1.js"></script><script src="/appspresso/appspresso.js"></script></head><body><div data-role=”page” id=”home”> <div data-role=”header”> </div> <div data-role=”content”> </div> <div data-role=”footer”> </div></div></body>

Page 32: E2 appspresso hands on lab

<!doctype html><html><head><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><link rel="stylesheet" href="css/jquery.mobile-1.0a4.1.css" /><script src="js/jquery-1.5.js"></script><script src="js/jquery.mobile-1.0a4.1.js"></script><script src="/appspresso/appspresso.js"></script></head><body><div data-role=”page” id=”home”> <div data-role=”header”> </div> <div data-role=”content”> </div> <div data-role=”footer”> </div></div></body>

Page 33: E2 appspresso hands on lab

<!doctype html><html><head><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><link rel="stylesheet" href="css/jquery.mobile-1.0a4.1.css" /><script src="js/jquery-1.5.js"></script><script src="js/jquery.mobile-1.0a4.1.js"></script><script src="/appspresso/appspresso.js"></script></head><body><div data-role=”page” id=”home”> <div data-role=”header”> </div> <div data-role=”content”> </div> <div data-role=”footer”> </div></div></body>

Page 34: E2 appspresso hands on lab

Header

Page 35: E2 appspresso hands on lab

<div data-role=”header”> <h1>KichenSink</h1></div>

Page 36: E2 appspresso hands on lab

<div data-role=”header”> <h1>KichenSink</h1> <a href=”#about” data-role=”button”>About</a></div>

Page 37: E2 appspresso hands on lab

<div data-role=”header”> <h1>KichenSink</h1> <a href=”#about” data-role=”button”>About</a> <div data-role="navbar"> <ul> <li><a href="#">Flickr</a></li> <li><a href="#">Yahoo</a></li> <li><a href="#">Twitter</a></li> </ul> </div> </div>

Page 38: E2 appspresso hands on lab

Content

Page 39: E2 appspresso hands on lab

<div data-role=”content”> </div>

Page 40: E2 appspresso hands on lab

<div data-role=”content”> <div id="logo"> <img src="kichensink.png"> </div></div>

Page 41: E2 appspresso hands on lab

<div data-role=”content”> <div id="logo"> <img src="kichensink.png"> </div> <ul data-role=”listview”> <li><a href=”#”>Device</a></li> <li><a href=”#”>PIM</a></li> </ul> </div>

Page 42: E2 appspresso hands on lab

ListView

Page 43: E2 appspresso hands on lab

<ul data-role=”listview”> <li>Device</li> <li>PIM</li></ul>

Page 44: E2 appspresso hands on lab

<ul data-role=”listview”> <li><a href=”#”>Device</a></li> <li><a href=”#”>PIM</a></li></ul>

Page 45: E2 appspresso hands on lab

<ul data-role=”listview”> <li> <a href=”#”> <h1>Device</h1> <p>Device status, ...</p> </a> </li> <li> <a href=”#”> <h1>PIM</h1> <p>Contacts, Calendar, Task</p> </a> </li></ul>

Page 46: E2 appspresso hands on lab

<ul data-role=”listview”> <li> <a href=”#”> <h1>Device</h1> <p>Device status, ...</p> </a> </li> <li> <a href=”#”> <h1>PIM</h1> <p>Contacts, Calendar, Task</p> <span class="ui-li-count">3</span> </a> </li></ul>

Page 47: E2 appspresso hands on lab

<ul data-role=”listview”> <li> <a href=”#”> <img src=”my_image.jpg”> <h1>Device</h1> <p>Device status, ...</p> </a> </li> <li> <a href=”#”> <h1>PIM</h1> <p>Contacts, Calendar, Task</p> <span class="ui-li-count">3</span> </a> </li></ul>

Page 48: E2 appspresso hands on lab

Event

Page 49: E2 appspresso hands on lab

page A page B

pagebeforeshow

pageshow

pagehide

pagebeforehide

Page 50: E2 appspresso hands on lab

Tutorials

Page 51: E2 appspresso hands on lab

Devicestatus

deviceapis.devicestatus.getPropertyValue (function_success_callback, function_error_callback,options

);

function success_cb(value) {

}

function error_cb() {

}

Page 52: E2 appspresso hands on lab

Devicestatus

Aspect Properties

Battery batteryLevel,����������� ������������������  batteryBeginCharged

CellularHardware status

CellularNetwork isInRoaming,����������� ������������������  signalStrength,����������� ������������������  operatorName

Device imei,����������� ������������������  model,����������� ������������������  version,����������� ������������������  vendor

DisplayresolutionHeight,����������� ������������������  pixelAspectRatio,����������� ������������������  dpiY,����������� ������������������  resolutionWidth,����������� ������������������  dpiX,����������� ������������������  colorDepth

MemoryUnit size,����������� ������������������  removable,����������� ������������������  availableSize

OperatingSystem language,����������� ������������������  version,����������� ������������������  name,����������� ������������������  vendor

WebRuntime wacVersion,����������� ������������������  supportedImageFormats,����������� ������������������  version,����������� ������������������  name,����������� ������������������  vendor

WiFiHardware status

WiFiNetwork ssid,����������� ������������������  signalStrength,����������� ������������������  networkStatus

Page 53: E2 appspresso hands on lab

Devicestatus

Demo

Page 54: E2 appspresso hands on lab

Accelerometer

+Y

-Y

+X

-X

+Z

-Z

Page 55: E2 appspresso hands on lab

Accelerometer

deviceapis.accelerometer.watchAcceleration (function_success_callback, function_error_callback,{ minNotificationInterval: 50 }

);

function success_cb(acceleration) { ax.log(acceleration.xAxis);}

function error_cb() {

}

Page 56: E2 appspresso hands on lab
Page 57: E2 appspresso hands on lab

Gallery

ax.ext.media.pickImage(function_success_callback, function_error_callback,options

);

function success_cb(file) { deviceapis.filesystem.resolve( success_cb, error_cb, file, "r" );}

function error_cb() {

}

Page 58: E2 appspresso hands on lab

Gallery

Demo

Page 59: E2 appspresso hands on lab

Export to App Store

Page 60: E2 appspresso hands on lab

Upload App App StoreiOS Developer Program $99 / year

Page 61: E2 appspresso hands on lab

Upload App App StoreiOS Dev Center

Page 62: E2 appspresso hands on lab

Upload App App StoreProvisioning Portal

Page 63: E2 appspresso hands on lab

Upload App App StoreDevelopment Provisioning Assistant

Page 64: E2 appspresso hands on lab

Upload App App StoreDistribution

Page 65: E2 appspresso hands on lab

Upload App App StoreiTunes Connect

Page 66: E2 appspresso hands on lab

Upload App App StoreManage Your Apps

Page 67: E2 appspresso hands on lab

Upload App App StoreManage Your Apps

Page 68: E2 appspresso hands on lab

Upload App App StoreUpload

Page 69: E2 appspresso hands on lab

AppspressoHands-on Labs

감사합니다

����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  /����������� ������������������  웹어플리케이션팀����������� ������������������  /����������� ������������������  팀장����������� ������������������  김민태

@ibare����������� ������������������  ����������� ������������������  http://www.ibare.kr����������� ������������������  ����������� ������������������  ����������� ������������������  [email protected]