Skip to content

Commit

Permalink
feat(stepcounter): add stepcounter plugin (#607)
Browse files Browse the repository at this point in the history
* feat(stepcounter): add stepcounter plugin

* docs(stepcounter): add missing returns
  • Loading branch information
b3da-cz authored and ihadeed committed Oct 2, 2016
1 parent 8f26f4b commit a99b753
Show file tree
Hide file tree
Showing 2 changed files with 76 additions and 0 deletions.
3 changes: 3 additions & 0 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ import { SpinnerDialog } from './plugins/spinnerdialog';
import { Splashscreen } from './plugins/splashscreen';
import { SQLite } from './plugins/sqlite';
import { StatusBar } from './plugins/statusbar';
import { Stepcounter } from './plugins/stepcounter';
import { StreamingMedia } from './plugins/streaming-media';
import { ThreeDeeTouch } from './plugins/3dtouch';
import { Toast } from './plugins/toast';
Expand Down Expand Up @@ -208,6 +209,7 @@ Sim,
Splashscreen,
SQLite,
StatusBar,
Stepcounter,
TouchID,
Transfer,
TextToSpeech,
Expand Down Expand Up @@ -310,6 +312,7 @@ window['IonicNative'] = {
Splashscreen,
SQLite,
StatusBar,
Stepcounter,
StreamingMedia,
ThreeDeeTouch,
Toast,
Expand Down
73 changes: 73 additions & 0 deletions src/plugins/stepcounter.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
import { Plugin, Cordova } from './plugin';
/**
* @name Stepcounter
* @description
* Cordova plugin for using device's stepcounter on Android (API > 19)
*
* Use to
* - start and stop stepcounter service
* - read device's stepcounter data
*
* @usage
* ```
* import { Stepcounter } from 'ionic-native';
*
* let startingOffset = 0;
* Stepcounter.start(startingOffset).then(onSuccess => console.log('stepcounter-start success', onSuccess), onFailure => console.log('stepcounter-start error', onFailure));
*
* Stepcounter.getHistory().then(historyObj => console.log('stepcounter-history success', historyObj), onFailure => console.log('stepcounter-history error', onFailure));
*
* ```
*/
@Plugin({
plugin: 'https://github.com/texh/cordova-plugin-stepcounter',
pluginRef: 'stepcounter',
repo: 'https://github.com/texh/cordova-plugin-stepcounter',
platforms: ['Android']
})
export class Stepcounter {

/**
* Start the step counter
*
* @param startingOffset {number} will be added to the total steps counted in this session
* @return {Promise} Returns a Promise that resolves on success or rejects on failure
*/
@Cordova()
static start(startingOffset: number): Promise<number | any> { return; }

/**
* Stop the step counter
* @return {Promise} Returns a Promise that resolves on success with the amount of steps since the start command has been called, or rejects on failure
*/
@Cordova()
static stop(): Promise<number | any> { return; }

/**
* Get the amount of steps for today (or -1 if it no data given)
* @return {Promise} Returns a Promise that resolves on success with the amount of steps today, or rejects on failure
*/
@Cordova()
static getTodayStepCount(): Promise<number | any> { return; }

/**
* Get the amount of steps since the start command has been called
* @return {Promise} Returns a Promise that resolves on success with the amount of steps since the start command has been called, or rejects on failure
*/
@Cordova()
static getStepCount(): Promise<number | any> { return; }

/**
* Returns true/false if Android device is running >API level 19 && has the step counter API available
* @return {Promise} Returns a Promise that resolves on success, or rejects on failure
*/
@Cordova()
static deviceCanCountSteps(): Promise<boolean | any> { return; }

/**
* Get the step history (JavaScript object)
* @return {Promise} Returns a Promise that resolves on success, or rejects on failure
*/
@Cordova()
static getHistory(): Promise<any> { return; }
}

0 comments on commit a99b753

Please sign in to comment.