Native Apps are built with native APIs from specific platform such as IOS, Android, and BlackBerry.
- High performance.
- Supports push notification and full device APIs.
- Interactive and intuitive.
- Platform dependent. Developer should work with different codebase for different platform.
- Hard to maintain.
- Expensive developing cost.
- Frameworks that support cross-platform
- Flutter, Xamarin, React Native and Titanium. (Click for details)
Web Apps use html, css and java scripts and can be accessed via a web browser over a network such as chrome and safari.
- Low developing cost.
- Easy to build and maintain.
- Cross-platform because it is accessed through internet browser.
- Performance issues such as lagging.
- Less interactive and less intuitive.
- Limitations of device utilities such as bluetooth, NFC, camera, biometrics and sensors.
- No push notification.
Progressive Web Apps are advanced version of Web Apps. These apps support push notification and offline functionality. This support is important to keep people using your app after initial usage. Still access through internet browsers.
HybridApps are built with html, css, and java scripts and run inside WebView. Also, they have native source codes. These apps cover limitations of web apps. There are multiple frameworks that support to build hybrid apps(e.g. PhoneGap, Ionic, Cordova).
- Support push notification and have access to device utilities using APIs.
- No browser needed.
- Faster development than native apps.
- Still have performance issues.
- More expensive than web apps.