Recs.
Updated
Native apps are built for a specific platform using the individual platform's Software Development Kit, tools and languages. This provides for the best possible performance and user experience on that platform.
Specs
Pros
Pro Richer user experience
Native apps not only improve the user experience through faster performance, but they also have access to libraries of interface controls specifically designed for the platform.
The benefits are twofold - interface controls are mature and well designed, and also provide a consistent user experience to help new users quickly understand how to navigate the app.
Pro Full access to platform APIs
Native apps have access to the platform's API, which means developers can access device-specific features such as orientation, the accelerometer, the camera, app switching and the local filesystem. This is useful not only for providing new features, but for making sure users have the best possible experience with current ones.
Pro Superior performance
Native apps maximize use of a device's local resources; they install all of their assets on the device itself, unlike web apps, where parts of the application are downloaded on demand during use. The result is that native apps offer the fastest possible performance, as they only need to access the network to retrieve data.
Facebook, Tumblr and a variety of other companies have attempted to build HTML5 web apps; they found that, due to performance issues, web apps do not provide a suitable enough user experience, and ultimately decided to migrate to a native versions.
Pro App store distribution channel
The App Store and Google Play provide developers with a substantial distribution channel for mobile apps.
The app stores provide several advantages, such as easy installs, payments, and reviews. Users are more able to trust apps on the App Store, as they've been vetted by Apple, or on the Google Play store, as required permissions are listed explicitly, than they are of a web application. Good reviews, as well as other indicators, such as 'Top Developer" or "Editor's Picks" can lend further legitimacy to an application.
Cons
Con Harder to make apps cross-platform
Since every mobile platform offers developers their own SDK and app development tools, it's harder for developers to write cross-platform apps. Since they have to develop a different version for their app for each platform they need to support.
There's also the problem that different platforms require different programming languages to develop apps for. For example, Android requires Java, iOS requires Objective-C and Windows Mobile requires C++. This adds another layer of complexity when developing cross-platform apps.
Recommendations
Comments
Flagged Pros + Cons
Pro Each native app must get the approval of the app store
so the security and performance of the app is generally assured. Because native apps are associated with an app store, they also are easy for a user to find and download.