《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收购。

相关文章
|
9天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
43 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
7天前
|
开发框架 监控 .NET
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
|
2月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
2月前
|
开发框架 JavaScript 前端开发
uni-app x 跨平台开发框架
uni-app x 是一个强大的跨平台开发框架 uni-app x 是一个庞大的工程,它包括uts语言、uvue渲染引擎、uni的组件和API、以及扩展机制。
85 1
|
3月前
|
安全 JavaScript 应用服务中间件
【Azure Function App】如何修改Azure函数应用的默认页面呢?
【Azure Function App】如何修改Azure函数应用的默认页面呢?
|
3月前
【Azure Logic App】消费型逻辑应用在消费Service Bus时遇见消息并发速度慢,消息积压
【Azure Logic App】消费型逻辑应用在消费Service Bus时遇见消息并发速度慢,消息积压
|
3月前
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
|
3月前
|
存储 Linux 开发工具
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
|
3月前
|
域名解析 网络协议 网络安全
【App Service】遇见本地访问Azure App Service应用慢或者是调用第三方接口慢的调试小工具
【App Service】遇见本地访问Azure App Service应用慢或者是调用第三方接口慢的调试小工具
|
3月前
|
存储 SQL JSON
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据

热门文章

最新文章