1.4.5 • Published 1 month ago

@kilohealth/rn-fitness-tracker v1.4.5

Weekly downloads
35
License
MIT
Repository
github
Last release
1 month ago

rn-fitness-tracker

React Native library for step tracking based on Google Fit (Android) and CoreMotion (iOS) native API's.

Installation

$ yarn add @kilohealth/rn-fitness-tracker

iOS

React-Native > 0.61

  1. Add following lines to info.plist file <dict> tag:
<key>NSMotionUsageDescription</key>
<string>Reason string goes here</string>

or

Navigate to info.plist file in XCode ➜ Add new property list key - NSMotionUsageDescription. This will add new line in the containing Privacy - Motion Usage Description.

  1. Add following line to Podfile: pod 'RNFitnessTracker', :podspec => '../node_modules/@kilohealth/rn-fitness-tracker/ios/RNFitnessTracker.podspec'.
  2. In XCode, in the project navigator, right click LibrariesAdd Files to [your project's name]
  3. Go to node_modules@kilohealth/rn-fitness-tracker and add RNFitnessTracker.xcodeproj
  4. In XCode, in the project navigator, select your project. Add libRNFitnessTracker.a to your project's Build PhasesLink Binary With Libraries

Android

React-Native > 0.61

  1. Enable Google Fitness Api:
  1. Make sure your Google account has access to app firebase project.

  2. Create an OAuth screen for your project.

  3. Select User Type: External and fill out the form. Add ../auth/fitness.activity.read to Scopes for Google APIs.

  4. Fill out next popup forms with a brief explanation why you're using the activity tracker (no need to write much).

  5. Go to Google console

  6. Select your app's project, Continue, and Go to Credentials.

  7. Where will you be calling the API from? Select Android.

  8. What data will you be accessing? Select User data and click next.

  9. The Signing-certificate fingerprint generation command must be pointed to your app release / staging keystore file.

  10. Save and submit everything. If you haven't got your google services config inside your app - download your google-services.json file from firebase console and place it inside android/app directory within your project.

  1. React Native autolinking should handle the rest.

React-Native < 0.60

  1. Open up android/app/src/main/java/[...]/MainActivity.java Add import com.fitnesstracker.RNFitnessTrackerPackage; to the imports at the top of the file. Add new RNFitnessTrackerPackage() to the list returned by the getPackages() method.

  2. Append the following lines to android/settings.gradle:

include ':@kilohealth-rn-fitness-tracker'
project(':@kilohealth-rn-fitness-tracker').projectDir = new File(rootProject.projectDir, 	'../node_modules/@kilohealth/rn-fitness-tracker/android')

3.Insert the following lines inside the dependencies block in android/app/build.gradle:

implementation project(path: ':@kilohealth-rn-fitness-tracker')

implementation 'com.google.android.gms:play-services-fitness:16.0.1'
implementation 'com.google.android.gms:play-services-auth:16.0.1'

Usage

import RNFitnessTracker from 'rn-fitness-tracker';

// This step is required in order to use any of the methods bellow
// Returns an object:
// authorized: boolean;
// shouldOpenAppSettings: boolean;
// trackingNotSupported?: boolean;
RNFitnessTracker.setupTracking(status => {});

// Get steps today
RNFitnessTracker.getStepsToday(steps => {});

API Methods documentation

1.4.6-alpha.1

1 month ago

1.4.5

1 month ago

1.4.4

1 month ago

1.4.3

3 months ago

1.4.2

4 months ago

1.4.1

4 months ago

1.4.0

4 months ago

1.4.0-alpha.5

5 months ago

1.4.0-alpha.6

5 months ago

1.4.0-alpha.4

5 months ago

1.4.0-alpha.3

5 months ago

1.4.0-alpha.2

5 months ago

1.4.0-alpha.1

6 months ago

1.3.2

6 months ago

1.3.1

6 months ago

0.1.6

6 months ago

1.3.0

6 months ago

1.3.0-alpha.2

6 months ago

1.2.0

6 months ago

1.3.0-alpha.1

6 months ago

1.2.0-alpha.3

6 months ago

1.2.0-alpha.2

6 months ago

1.2.0-alpha.1

6 months ago

1.1.2-alpha.1

6 months ago

1.1.2

6 months ago

0.1.5

7 months ago

1.1.1

7 months ago

1.1.0

8 months ago

1.0.1

8 months ago

1.0.0

8 months ago

0.2.5

8 months ago

0.2.4

8 months ago

0.2.3

9 months ago

0.2.2

9 months ago

0.2.1

9 months ago

0.2.0

9 months ago

0.2.0-beta.1

9 months ago

0.1.4

10 months ago

0.1.3

11 months ago

0.1.3-alpha.6

11 months ago

0.1.3-alpha.5

11 months ago

0.1.3-alpha.4

11 months ago

0.1.3-alpha.3

11 months ago

0.1.3-alpha.2

11 months ago

0.1.3-alpha.0

11 months ago

0.1.2

11 months ago

0.1.1

11 months ago

0.1.0

11 months ago

0.0.16

12 months ago

0.0.15

12 months ago

0.0.14

1 year ago

0.0.13

1 year ago

0.0.12

1 year ago

0.0.11

1 year ago

0.0.10

1 year ago

0.0.9

1 year ago

0.0.8

1 year ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago