Background

Maybe you have decided to get an app built. You will not build it yourself (obviously!) so you have done your homework properly, went out and got a few quotes (that’s more than 2, please) to establish the cost of getting this built. The only problem is the total for each of them varies between 15 and 90K. How to tell them apart, beside the Kia vs BWM price tag?

If you are targeting a mobile market the first thing you must understand is the various types of “apps” that can be built. Same as you understand the difference between a car and a UTE when you buy a four-wheeler. To make your life easier, the broad advantages and disadvantages to each type of apps, are listed in the table below.

In case you didn’t know also, “App” is short for Application. But of course you knew that!

What is a “native” app

Specimen number 1
The EmpireOne Facebook page, viewed from two “different apps” (web and native) on the same mobile device.

A native application is designed and built to run in a specific environment. In the mobile world, there are many environments, namely iOS, Android, Windows8 Mobile and Blackberry being the most popular ones. Native apps require to be manually installed on the device also, from Apple’s App Store, Google’s Play Store, or others.

To remember: requires one app built per target environment.

Because the app was written for a specific environment, it will not run in a different one. This is why iPhone apps don’t run on an Android phones, and vice versa. So one application per environment has to be built.

What is a “web” app

The Web application is also designed and built for a web environment, which means it’s accessed via any web browser. Given all smartphones and tablets have a web browser pre-installed, all web apps are automatically compatible with them, without having to be installed first.

This makes a web app not specific to iPhones or Android. In other words, it’s built once and runs everywhere.

To remember: uses web technologies to build a single application for all environments.

So in essence a Web app is nothing more than a website which is designed for mobile devices, usually with functionality which is more specific to mobile devices.

What is a “responsive” web app

Responsive web app
Responsive web design, illustrating the same app over multiple devices, computer, tablet and phone. see demo

Responsive websites use special code (known as CSS media queries) to adapt the layout of a website to various device sizes. This allows for the same application to look differently on a mobile phone in landscape mode, a tablet in portrait, or on a desktop computer.

To remember: uses web technologies, also, to build an app which runs equally on mobile, tables and desktops.

Same as with web applications, a responsive web app uses nothing but a web-browser to run, making a single application to be compatible with all smart devices and without having to be installed first.

Try this demo and resize your browser. See? This is responsive!

Telling them apart

Specimen number 2
The EmpireOne Facebook page, with feedback alert, viewed from two “different apps” (web and native) on the same mobile device.

Telling the difference between applications using web technologies (Web apps, or Responsive apps) versus those that don’t (Native apps) is not always easy to the untrained eye! The primary difference is how seamlessly the application integrates with the environment.

Native application are started from the phone itself, whereas web technologies require you to start a browser first. A native app also feels, by definition, more native! Think of when you pick a date, when you see an alert box, or have to change application settings – all environments are slightly different in that respect (see specimen 2).

Still all gibberish? Lucky you, the following section and table should help, hopefully!

The non-technical talk

From a business point of view, it really boils down to two things; features and money. It is important to understand what your are getting built because the price tag will vary significantly and the possibilities for your app could be limited if the wrong platform is picked. All good developers will discuss this with you prior to giving you an estimate or at the very least, before starting any development.

If they don’t, or if you still don’t understand what it means after they did, the following table should help sussing out the differences.

Native, Web and Responsive apps compared – although responsive web design is
more of an extension of a Web app and not usually compared with Native apps.
Pros Cons
Native Apps provide a better user experience due to how they integrate more seamlessly with the device. They are usually used for games, application with access to phone settings or sensors, or needing to run without a data connection. However they are environment-specific and usually more expensive to develop. See how much apps cost
  • Better user experience
  • Access to all phone hardware (NFC, sms, contacts, notifications, etc)
  • Discoverability via the ecosystem (AppStore, GooglePlay, etc)
  • Apple will keep 30% of all revenues (not so much Google)
  • In most cases more expensive mobile strategy
  • Stores (namely Apple’s) will try to dictate what you can and cannot do
Web Apps provide a good (not great) but consistent user experience across all platforms. They are usually used when cost is a consideration and a tightly integrated user experience is not required as much. They will run in all environments and in all devices (tablets vs phones, normal and high resolution screens – eg. retina) out of the box. However they have some, but limited access to device data and hardware.
  • Built once, runs everywhere
  • Updates are deployed once and published everywhere, no update or review process
  • Can be retrofitted to desktop website via responsive web (below)
  • Monetisation requires paywall to be setup (no pay-per-download)
  • Limited access to device features (eg. geolocation)
  • Doesn’t leverage the app ecosystem to be found (organic growth via search engines, not via Store)
Responsive Apps are very well suited for large content-driven websites, where functionality is accessed via desktop and mobile devices. They tend to have a less “native” look, but nonetheless well suited to all environments. Predominantly used for content-driven or transactional apps. Same as Web Apps, they have limited access to device data and hardware.
(on top of Web App pros)

  • a single application needs building and maintenance for all platforms and devices
  • integrates with enterprise security more easily
(also, on top of Web Apps cons)

  • initially more costly than a simple Web App (tho’ in the end, has a better ROI)
  • requires an active data connection

In the end…

