SlideShare a Scribd company logo
1 of 63
Download to read offline
HTML5生态系统和应用
     架构模型
范圣刚,princetoad@gmail.com, www.tfan.org
议题
• 基于Web服务的Mobile Apps
• Hybrid应⽤用开发模式
• 本地开发和云开发
• HTML5应⽤用的测试和调试
• 分发和部署:本地商店和Open Market
• HTML5的⽣生态系统
• In 2013,tablets will be sold globally.(Strategy
  media
           1 Billion HTML5 capable phones and

  Analytics)

• By 2015, half of all mobileas HTML5 mobile
  world will be developed
                              application in the

  Web apps(Gartner)
HTML5!
Apple

“The world is moving to HTML5”
      - Steve Jobs, Apple
Apple
Google

“The Web has not seen this level of
transformation, this level of acceleration, in the
past ten years... we’re betting big on HTML5”
- Vic Gundotra, VP of Engineering, Google
Google
Microsoft

“In a nutshell, we love HTML5, we love it so
much we want it to actually work.”
- Dean Hachamovitch, General Manager for
Internet Explorer, Microsoft
Microsoft
第三方浏览器厂商
Firefox
Firefox - Android
Opera
UC
百度
基于Web服务的Mobile
     Apps
Apps类型
单机版 vs ⺴⽹网络版
基于Web Service的应⽤用
• Flickr
• Twitter
• Facebook
• Foursquare
• LinkedIn
• Path
Hybrid应⽤用开发模式
2008
We must have an
 iPhone App!
2010
We must have an
 Android App!
2011
We must have a ?
操作系统的碎⽚片化
•   迁移到另外⼀一个新的平台需要⼤大量的⼈人⼒力物
    ⼒力


•   花费⼤大量的时间在技术实现上, ⽽而没有Focus
    在产品和⽤用户上⾯面


•   平台众多,造成管理,运营及培训⽤用户的成
    本剧增
Native开发的⼀一般⼯工作流
        程
