Transcript
Page 1: Mobile Application Development for the Web Developer
Page 2: Mobile Application Development for the Web Developer

mobile application development

for the web developercraig johnston

sudjam, llc

>

Page 3: Mobile Application Development for the Web Developer

sudjam

Page 4: Mobile Application Development for the Web Developer

los angeles

Page 5: Mobile Application Development for the Web Developer

net

Page 6: Mobile Application Development for the Web Developer
Page 7: Mobile Application Development for the Web Developer

dev

Page 8: Mobile Application Development for the Web Developer

web +mobile

Page 9: Mobile Application Development for the Web Developer

mobile

Page 10: Mobile Application Development for the Web Developer

focus

Page 11: Mobile Application Development for the Web Developer
Page 12: Mobile Application Development for the Web Developer

androidiosother

Page 13: Mobile Application Development for the Web Developer

developer driven success

“how many apps does your device have?”

Page 14: Mobile Application Development for the Web Developer

apps

Page 15: Mobile Application Development for the Web Developer

mobile devices run appscomputers run applications

Page 16: Mobile Application Development for the Web Developer

desktop browsers run web applicationsmobile browsers run web apps

Page 17: Mobile Application Development for the Web Developer

native platforms web platform

Page 18: Mobile Application Development for the Web Developer

native stack web stack

Page 19: Mobile Application Development for the Web Developer

objective-cjava

cactionscript

htmlcssjs

Page 20: Mobile Application Development for the Web Developer

native web apps

Page 21: Mobile Application Development for the Web Developer

web platform

Page 22: Mobile Application Development for the Web Developer

internet explorer safari firefox chrome opera

Page 23: Mobile Application Development for the Web Developer

render htmljavascript api

Page 24: Mobile Application Development for the Web Developer

htm

l

Page 25: Mobile Application Development for the Web Developer
Page 26: Mobile Application Development for the Web Developer
Page 27: Mobile Application Development for the Web Developer

enginetrident gecko presto webkit

Page 28: Mobile Application Development for the Web Developer

web platformin native apps

Page 29: Mobile Application Development for the Web Developer

example

Page 30: Mobile Application Development for the Web Developer
Page 31: Mobile Application Development for the Web Developer
Page 32: Mobile Application Development for the Web Developer
Page 33: Mobile Application Development for the Web Developer

UIWebView

WebView

Page 34: Mobile Application Development for the Web Developer

html + js

Page 35: Mobile Application Development for the Web Developer

html + js

Page 36: Mobile Application Development for the Web Developer

html   <body>

    <div  class="loading">

      <img  src="images/logo_geekend_300x200.png"  /><br  />

      <img  src="images/loading.gif"  />

    </div>

    <div  id="location"  class="page  detail">

      <div  class="header">

        <img  src="images/logo_geekend_300x200.png"  />

      </div>  

      <div  class="content  title">

        <h1  class="title"></h1>

        <h2  class="address"></h2>

        <h2  class="phone"></h2>

      </div>

      <div  class="content  controls">

        <a  href="#"><img  src="images/btn_googlemaps.png"  /></a>

      </div>      

      <div  class="content  body">

      </div>

    </div>    

  </body>

Page 37: Mobile Application Development for the Web Developer

jsif(!gApp)  {  var  gApp  =  {};  }

gApp.populateLocation  =  function(data)  {

  x$('#location  .content.title  .title').inner(data.title);  

  x$('#location  .content.title  .address').inner(data.address);

  x$('#location  .content.title  .phone').inner('<a  href="tel:'  +  data.phone  +  '">'  +  data.phone  +  '</a>');

  data.description  ?  x$('#location  .content.body').inner(data.description)  :  null;

  data.addressURI  =  encodeURI(data.address);

  x$('#location  >  .header  >  img')[0].src  =  'http://maps.google.com/maps/api/staticmap?center='  +  data.addressURI  +  '&markers=color:blue|'  +  data.addressURI  +  '&zoom=15&size=300x200&sensor=false';

  x$('#location  >  .content.controls  a')[0].href  =  "http://maps.google.com/maps?q="  +    data.addressURI;

  x$('.loading').css({  display:'none'});  

  x$('.page').css({  display:'block'});

};

Page 38: Mobile Application Development for the Web Developer

x$

Page 39: Mobile Application Development for the Web Developer

7.8k.xhr().html().setStyle().addClass()...

Page 40: Mobile Application Development for the Web Developer

cross platform web

Page 41: Mobile Application Development for the Web Developer
Page 42: Mobile Application Development for the Web Developer

T yet...

Page 43: Mobile Application Development for the Web Developer

web ui

Page 44: Mobile Application Development for the Web Developer

hardware acceleration

Page 45: Mobile Application Development for the Web Developer

webkit

Page 46: Mobile Application Development for the Web Developer

css animation

Page 47: Mobile Application Development for the Web Developer

designfunction

Page 48: Mobile Application Development for the Web Developer

prototypeweb app

Page 49: Mobile Application Development for the Web Developer
Page 50: Mobile Application Development for the Web Developer

html<div  id="header">

       <a  href="#">Geekend  2010</a>

</div>

<div  id="content">

       <div  id="newsListSection"  class="section  scroller  current">

               <div  class="sectionHeader">

               </div>

               <ul  id="newsList"  class="list">

                       <li  class="listItem  newsDigestItem">

                               <p>Lorem  ipsum  dolor  sit  amet,  consectetur  adipisicing  elit...</p>

                       </li>

      ...

               </ul>

       </div>

</div>

Page 51: Mobile Application Development for the Web Developer
Page 52: Mobile Application Development for the Web Developer

css.current  {   -­‐webkit-­‐animation-­‐name:  slideinfromright;}

@-­‐webkit-­‐keyframes  slideinfromright  {    from  {       -­‐webkit-­‐transform:  translate3d(100%,0,0);     }      to  {       -­‐webkit-­‐transform:  translate3d(0,0,0);     }}

Page 53: Mobile Application Development for the Web Developer

-­‐webkit-­‐transform:  translate3d

Page 54: Mobile Application Development for the Web Developer

jsx$(‘#n  .current’).addClass(‘previous’);

x$(‘#n  .current’).removeClass(‘current’);

x$(‘#n  .next’).addClass(‘current’);

x$(‘#n  .current’).removeClass(‘next’);

Page 55: Mobile Application Development for the Web Developer

x$(‘#n  .next’).addClass(‘current’);

Page 56: Mobile Application Development for the Web Developer

.current  {   -­‐webkit-­‐animation-­‐name:  slideinfromright;}

Page 57: Mobile Application Development for the Web Developer
Page 58: Mobile Application Development for the Web Developer

phonegapnative wrapper

Page 59: Mobile Application Development for the Web Developer

example

Page 60: Mobile Application Development for the Web Developer

setup

Page 61: Mobile Application Development for the Web Developer

web app

Page 62: Mobile Application Development for the Web Developer

android

Page 63: Mobile Application Development for the Web Developer

essentials

Page 64: Mobile Application Development for the Web Developer
Page 65: Mobile Application Development for the Web Developer

+

Page 66: Mobile Application Development for the Web Developer

cubiq.org/iscroll

Page 67: Mobile Application Development for the Web Developer
Page 68: Mobile Application Development for the Web Developer
Page 70: Mobile Application Development for the Web Developer

objectframework.com


Recommended