Native or Native
These are applications developed using the device-specific programming language, such as Java for Android, Apple's iOS Objective-C. The advantages of developing a mobile application using its default language are: speed, security, access to device devices such as camera, GPS, etc.
Hybrid or Hybrid
The development of hybrid applications brings the best of both worlds (Native and Web) to the development environment. These types of applications are developed using Web technology and then packaged for a specific platform. This allows these applications to behave as native. As well as Web applications, compatibility issues can also occur. Example of this approach is Apache Cordova
Web Applications
Web applications (run from device browsers) are multiplatform since all current smartphones have modern browsers and support the latest technologies required for the application to function properly. However, they may face compatibility issues by always having to optimize the code to work around those issues.