A virtual machine is used to abstract the target platform details from the application’s running code.
The framework provides both the API and runtime environment.
The runtime executes on the mobile device and enables interoperability between the device’s OS and the mobile application.