Let's refresh some very basics that each operating system has its own native programming language.
For instance, android apps are written in Java, iOS apps are developed in objective C or swift, while Windows uses C# and XAML. Each coding language is different and has their different characteristics. Thus selecting a specific language to work with certain requirement depends on the platform that you are choosing. Leading to a question which we will take in the next Article "Which platform best fits my Mobile App requirement?"
Talking of Cross Platform Mobile Apps a Users expectancy from a developer to produce the same result on each platform across all operating system is not realistic.
A wrapper is a subroutine which helps to call the main function of the program which is embedded in the package. So now, a developer can write the package for their app before hand and only needs to change to the wrapper for the app to work across all platforms.