最近,我被问到本机Android应用程序或iPhone应用程序相对于基于移动浏览器的应用程序有什么好处。我认为Android应用和移动浏览器应用之间的相似性很接近,而且功能差距很小。就个人而言,我是亲Android。但如果面对这个问题(以及随之而来的争论),可以说真的是这样吗?
智能手机应用程序架构的定义属性是什么,可以向非专业用户解释,以区分Android / iPhone和基于移动浏览器的Web应用程序作为首选平台?
答案 0 :(得分:4)
Web应用可能适用于更多设备,但原生应用可以充分利用原生ui隐喻。本机应用程序也可以在设备脱机或临时脱机时工作。用户喜欢即时反馈时,网络应用可能会滞后。原生应用程序可以更充分地与相机等设备进行交互。原生应用程序也可以在自己的上下文中使用自己的图标而不是网页。
答案 1 :(得分:3)
如果您希望通过应用销售获得收入,则可以更轻松地浏览已经存在付费墙的应用市场/商店,而不是尝试让用户付费一个网络应用程序。此外,像游戏这样的实时图形密集型应用程序目前仍然更适合本机应用程序。
另一方面,如果它在Web上,则更容易制作跨平台应用程序。通过适合移动设备的Web版本将现有的Web应用程序迁移到移动平台也更容易,而不是通过制作一堆不同的本机应用程序。将现有的移动应用程序移植到Web也是如此。
话虽如此,如果用户使用原生元素而不是超链接,那么界面对用户来说会更正常。我认为我们都同意在小型移动设备上(大多数情况下)浏览网页的乐趣仍然存在疑问。
答案 2 :(得分:1)
如果您不依赖应用销售收入,我非常喜欢将移动网络用于应用。
目前正在进行大量开发(请参阅jQuery Mobile),以便开发人员能够快速轻松地编写模仿iOS / Android等常用UI的原生感移动Web应用程序。此外,像PhoneGap这样的框架允许Web应用程序使用本地API,例如地理位置和相机。
在大多数移动操作系统上,您可以将移动网络应用程序添加为本机图标,因此我不认为这是一个垮台。此外,还可以在移动网络上使用HTML5本地存储和其他类似解决方案进行离线工作。
总的来说,我认为移动网络应用程序的最大好处是不必编写应用程序的多个本机版本。这需要大量的时间/资源,除非你依赖于应用程序的销售或者写一个激烈的游戏,否则我认为没有什么好处,正如克里斯提到的那样。
答案 3 :(得分:1)
目前很多事情都不能很好地完成或根本不适用于网络应用程序,通常是涉及访问硬件IO的应用程序,以及(接近)实时处理音频,图形或大量数据。
这些类型的应用程序可能包括以下内容:听障人士的音频处理,音乐可视化器,DJ应用程序,表演音乐合成器和吉他效果,虚拟现实类型相机视频处理和叠加,高帧率3D动作游戏等等。
对于类似的任务,与网络应用相比,原生应用通常更容易使用电池。