An application designed to run in the computer environment (machine language and OS) being referenced. The term is used to contrast a native application with an interpreted one such as a Java application that is not native to a single platform.
An application designed to run in the computer environment (machine language and OS) it is being run in. The term is used to refer to a locally installed application in contrast to various other software architectures. For example, it may contrast a native application that runs by itself with an interpreted one, such as a Java applet, that requires interpreter software in the machine. A native app may be contrasted with an emulated application written for a different platform and converted in real time to run. In addition, a native app may be contrasted with a Web application that is run within the browser.
Useful Links: native-app-vs-mobile-web-app-comparison