《PhoneGap精粹:构建跨平台的移动App》——1.11节混合应用程序框架

简介:

本节书摘来自异步社区《PhoneGap精粹:构建跨平台的移动App》一书中的第1章,第1.11节混合应用程序框架,作者 【美】John M. Wargo,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.11 混合应用程序框架
PhoneGap精粹:构建跨平台的移动App
使用PhoneGap制作混合应用程序在整个市场里并不是唯一的。虽然PhoneGap引领了潮流,但市场上还有一些使用类似方法的其他产品。在下面的部分中我们将说明这点。另外,能用来制作混合移动应用程序的产品不止下面的这些。

1.11.1 Appcelerator Titanium
Titanium也是一个开源的混合应用程序框架。正当PhoneGap获得移动开发人员推崇的时候,Appcele- rator(www.appcelerator.com)发布了Titanium。Titanium使用起来和PhoneGap很类似:开发人员使用web技术构建移动应用程序。但是如果使用Titanium的话,整个应用程序完全是用JavaScript编写的。运行在移动设备上的原生应用程序只是一个执行JavaScript代码的容器,如图1-6所示。应用程序的用户界面和应用程序逻辑都是用JavaScript编写的。


f958bbafb35409b9db09141d103a7cd44c09f1f1

1.11.2 AT&T WorkBench和Antenna Volt
这两个产品通过提供多个可管理的容器,来运行多个HTML5应用程序。它们的实现方式是,由远程的管理服务器来控制提供一个原生的应用程序容器。当用户第一次运行应用程序时,他们必须通过后端服务器进行验证,同时会将提供给用户使用的web应用程序下载到容器中。虽然用户在他们的移动设备上只能看到一个应用程序图标,但是当用户启动该程序时,真正可用的应用程序列表就会显示在屏幕上,同时用户可以很方便地在这些应用程序间切换。

虽然这种解决方案主要是为企业客户设计的,但是普通客户也有很多用的。

像Worklight、WorkBench和Volt(这里我们使用简称),都是企业级的移动应用程序平台,这些平台都有额外的服务器组件(管理功能、报表功能以及连接后端数据源的功能)。

你可以在www.wireless.att.com/businesscenter/built-for-business/AMEAP.jsp和www.antenna- software.com/resource-center/volt上找到关于这些解决方案的其他信息。

1.11.3 BlackBerry WebWorks
Reasearch In Motion(RIM)开发者社区曾抱怨过,在BlackBerry平台上(用Java)构建原生移动应用程序太难了。因此,RIM推出了BlackBerry WebWorks平台。WebWorks(起初叫做BlackBerry Widgets,我倒觉得这个名字更好)是一个用于构建BlackBerry应用程序的混合应用程序框架。开发人员通过HTML、CSS和JavaScript构建移动应用程序,同时使用RIM提供的工具将web应用程序打包到一个原生的Java应用程序容器中,就像PhoneGap那样。

当你为BlackBerry构建PhoneGap应用程序时,你实际上是使用WebWorks的SDK将web应用程序打包到一个BlackBerry原生应用程序中。本质上来说,背后更深层的技术细节是:一个Black- Berry的PhoneGap应用程序只是一个使用了PhoneGap JavaScript库的BlackBerry WebWorks应用程序。

注意:
如果你希望更多地学习BlackBerry开发,你可以参看《BlackBerry® Development Fundamentals》(www.bbdevfundamentals.com),该书是由鄙人写的。不幸的是,该书发布的时候,BlackBerry WebWorks工具还只是beta版,所以上面的内容书中并没有涉及。

1.11.4 Strobe
Strobe(www.strobecorp.com)是一个移动应用程序交付网络,它使用PhoneGap Build(在第9章中详述)来打包那些使用Strobe框架构建的原生应用程序。你可以根据你的开发需求来选择使用Strobe的免费测试版或付费版本。目前该解决方案还处于内测阶段。

1.11.5 Tiggr
Tiggr(www.gotiggr.com)是一个基于web的IDE,主要用于构建移动应用程序。它包含一个可视化编辑器和jQuery Mobile界面组件(可以直接拖到web应用程序上)。你可以使用Tiggr和PhoneGap一起构建移动应用程序。目前Tiggr Mobile Apps Builder提供了15天试用版,但之后每个月就要花费45美元了。

