.github | ||
scripts | ||
src/@ionic-native | ||
.editorconfig | ||
.gitignore | ||
CHANGELOG.md | ||
circle.yml | ||
DEVELOPER.md | ||
gulpfile.js | ||
LICENSE | ||
package.json | ||
README.md | ||
tsconfig.json | ||
tslint.json |
Ionic Native
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.
Documentation
For the full Ionic Native documentation, please visit http://ionicframework.com/docs/v2/native/.
Promises and Observables
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();
});
}
}
Runtime Diagnostics
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.
Installation
Run following commmand to install ionic-native in your project.
npm install ionic-native --save
Plugin Missing?
Let us know or submit a PR! Take a look at the Developer Guide for more on how to contribute. ❤️
Credits
Ibby Hadeed - @ihadeed
Tim Lancina - @timlancina
Max Lynch - @maxlynch
Rob Wormald - @robwormald