If you are investing a serious amount of money into a mobile app (native or web), it is imperative to have a digital partner you can trust to help you make the right decision. Always keep the following in mind, and in doubt, contact us or comment on this article; we’ll help you with your decision.

  1. if you cannot do without using the phone hardware like accelerometer, flash or NFC, chances are you will need a native app.
  2. if you are planning on releasing many changes often and quickly, anything web based could save you thousands.
  3. always remember your audience and if all they require is access to your site from a mobile device, you don’t need a mobile app!

As you now understand, native apps and web technologies both have their advantages. In the recent years, the concept of Hybrid app has emerged providing with best-of-both-worlds approach. Make sure you ask your digital partner on this!

Understanding apps: mobile, native or responsive的更多相关文章

  1. Xamarin vs React Native vs Ionic vs NativeScript: Cross-platform Mobile Frameworks Comparison

    CONTENTS Reading time: 14 minutes Cross-platform mobile development has long been a viable alternati ...

  2. [转] Understanding Twitter Bootstrap 3

    Bootstrap is a popular, open source framework. Complete with pre-built components it allows web desi ...

  3. Top 22 Free Responsive HTML5 Admin & Dashboard Templates 2018

    Top 22 Free Responsive HTML5 Admin & Dashboard Templates 2018 May 18, 2018 Alex Ivanovs Website ...

  4. Wait… What Happens When my React Native Application Starts? — An In-depth Look Inside React Native

    Discover how React Native functions internally, and what it does for you without you knowing it. Dis ...

  5. 所有selenium相关的库

    通过爬虫 获取 官方文档库 如果想获取 相应的库 修改对应配置即可 代码如下 from urllib.parse import urljoin import requests from lxml im ...

  6. 分享20款移动开发中很有用的 jQuery 插件

    今天,很显然每个网站都需要有一个移动优化的界面以提高移动用户的使用体验.在开发任何移动项目时,要尽可能保持每一种资源尺寸都尽可能的小,以给最终用户提供一个好的体验是非常重要的.在这篇文章中我们已经编制 ...

  7. 分享最新15个加速 Web 开发的框架和工具

    我们为开发人员挑选了15个最新的  Web 开发框架,你肯定尝试一下这些新鲜的框架,有的可能略微复杂,有的提供了很多的配置选项,也有一些窗口小部件和界面交互的选择.他们将帮助你创建更优秀的网站,提供给 ...

  8. 分享最新15个加速 Web 开发的框架和工具(梦想天空)

    我们为开发人员挑选了15个最新的  Web 开发框架,你肯定尝试一下这些新鲜的框架,有的可能略微复杂,有的提供了很多的配置选项,也有一些窗口小部件和界面交互的选择.他们将帮助你创建更优秀的网站,提供给 ...

  9. 谷歌Web中国开发手册:1目的&夹

    原版的:https://developers.google.com/web/fundamentals/getting-started/your-first-multi-screen-site/ 该网站 ...

随机推荐

  1. Quartz定时任务学习(二)web应用/Quartz定时任务学习(三)属性文件和jar

    web中使用Quartz 1.首先在web.xml文件中加入 如下内容(根据自己情况设定) 在web.xml中添加QuartzInitializerServlet,Quartz为能够在web应用中使用 ...

  2. InnoSetup能够实现“安装细节描述”界面吗?

    QUOTE( Example_Test.iss ) // 脚本使用了 增强版脚本编辑器 build 091218:Beta2// 编译器版本为 5.3.6.ee1 [Setup]AppName=My ...

  3. VS2010链接TFS

    VS2010链接TFS源代码管理器 1.打开VS2010开发工具. 2.菜单视图===>>团队资源管理器 3.点击链接到团队项目 4.点击服务器 5.点击添加 6.输入TFS服务配置信息 ...

  4. 通过修改host文件来允许和禁止主机的访问

    通过修改host文件来允许和禁止主机的访问 修改/etc/hosts.deny,加入"sshd:ALL" 修改/etc/hosts.allow,加入"sshd:192.1 ...

  5. I2S (Inter—IC Sound) 总线

    I2S I2S(Inter—IC Sound)总线, 又称 集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专责于音频设备之间的数据传输,广泛应用于各种多 ...

  6. POI 设置EXCEL单元格格式(日期数字文本等)

    HSSFCellStyle style0 = workbook2003.createCellStyle(); style0.setBorderBottom(HSSFCellStyle.BORDER_T ...

  7. 鸡和蛋的OO设计

    一个题目:用类图表示出鸡和蛋的关系. 第一版: 第二版: 一个鸡可以下N个蛋,一个蛋可以浮出0或者1个鸡. 问题是公鸡不会下单,第三版:

  8. StringBuffer&StringBuilder区别详解

    序言 StringBuffer与StringBuilder是java.lang包下被大家熟知的两个类.其异同为:一.长度都是可扩充的:二.StringBuffer是线程安全的,StringBuilde ...

  9. Android 数据通信

    一. Http/Net1. http 通讯协议和android中相关API介绍 2.发送http请求实例[GET,POST]论坛参考文献:http://www.eoeandroid.com/viewt ...

  10. Scala 深入浅出实战经典 第81讲:Scala中List的构造是的类型约束逆变、协变、下界详解

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-97讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...