1.11.6 Worklight
Worklight(www.worklight.com)是一个基于PhoneGap的商业移动应用程序平台。对于构建Worklight应用程序,Worklight提供了专属的基于Eclipse的IDE。此外,为了连通性还提供了特殊的服务器结构,这么做是为了可以提供管理功能、报表功能和应用程序数据,同时为移动应用优化了到后端或外部应用程序的连接。Worklight应用程序只是一个带有由Worklight平台提供的附加功能的PhoneGap应用程序,这些附加功能通过一些其他的JavaScript库实现。在2012年初,Worklight已经被IBM收购。

相关文章
|
14天前
|
Java Android开发
Rockchip系列之CAN APP测试应用实现(4)
Rockchip系列之CAN APP测试应用实现(4)
23 1
|
2月前
|
监控 安全 数据可视化
【教程】为什么要为 App 应用加固 ?如何为 App 应用加固 ?
【教程】为什么要为 App 应用加固 ?如何为 App 应用加固 ?
|
3月前
|
iOS开发 开发者
苹果iOS App Store上架操作流程详解:从开发者账号到应用发布
很多开发者在开发完iOS APP、进行内测后,下一步就面临上架App Store,不过也有很多同学对APP上架App Store的流程不太了解,下面我们来说一下iOS APP上架App Store的具体流程,如有未涉及到的部分,大家可以及时咨询,共同探讨。
|
3月前
|
存储 iOS开发 开发者
如何在上架App之前设置证书并上传应用
在上架App之前想要进行真机测试的同学,请查看《iOS- 最全的真机测试教程》,里面包含如何让多台电脑同时上架App和真机调试。
|
3月前
|
安全 开发工具 数据安全/隐私保护
如何将应用程序发布到 App Store
如何将应用程序发布到 App Store
|
3月前
|
机器学习/深度学习 算法 数据可视化
基于Google Earth Engine云平台构建的多源遥感数据森林地上生物量AGB估算模型含生物量模型应用APP
基于Google Earth Engine云平台构建的多源遥感数据森林地上生物量AGB估算模型含生物量模型应用APP
107 0
|
9天前
|
搜索推荐 前端开发 JavaScript
【专栏】从网页到应用:简易教程教你如何在线生成 App
【4月更文挑战第27天】本文介绍了将网页转换为移动应用的在线生成App过程,包括原理(封装网页内容,添加移动特性)、优势(便捷高效,节省成本,快速上线)以及具体步骤(选择工具,准备内容,配置选项,生成测试,发布推广)。同时,注意版权、兼容性和用户体验问题。通过案例分析和实践经验分享,帮助读者深入了解如何通过在线工具实现App梦想,强调了网页优化、用户界面设计和个性化定制的重要性。
|
9天前
|
开发框架 前端开发 Android开发
专刊:从网页到应用:探索在线生成 App 的技术方法
【4月更文挑战第27天】在数字化时代,移动App变得不可或缺,而在线生成App的技术正逐渐兴起,为开发者提供快捷创建移动应用的途径。本文探讨了网页到App的转变过程,介绍了WebView嵌入、混合式开发框架和云端打包技术等方法,以及在线生成App的步骤、优势和挑战。虽然存在性能和功能限制,但随着技术进步,未来在线生成App将有更多可能性,为移动应用开发带来便利。
|
6天前
|
缓存 移动开发 前端开发
【专栏:HTML与CSS前端技术趋势篇】HTML与CSS在PWA(Progressive Web Apps)中的应用
【4月更文挑战第30天】PWA(Progressive Web Apps)结合现代Web技术,提供接近原生应用的体验。HTML在PWA中构建页面结构和内容,响应式设计、语义化标签、Manifest文件和离线页面的创建都离不开HTML。CSS则用于定制主题样式、实现动画效果、响应式布局和管理字体图标。两者协同工作,保证PWA在不同设备和网络环境下的快速、可靠和一致性体验。随着前端技术进步,HTML与CSS在PWA中的应用将更广泛。
|
6天前
|
前端开发 Android开发 开发者
【Flutter前端技术开发专栏】Flutter中的混合应用(Hybrid Apps)开发
【4月更文挑战第30天】本文探讨了使用Flutter开发混合应用的方法。混合应用结合Web技术和原生容器,提供快速开发和低成本维护。Flutter,一款现代前端框架,以其插件系统和高性能渲染引擎支持混合应用开发。通过创建Flutter项目、添加平台代码、使用WebView、处理平台间通信以及发布应用,开发者可构建跨平台混合应用。虽然混合应用有性能和用户体验的局限,但Flutter的跨平台兼容性和丰富的插件生态降低了开发成本。开发者应根据项目需求权衡选择。
【Flutter前端技术开发专栏】Flutter中的混合应用(Hybrid Apps)开发