Go to file
2017-03-20 16:53:40 -04:00
.github chore(): update contributing guide 2016-10-14 08:12:35 -04:00
scripts chore(): merge v3-injectable into master (#1203) 2017-03-20 16:38:14 -04:00
src/@ionic-native chore(): merge v3-injectable into master (#1203) 2017-03-20 16:38:14 -04:00
.editorconfig chore(): add .editorconfig (#238) 2016-06-22 18:25:06 -04:00
.gitignore chore(): merge v3-injectable into master (#1203) 2017-03-20 16:38:14 -04:00
CHANGELOG.md chore(): update changelog 2017-03-18 18:34:42 -04:00
circle.yml chore(circle-ci): set node version to 5.5.0 2017-03-20 16:53:40 -04:00
DEVELOPER.md chore(): merge v3-injectable into master (#1203) 2017-03-20 16:38:14 -04:00
gulpfile.js chore(): merge v3-injectable into master (#1203) 2017-03-20 16:38:14 -04:00
LICENSE chore(): add license 2016-09-25 17:59:21 -04:00
package.json chore(): merge v3-injectable into master (#1203) 2017-03-20 16:38:14 -04:00
README.md chore(): improve docs 2017-03-20 16:51:33 -04:00
tsconfig.json chore(): merge v3-injectable into master (#1203) 2017-03-20 16:38:14 -04:00
tslint.json chore(tslint-rules): Use ionic-tslint-rules (#276) 2016-07-18 00:09:38 -04:00

Circle CI Commitizen friendly npm

NPM NPM

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.

Installation

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.

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.

img

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