Ionic Native is a curated set of wrappers for Cordova plugins that make adding any native functionality you need to your Ionic 2 mobile app easy.
Run following command to install Ionic Native in your project.
npm install @ionic-native/core --save
You also need to install the Ionic Native package for each plugin you want to add. Please see the Ionic Native documentation for complete instructions on how to add and use the plugins.
For the full Ionic Native documentation, please visit http://ionicframework.com/docs/v2/native/.
Ionic Native wraps plugin callbacks in a Promise or Observable, providing a common interface for all plugins and ensuring that native events trigger change detection in Angular 2.
import { Geolocation } from '@ionic-native/geolocation';
import { Platform } from 'ionic-angular';
@Component({ ... })
export class MyComponent {
constructor(private geolocation: Geolocation, private platform: Platform) {
platform.ready().then(() => {
// get position
geolocation.getCurrentPosition().then(pos => {
console.log(`lat: ${pos.coords.latitude}, lon: ${pos.coords.longitude}`)
});
// watch position
const watch = geolocation.watchPosition().subscribe(pos => {
console.log(`lat: ${pos.coords.latitude}, lon: ${pos.coords.longitude}`)
});
// to stop watching
watch.unsubscribe();
});
}
}
Spent way too long diagnosing an issue only to realize a plugin wasn't firing or installed? Ionic Native lets you know what the issue is and how you can resolve it.
Let us know or submit a PR! Take a look at the Developer Guide for more on how to contribute. ❤️
Ibby Hadeed - @ihadeed
Tim Lancina - @timlancina
Max Lynch - @maxlynch
Rob Wormald - @robwormald