1.为每⼀一个平台设置不同的开发环境
2.熟悉每个对应的操作系统,学习曲线⼀一般会很⻓长
3.不同的移动平台需要不同的编程语⾔言(C++,
 Objective-C, Java, C#...)

4.要熟悉每个平台⽀支持的特性
表:开发要求
  移动系统            开发系统            软件/IDE              编程语⾔言

     iOS            Mac            Xcode             Objective-C

                Windows/Mac/
   Android                     Eclipse/Java/ADT         Java
                   Linux

  BlackBerry      Windows      Eclipse/JDE, Java        Java

                Windows/Mac/
   Symbian                       Carbide.c++            C++
                   Linux
                Windows/Mac/   Eclipse/WebOS HTML/JavaScript/
   WebOS
                   Linux            Plugin       C++
Windows Phone                   Visual Studio           C#, .NET,
                  Windows
     7                              2010           Silverlight或WPF
使⽤用PhoneGap进⾏行Hybrid开发
浏览器组件作为通⽤用平
     台

• Web的发展历史和HTML5平台
• 浏览器标准的统⼀一趋势(HTML5/CSS3)
• 主要移动平台同样基于Webkit的浏览器(iOS
 Safari,Android Chrome)
移动浏览器
移动操作系        浏览器内核
   统
 Android      Webkit
    iOS       Webkit
BlackBerry    Webkit
   6.0 +
Windows        IE
 Phone 7
 WebOS        Webkit
  Nokia       Webkit
  Bada        Webkit
Webviews
•   所有的这些移动系统都⽀支持
    在应⽤用中嵌⼊入浏览器

•   实时内容更新的需求,简化
    应⽤用的审批部署流程

•   PhoneGap使⽤用本机浏览器:

    •   iOS - UIWebView


    •   Android -
        android.webkit.WebView
PhoneGap API
本机设备能⼒力的使⽤用
API原理和本地插件


•   所有这些平台都⽀支持在webview中导出本地模块到JavaScript,也
    就是说都允许JS调⽤用本地的Java/C++/Objective C代码,反之亦
    然。


•   使⽤用本地代码封装设备能⼒力;导出供JS调⽤用的接⼝口;通过JSON调
    ⽤用和⻚页⾯面交互数据


•   使⽤用JavaScript-to-native机制编写⾃自⼰己的PhoneGap本地插件
PhoneGap应⽤用的打包和
        分发
•   iOS - IPA⽂文件


•   Android - APK⽂文件


•   Windows Phone - XAP⽂文件


•   本地编译和PhoneGap Build


•   可以通过标准应⽤用商店分发:
    App Store, Google Play,
    MarketPlace...
PhoneGap的(⼀一般)应
       ⽤用架构
•   PhoneGap应⽤用作为跟⽤用户交互的客
    户端


•   和Web服务器或者应⽤用服务器等后
    台系统通信以交互数据


•   客户端服务器之间可以使⽤用标准的
    HTTP接⼝口,或者RESTful接⼝口,
    JSON服务或者SOAP协议


•   客户端架构⼀一般使⽤用单⼀一⻚页⾯面应⽤用
    模型,应⽤用逻辑都在⼀一个HTML⻚页
    ⾯面中。通过更新HTML DOM结构显
    ⽰示数据。
开发/调试工具
Eclipse
Xcode
Visual Studio
Adobe
Dreamweaver
Adobe Edge
 Inspector
PhoneGap
appMobi
UI Framework
Sencha Touch
HTML5 BOILERPLATE
modernizr
Amazon EC2
小结
• 基于Web的HTML5,还需要⼏几年的沉淀和发展,
  才能逐步取代移动应⽤用

• HTML5让在线的软件和内容具有了更强的互动性
  (⽐比如在线⼲⼴广告)

• HTML5对未来商业化内容如何发布将会产⽣生⾮非常
  明显的影响

• 使浏览器市场重新回到了⼀一个⾼高度竞争的时代,
  使Web更加开放
参考

• http://
  html5labs.interoperabilitybridges.com/

• http://www.apple.com/html5/
• http://www.html5rocks.com/en/
• https://developer.mozilla.org/en-US/docs/
  HTML/HTML5

More Related Content

What's hot

InspireDGT_2013 HTML5的可能發展與Web Worker
InspireDGT_2013 HTML5的可能發展與Web WorkerInspireDGT_2013 HTML5的可能發展與Web Worker
InspireDGT_2013 HTML5的可能發展與Web Workerinspire digital
 
编写跨平台的手机软件
编写跨平台的手机软件编写跨平台的手机软件
编写跨平台的手机软件heyfluke
 
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试Michael Zhang
 
Take Advantage of UIWebView for iOS Native App Developers
Take Advantage of UIWebView for iOS Native App DevelopersTake Advantage of UIWebView for iOS Native App Developers
Take Advantage of UIWebView for iOS Native App DevelopersRyan Chung
 
第一次 Mobile App 就上手
第一次 Mobile App 就上手第一次 Mobile App 就上手
第一次 Mobile App 就上手Ying-Hsiang Liao
 
開放原始碼 Ch3.1 mobile - oss - oss行動領域-1 (ver1.0)
開放原始碼 Ch3.1  mobile - oss - oss行動領域-1 (ver1.0) 開放原始碼 Ch3.1  mobile - oss - oss行動領域-1 (ver1.0)
開放原始碼 Ch3.1 mobile - oss - oss行動領域-1 (ver1.0) My own sweet home!
 
Koubei banquet 27
Koubei banquet 27Koubei banquet 27
Koubei banquet 27Koubei UED
 
Cef hybrid winforms application
Cef hybrid winforms applicationCef hybrid winforms application
Cef hybrid winforms applicationssusere89d45
 
Web 开发漫谈 —— 前端篇
Web 开发漫谈 —— 前端篇Web 开发漫谈 —— 前端篇
Web 开发漫谈 —— 前端篇尚斌 杨
 
Pure C# Hybrid WinForm Application
Pure C# Hybrid WinForm ApplicationPure C# Hybrid WinForm Application
Pure C# Hybrid WinForm Applicationssusere89d45
 
使用 .NET Standard 開發跨平台應用程式
使用 .NET Standard 開發跨平台應用程式使用 .NET Standard 開發跨平台應用程式
使用 .NET Standard 開發跨平台應用程式Gelis Wu
 
WoT Frotend 的設計與實作
WoT Frotend 的設計與實作WoT Frotend 的設計與實作
WoT Frotend 的設計與實作julie huang
 
[ICOS2013] Appcelerator Titanium簡介
[ICOS2013] Appcelerator Titanium簡介[ICOS2013] Appcelerator Titanium簡介
[ICOS2013] Appcelerator Titanium簡介Justin Lee
 
移动跨平台APP开发
移动跨平台APP开发移动跨平台APP开发
移动跨平台APP开发dhlzj
 
Mobile web開發架構與入門
Mobile web開發架構與入門Mobile web開發架構與入門
Mobile web開發架構與入門Chi-wen Sun
 
6 rexsee:会html就会android
6 rexsee:会html就会android6 rexsee:会html就会android
6 rexsee:会html就会android36Kr.com
 
前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScriptGelis Wu
 
Asp.net mvc 基礎
Asp.net mvc 基礎Asp.net mvc 基礎
Asp.net mvc 基礎Gelis Wu
 
Webify 一键部署
Webify 一键部署Webify 一键部署
Webify 一键部署琦 胡
 

What's hot (20)

InspireDGT_2013 HTML5的可能發展與Web Worker
InspireDGT_2013 HTML5的可能發展與Web WorkerInspireDGT_2013 HTML5的可能發展與Web Worker
InspireDGT_2013 HTML5的可能發展與Web Worker
 
编写跨平台的手机软件
编写跨平台的手机软件编写跨平台的手机软件
编写跨平台的手机软件
 
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试
 
Take Advantage of UIWebView for iOS Native App Developers
Take Advantage of UIWebView for iOS Native App DevelopersTake Advantage of UIWebView for iOS Native App Developers
Take Advantage of UIWebView for iOS Native App Developers
 
第一次 Mobile App 就上手
第一次 Mobile App 就上手第一次 Mobile App 就上手
第一次 Mobile App 就上手
 
開放原始碼 Ch3.1 mobile - oss - oss行動領域-1 (ver1.0)
開放原始碼 Ch3.1  mobile - oss - oss行動領域-1 (ver1.0) 開放原始碼 Ch3.1  mobile - oss - oss行動領域-1 (ver1.0)
開放原始碼 Ch3.1 mobile - oss - oss行動領域-1 (ver1.0)
 
Koubei banquet 27
Koubei banquet 27Koubei banquet 27
Koubei banquet 27
 
Cef hybrid winforms application
Cef hybrid winforms applicationCef hybrid winforms application
Cef hybrid winforms application
 
Web 开发漫谈 —— 前端篇
Web 开发漫谈 —— 前端篇Web 开发漫谈 —— 前端篇
Web 开发漫谈 —— 前端篇
 
Pure C# Hybrid WinForm Application
Pure C# Hybrid WinForm ApplicationPure C# Hybrid WinForm Application
Pure C# Hybrid WinForm Application
 
使用 .NET Standard 開發跨平台應用程式
使用 .NET Standard 開發跨平台應用程式使用 .NET Standard 開發跨平台應用程式
使用 .NET Standard 開發跨平台應用程式
 
WoT Frotend 的設計與實作
WoT Frotend 的設計與實作WoT Frotend 的設計與實作
WoT Frotend 的設計與實作
 
[ICOS2013] Appcelerator Titanium簡介
[ICOS2013] Appcelerator Titanium簡介[ICOS2013] Appcelerator Titanium簡介
[ICOS2013] Appcelerator Titanium簡介
 
移动跨平台APP开发
移动跨平台APP开发移动跨平台APP开发
移动跨平台APP开发
 
Mobile web開發架構與入門
Mobile web開發架構與入門Mobile web開發架構與入門
Mobile web開發架構與入門
 
6 rexsee:会html就会android
6 rexsee:会html就会android6 rexsee:会html就会android
6 rexsee:会html就会android
 
前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript
 
Mobile Web 2.0
Mobile Web 2.0Mobile Web 2.0
Mobile Web 2.0
 
Asp.net mvc 基礎
Asp.net mvc 基礎Asp.net mvc 基礎
Asp.net mvc 基礎
 
Webify 一键部署
Webify 一键部署Webify 一键部署
Webify 一键部署
 

Similar to HTML5 生态系统和应用架构模型

Appcan平台介绍
Appcan平台介绍Appcan平台介绍
Appcan平台介绍36Kr.com
 
Universal windows apps 開發—運用 html 及 java script
Universal windows apps 開發—運用 html 及 java scriptUniversal windows apps 開發—運用 html 及 java script
Universal windows apps 開發—運用 html 及 java scriptIan Chen
 
一步一步开发Html5 mobile apps
一步一步开发Html5 mobile apps一步一步开发Html5 mobile apps
一步一步开发Html5 mobile appsAdam Lu
 
GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲
GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲
GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲Great Wall Club
 
Android快速发布&持续集成
Android快速发布&持续集成Android快速发布&持续集成
Android快速发布&持续集成whykill
 
行動與雲端科技在圖書館的應用
行動與雲端科技在圖書館的應用行動與雲端科技在圖書館的應用
行動與雲端科技在圖書館的應用皓仁 柯
 
Android 4-app
Android 4-appAndroid 4-app
Android 4-applydiafly
 
移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发fangdeng
 
PhoneGap Guide
PhoneGap GuidePhoneGap Guide
PhoneGap Guidecolorhook
 
移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发完颜 小卓
 
IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》easychen
 
使用最新 Edge 瀏覽器來進行開發​
使用最新 Edge 瀏覽器來進行開發​使用最新 Edge 瀏覽器來進行開發​
使用最新 Edge 瀏覽器來進行開發​Poy Chang
 
使用GoogleAppEngine建立个人信息中心
使用GoogleAppEngine建立个人信息中心使用GoogleAppEngine建立个人信息中心
使用GoogleAppEngine建立个人信息中心Du Yamin
 
[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務Drupal Taiwan
 
Web App or Native App
Web App or Native AppWeb App or Native App
Web App or Native AppYu Wei Shang
 
Appium手机自动化测试 testerhome_bqcon版本
Appium手机自动化测试 testerhome_bqcon版本Appium手机自动化测试 testerhome_bqcon版本
Appium手机自动化测试 testerhome_bqcon版本延胜 黄
 
App狂潮來襲!你做好準備了嗎?
App狂潮來襲!你做好準備了嗎?App狂潮來襲!你做好準備了嗎?
App狂潮來襲!你做好準備了嗎?Ryan Chung
 
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發Edward Kuo
 

Similar to HTML5 生态系统和应用架构模型 (20)

行動技術開發概論
行動技術開發概論行動技術開發概論
行動技術開發概論
 
Appcan平台介绍
Appcan平台介绍Appcan平台介绍
Appcan平台介绍
 
Universal windows apps 開發—運用 html 及 java script
Universal windows apps 開發—運用 html 及 java scriptUniversal windows apps 開發—運用 html 及 java script
Universal windows apps 開發—運用 html 及 java script
 
一步一步开发Html5 mobile apps
一步一步开发Html5 mobile apps一步一步开发Html5 mobile apps
一步一步开发Html5 mobile apps
 
GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲
GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲
GMIC 2012 - Baidu, Presentation by Mr Wang Jin, 百度副总裁王劲
 
Android快速发布&持续集成
Android快速发布&持续集成Android快速发布&持续集成
Android快速发布&持续集成
 
行動與雲端科技在圖書館的應用
行動與雲端科技在圖書館的應用行動與雲端科技在圖書館的應用
行動與雲端科技在圖書館的應用
 
Android 4-app
Android 4-appAndroid 4-app
Android 4-app
 
移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发
 
PhoneGap Guide
PhoneGap GuidePhoneGap Guide
PhoneGap Guide
 
移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发移动互联网时代的Mobile app设计和开发
移动互联网时代的Mobile app设计和开发
 
IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》
 
使用最新 Edge 瀏覽器來進行開發​
使用最新 Edge 瀏覽器來進行開發​使用最新 Edge 瀏覽器來進行開發​
使用最新 Edge 瀏覽器來進行開發​
 
使用GoogleAppEngine建立个人信息中心
使用GoogleAppEngine建立个人信息中心使用GoogleAppEngine建立个人信息中心
使用GoogleAppEngine建立个人信息中心
 
[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務
 
Web App or Native App
Web App or Native AppWeb App or Native App
Web App or Native App
 
Appium手机自动化测试 testerhome_bqcon版本
Appium手机自动化测试 testerhome_bqcon版本Appium手机自动化测试 testerhome_bqcon版本
Appium手机自动化测试 testerhome_bqcon版本
 
App狂潮來襲!你做好準備了嗎?
App狂潮來襲!你做好準備了嗎?App狂潮來襲!你做好準備了嗎?
App狂潮來襲!你做好準備了嗎?
 
Html5
Html5Html5
Html5
 
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
[2018 .NET Conf].NET Core與Azure DevOps應用於企業開發
 

More from Tom Fan

PhoneGap 通信原理和插件系统
PhoneGap 通信原理和插件系统PhoneGap 通信原理和插件系统
PhoneGap 通信原理和插件系统Tom Fan
 
HTML5 Web workers
HTML5 Web workersHTML5 Web workers
HTML5 Web workersTom Fan
 
Web sockets
Web socketsWeb sockets
Web socketsTom Fan
 
Semantics
SemanticsSemantics
SemanticsTom Fan
 
Multimedia
MultimediaMultimedia
MultimediaTom Fan
 
Intro to-html5
Intro to-html5Intro to-html5
Intro to-html5Tom Fan
 
Html5 history
Html5 historyHtml5 history
Html5 historyTom Fan
 
Geolocation
GeolocationGeolocation
GeolocationTom Fan
 
File api
File apiFile api
File apiTom Fan
 
Deviceaccess
DeviceaccessDeviceaccess
DeviceaccessTom Fan
 
Webstorage
WebstorageWebstorage
WebstorageTom Fan
 
Html5 最重要的部分
Html5 最重要的部分Html5 最重要的部分
Html5 最重要的部分Tom Fan
 
AT&T 的 HTML5 策略和应用现状
AT&T 的 HTML5 策略和应用现状AT&T 的 HTML5 策略和应用现状
AT&T 的 HTML5 策略和应用现状Tom Fan
 
PhoneGap 2.0 开发
PhoneGap 2.0 开发PhoneGap 2.0 开发
PhoneGap 2.0 开发Tom Fan
 
Android 平台 HTML5 应用开发
Android 平台 HTML5 应用开发Android 平台 HTML5 应用开发
Android 平台 HTML5 应用开发Tom Fan
 
18 NSUserDefaults
18 NSUserDefaults18 NSUserDefaults
18 NSUserDefaultsTom Fan
 
17 Localization
17 Localization17 Localization
17 LocalizationTom Fan
 
16 CoreData
16 CoreData16 CoreData
16 CoreDataTom Fan
 

More from Tom Fan (20)

PhoneGap 通信原理和插件系统
PhoneGap 通信原理和插件系统PhoneGap 通信原理和插件系统
PhoneGap 通信原理和插件系统
 
HTML5 Web workers
HTML5 Web workersHTML5 Web workers
HTML5 Web workers
 
Web sockets
Web socketsWeb sockets
Web sockets
 
Storage
StorageStorage
Storage
 
Semantics
SemanticsSemantics
Semantics
 
Multimedia
MultimediaMultimedia
Multimedia
 
Intro to-html5
Intro to-html5Intro to-html5
Intro to-html5
 
Html5 history
Html5 historyHtml5 history
Html5 history
 
Geolocation
GeolocationGeolocation
Geolocation
 
File api
File apiFile api
File api
 
Deviceaccess
DeviceaccessDeviceaccess
Deviceaccess
 
Css3
Css3Css3
Css3
 
Webstorage
WebstorageWebstorage
Webstorage
 
Html5 最重要的部分
Html5 最重要的部分Html5 最重要的部分
Html5 最重要的部分
 
AT&T 的 HTML5 策略和应用现状
AT&T 的 HTML5 策略和应用现状AT&T 的 HTML5 策略和应用现状
AT&T 的 HTML5 策略和应用现状
 
PhoneGap 2.0 开发
PhoneGap 2.0 开发PhoneGap 2.0 开发
PhoneGap 2.0 开发
 
Android 平台 HTML5 应用开发
Android 平台 HTML5 应用开发Android 平台 HTML5 应用开发
Android 平台 HTML5 应用开发
 
18 NSUserDefaults
18 NSUserDefaults18 NSUserDefaults
18 NSUserDefaults
 
17 Localization
17 Localization17 Localization
17 Localization
 
16 CoreData
16 CoreData16 CoreData
16 CoreData
 

HTML5 生态系统和应用架构模型