For the highest quality apps which leverage the full features of the device, it has to be done ‘Native’, which means it is written in the language recommended for the operating system.
Originally all iOS native apps were written in Objective-C. In 2014 Apple released Swift, which was designed to improve performance & address security concerns & is now the recommended development language for iOS apps. Apps can be written in Objective-C, a mixture of Objective-C & Swift, or purely in Swift. Red C have extensive experience with each of these approaches.
Java is the primary development language for native Android applications. Good native development also follows recommended UI design for that platform - in the case of Android this is 'Material Design'.
Hybrid / HTML5 Apps
As we are primarily an app development company, when we speak about HTML5 apps, we are speaking of an app that you would be submitted to the apple or android app stores; these are also often referred to as Hybrid apps (We are not speaking of a website designed to look like an app)
The primary framework we use for developing Hybrid apps is ionic. This framework is the leading, open source framework for HTML5 hybrid applications.
The app layout & functionality is coded using this framework & then compiled using Cordova which allows us to turn our Hybrid HTML5 into either an iOS or Android app, ready for submission to stores.
Using ionic & Cordova, we are able to access some native features of the phone e.g. GPS location, camera, flashlight, accelerometer. It is the merging of these native features while using HTML5 as the development language to enable ‘write once, deploy to many’ that give this type of development the name and ‘Hybrid’.
Hybrid apps are ideal in situations where limited phone features are required and there is not a heavy performance load on the phone. As the technology powering this type of app continues to improve & devices get better in general, it is getting harder to tell whether an app is native or hybrid.