这是否是开发移动应用程序的常见方式?或者采用混合方法会出现问题?原生应用程序和混合应用程序之间有哪些优势(或相反)?
谢谢 Kamal
混合HTML 5/本地产品的原因:如果我有一个应用程序需要至少在iOS/Android上运行,不是完全自定义的体验,并且需要在应用商店中作为应用程序存在,那么混合方法可能是最好的选择,广告商对购买应用程序很感兴趣,而移动Web几乎没有引起他们的关注。与仅使用HTML 5相比,建立一个移动网站要便宜得多,然后雇用一名本地开发人员为您快速构建iOS/Android/Windows的应用程序包装器即可。除此之外,您只需调整HTML部分、创建一个新实例,就可以获得一个移动网站额外奖励!
这里面的一个危险是,如果HTML 5不是响应式的或锁定在320x480和1028x768上,当不同大小的平板电脑推出时,您将不得不制作大量的站点示例并检测用户代理,这非常耗时且难以维护。当出现这种情况时,通常会重建为响应式站点,这本来就应该是第一步。
本地技术原因:我希望该应用程序能够在一个平台上以我想要的方式运行,我需要访问专有和复杂的设备功能。该应用程序需要执行非常复杂的操作,使用大量内存,并且具有许多自定义UI控制器。(一些类别包括:3D游戏、像CNN iReport这样的重型UGC应用程序以及许多实用程序)
本地产品原因:请记住,作为一个产品人员,您处理预算时几乎总是有限的。当我说本地仅适用于3D游戏时,我完全理解您也可以将其用于更简单的应用程序,但它成本更高、不太可扩展,而在公司的小预算中处理时通常没有意义。如果您擅长编写应用程序,请随便选择本地语言,因为成本只是时间。话虽如此,以下是我使用本地应用程序的主要原因:
本地应用程序赚更多的钱,很多钱。无论您是大型出版商还是小型开发人员提供应用内购买,苹果的生态系统都能在许多方面为您效力。作为大型出版商,广告商会乐意为您创建可口可乐VH1音乐奖应用程序并支付开发费用(在大多数情况下!)如果您仅向他们提供定制移动网站上的几百万印象,他们可能甚至不会回应(混合方法通常是解决此问题的聪明桥梁)。作为小型开发人员,苹果将为您处理付款,教会所有用户如何轻松地在应用程序中购买物品(这就是您进入并出售价值10,000点的10美元的地方),是的,他们会收取费用,但是您已经有了分销,并且可以在发布产品后很少努力获得支票。
这个应用程序需要像梦一样完美地呈现每一个像素的细节和动画。也许这是一个杂志类应用,他们不会容忍任何页面卡顿,因为他们认为应用程序出错了,他们的设计师会过度苛刻地追求每一个失位的像素。这适用于大多数旨在控制用户体验各个方面的高端品牌项目。这并不是件坏事,但很少有人做得好。
这个应用程序需要处理大量来自用户的内容,并处理许多专有的CMS系统,或者说这个应用程序本质上是某种平台。
这个应用程序是一种定制体验,它需要使用手机的处理器执行核心功能,并且需要接入操作系统生态系统,例如,许多实用工具(例如Android上的应用程序关闭器)。
你不关心移动网页或者除了你正在开发的平台之外的其他平台。你的一部分用户可能无法访问你的应用程序,你对此感到舒适。
简而言之,这三点都非常有用,当你想要使用它们时,需要从技术、产品、业务和设计的角度进行仔细的思考。