broad functionalities due to using the capabilities of the underlying device;
fast and responsive software performance;
push notifications;
a UI that better matches with user experiences of the OS; and
quality assurance though ratings in application stores.
Disadvantages of native applications include:
multiple code bases because each device has its own version of the app;
the cost for additional developers to build and manage a code base for each platform; and
time spent on multiple builds for separate platforms in each feature update.
Native vs. web apps
A web app is an application that the user does not download and instead accesses via a web browser over a network. Example web browsers include Google Chrome, Safari and Mozilla Firefox. Web apps provide functionality from bank account access to YouTube video viewing via, for example, Safari on an iPhone. progressive web apps vs native apps
While native apps are written to the specific device, a majority of web applications can be written in JavaScript, CSS and the standard version of HTML for universal use across various browsers. Web apps can use a single code base because they are not designed around a specific device. Web apps are fast and simple to build, but are not as versatile and quick as native apps.
Native vs. hybrid apps
Hybrid applications are a combination of native and web apps. The inner workings of a hybrid application are similar to a web app, but it installs like a native app. Hybrid applications have access to internal device APIs, which means they can use resources such as the camera, storage and GPS. Yelp and Instagram are examples of hybrid apps.
Hybrid applications are built with HTML and CSS. Developers create one code base, then make small changes to tailor the app to each platform. Fewer developers are dedicated to each platform with a hybrid app than with a fully native app. Hybrid apps typically run a web app through a container or WebView, a browser that can be contained inside of a mobile app.