《PhoneGap精粹:构建跨平台的移动App》——1.7节PhoneGap的局限性

简介:

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

1.7 PhoneGap的局限性
PhoneGap精粹:构建跨平台的移动App
使用PhoneGap创建移动应用程序还是有一些局限性的。作为一个开源项目,PhoneGap能否适时地发布新功能以及修复bug,这些都取决于PhoneGap项目的志愿者。

即使PhoneGap的发展规划做得很好,但也只有当PhoneGap有足够资源(使用不同平台的相关技能)时才会按规划的那样发展。那些流行的平台(比如Android和iPhone)上的功能发布和修复bug会更受关注,然而那些非主流的平台就不会那么受关注了。举个例子,我们看一下图1-5,该图显示的是PhoneGap Device API的文档。通过这个API我们让PhoneGap应用程序获取设备的相关信息,更多详细内容我们会在第16章中描述。开发人员通常会利用这个功能,根据设备的能力启用或者禁用某些应用程序功能。


5536d6460a21d7d2ee3b12fb3c86c35d43782ff1

如图所示,尽管PhoneGap支持很多移动设备,但这个用来获取设备名字的简单API(device. name)只支持三个平台。作为一名使用PhoneGap的开发人员,你需要不断评估某些特殊API,是否会造成某些用户无法使用你的应用程序,并据此调整你的应用程序的功能。

话虽这么说,但IBM的目的之一就是要促成一个更统一的跨平台API。在这个特例中,其实是文档忽略了。属性device.name在所有PhoneGap支持的平台中都是可以使用的。只是某些人会为了反映出当前API支持的设备而更新文档。不同平台间实现的差异会被列举在PhoneGap文档中的Quirks部分。

和大多数开源程序一样,有许多主题并没有相应的文档或很少。虽然API文档做得很好并且还有源码示例(即便在商业软件中这也不常见),但是仍有许多与PhoneGap相关的内容没有记录进去或者没有详细记录。当你访问PhoneGap官方网站时,你可以很快找到API文档,但如果你要找在某些平台上的快速入门的话这就有些难度了。上面几乎没有关于如何使用PhoneGap或如何使用PhoneGap做跨平台开发的内容。

你很幸运,因为这本书会填补这些空白。

相关文章
|
5月前
|
小程序 安全 JavaScript
构建即时通讯APP内的小程序生态体系:从架构设计到技术实现-优雅草卓伊凡
构建即时通讯APP内的小程序生态体系:从架构设计到技术实现-优雅草卓伊凡
329 1
构建即时通讯APP内的小程序生态体系:从架构设计到技术实现-优雅草卓伊凡
|
5月前
|
Java Shell Maven
【Azure Container App】构建Java应用镜像时候遇无法编译错误:ERROR [build 10/10] RUN ./mvnw.cmd dependency:go-offline -B -Dproduction package
在部署Java应用到Azure Container App时,构建镜像过程中出现错误:“./mvnw.cmd: No such file or directory”。尽管项目根目录包含mvnw和mvnw.cmd文件,但依然报错。问题出现在Dockerfile构建阶段执行`./mvnw dependency:go-offline`命令时,系统提示找不到可执行文件。经过排查,确认是mvnw文件内容异常所致。最终通过重新生成mvnw文件解决该问题,镜像成功构建。
179 1
|
7月前
|
人工智能 自然语言处理 前端开发
从0到上线,CodeBuddy 如何帮我快速构建旅游 App?
本文详细介绍了AI代码助手CodeBuddy的功能与使用方法,并通过实战演示其在前端开发中的应用。文章首先讲解了CodeBuddy的安装步骤,以VS Code为例,引导用户快速上手。随后,通过构建一个旅游APP页面的实例,展示了CodeBuddy在生成代码、调整样式、修复问题等方面的能力。实战中涉及Craft模式交互、提示词优化、元素布局调整等内容,验证了插件的高效性与灵活性。尽管过程中遇到一些小问题,但整体效果令人满意。最后,文章鼓励开发者进一步探索CodeBuddy的潜力,为开发工作带来更多便利。
557 0
|
8月前
|
人工智能 开发框架 小程序
【一步步开发AI运动APP】二、跨平台APP AI运动识别方案介绍
本系列博文旨在帮助开发者从【AI运动小程序】迈向性能更优的【AI运动APP】开发。通过「云智AI运动识别」uni-app版插件,提供本地原生极速识别、精准姿态检测及运动计时计数功能,支持健身系统、线上赛事、学生体测、康复锻炼等多场景应用。插件无需云端依赖,一次付费永久使用,成本低且扩展性强。同时兼容uni-app与uni-app x框架,适合不同技术背景的开发者快速上手,助力抢占AI辅助运动市场。下篇将介绍插件引入,敬请期待!
|
10月前
|
缓存
flutter3-wetrip跨平台自研仿携程app预约酒店系统模板
基于最新跨平台框架flutter3.x+dart3+getx+flutter_datepicker纯手写实战的一款仿去哪儿/携程旅游酒店预约客房app系统。
396 7
|
监控 安全 Apache
构建安全的URL重定向策略:确保从Web到App平滑过渡的最佳实践
【10月更文挑战第2天】URL重定向是Web开发中常见的操作,它允许服务器根据请求的URL将用户重定向到另一个URL。然而,如果重定向过程没有得到妥善处理,可能会导致安全漏洞,如开放重定向攻击。因此,确保重定向过程的安全性至关重要。
577 0
|
Android开发 iOS开发 C#
Xamarin:用C#打造跨平台移动应用的终极利器——从零开始构建你的第一个iOS与Android通用App,体验前所未有的高效与便捷开发之旅
【8月更文挑战第31天】Xamarin 是一个强大的框架,允许开发者使用单一的 C# 代码库构建高性能的原生移动应用,支持 iOS、Android 和 Windows 平台。作为微软的一部分,Xamarin 充分利用了 .NET 框架的强大功能,提供了丰富的 API 和工具集,简化了跨平台移动应用开发。本文通过一个简单的示例应用介绍了如何使用 Xamarin.Forms 快速创建跨平台应用,包括设置开发环境、定义用户界面和实现按钮点击事件处理逻辑。这个示例展示了 Xamarin.Forms 的基本功能,帮助开发者提高开发效率并实现一致的用户体验。
483 0
|
移动开发 Android开发 iOS开发
用phoneGap创建App
安装phoneGap或者cordova npm install -g phonegap npm install -g cordova 如果安装不成功,可以尝试用以下命令 npm config set registry http://registry.
1774 0
|
2月前
|
缓存 移动开发 JavaScript
如何优化UniApp开发的App的启动速度?
如何优化UniApp开发的App的启动速度?
473 139