React Native Sensor Manager

Native sensors access for react-native
Alternatives To React Native Sensor Manager
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
React Visibility Sensor2,198477220a year ago53July 25, 201977mitJavaScript
Sensor component for React that notifies you when it goes in or out of the window viewport.
Reactivemaps936
a year ago32JavaScript
A data aware UI components library for building realtime maps
React Native Sensors83538128 days ago75February 04, 202234mitObjective-C
A developer friendly approach for sensors in React Native
Automated Irrigation System558
8 months ago9JavaScript
This is the software of an open source automated irrigation system. The complete setup including hardware can be found in the README.
React Native Sensor Manager200
304 years ago11September 23, 201624Java
Native sensors access for react-native
React Native Proximity196
4 years ago7December 15, 201711mitJava
:iphone: A React Native wrapper that provides access to the proximity sensor on iOS and Android.
Aws Appsync Iot Core Realtime Dashboard89
5 months ago1mit-0JavaScript
This sample application demonstrates a React based web dashboard receiving real-time updates from IoT sensors. The solution is built with AWS AppSync, AWS Amplify, Amazon Location Service, and AWS IoT Core technologies.
Airqmon87
3 months agoapache-2.0TypeScript
A macOS menu bar application that displays live air quality data from the nearest sensor station.
Pierosavi Imageit Panel74
a year ago20apache-2.0TypeScript
Grafana Panel Plugin. Allows Measurement Values to be Overlaid on top of a Picture
Visibility Sensor React Native61
6 months ago1November 09, 20206TypeScript
React Native component that helps with determining whether a component is in the viewport.
Alternatives To React Native Sensor Manager
Select To Compare


Alternative Project Comparisons
Readme

react-native-sensor-manager

Wrapper for react-native. Accelerometer, Gyroscope, Magnetometer, Orientation, Step Counter, Thermometer, LightSensor, and Proximity Sensor are supported for now.

Add it to your project

$ npm i react-native-sensor-manager --save

Option: With rnpm

rnpm link

Option: Manually (try it if an runtime error occurs after nrpm link)

Make alterations to the following files:

  • android/settings.gradle
...
include ':react-native-sensor-manager'
project(':react-native-sensor-manager').projectDir = new File(settingsDir, '../node_modules/react-native-sensor-manager/android')
  • android/app/build.gradle
...
dependencies {
    ...
    compile project(':react-native-sensor-manager')
}
  • register module (in MainApplication.java)

    • For react-native below 0.19.0 (use cat ./node_modules/react-native/package.json | grep version)
import com.sensormanager.SensorManagerPackage; // <------ add package

public class MainActivity extends Activity implements DefaultHardwareBackBtnHandler {

  ......

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mReactRootView = new ReactRootView(this);

    mReactInstanceManager = ReactInstanceManager.builder()
      .setApplication(getApplication())
      .setBundleAssetName("index.android.bundle")
      .setJSMainModuleName("index.android")
      .addPackage(new MainReactPackage())
      .addPackage(new SensorManagerPackage())      // <------- add package
      .setUseDeveloperSupport(BuildConfig.DEBUG)
      .setInitialLifecycleState(LifecycleState.RESUMED)
      .build();

    mReactRootView.startReactApplication(mReactInstanceManager, "ExampleRN", null);

    setContentView(mReactRootView);
  }

  ......

}
  • For react-native 0.19.0 and higher
import com.sensormanager.SensorManagerPackage; // <------ add package

public class MainApplication extends Application implements ReactApplication {
   // ...
    @Override
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
        new MainReactPackage(), // <---- add comma
        new SensorManagerPackage() // <---------- add package
      );
    }

Api

Setup

import React, {
  DeviceEventEmitter // will emit events that you can listen to
} from 'react-native';

import { SensorManager } from 'NativeModules';

Accelerometer

SensorManager.startAccelerometer(100); // To start the accelerometer with a minimum delay of 100ms between events.
DeviceEventEmitter.addListener('Accelerometer', function (data) {
  /**
  * data.x
  * data.y
  * data.z
  **/
});
SensorManager.stopAccelerometer();

Gyroscope

DeviceEventEmitter.addListener('Gyroscope', function (data) {
  /**
  * data.x
  * data.y
  * data.z
  **/
});
SensorManager.startGyroscope(100);
SensorManager.stopGyroscope();

Magnetometer

SensorManager.startMagnetometer(100);
DeviceEventEmitter.addListener('Magnetometer', function (data) {
  /**
  * data.x
  * data.y
  * data.z
  **/
});
SensorManager.stopMagnetometer();

Orientation

SensorManager.startOrientation(100);
DeviceEventEmitter.addListener('Orientation', function (data) {
  /**
  * data.azimuth
  * data.pitch
  * data.roll
  **/
});
SensorManager.stopOrientation();

Step Counter

SensorManager.startStepCounter(1000);
DeviceEventEmitter.addListener('StepCounter', function (data) {
  /**
  * data.steps
  **/
});
SensorManager.stopStepCounter();

Thermometer

SensorManager.startThermometer(1000);
DeviceEventEmitter.addListener('Thermometer', function (data) {
  /**
  * data.temp
  **/
});
SensorManager.stopThermometer();

LightSensor

SensorManager.startLightSensor(100);
DeviceEventEmitter.addListener('LightSensor', function (data) {
  /**
  * data.light
  **/
});
SensorManager.stopLightSensor();

Proximity Sensor

SensorManager.startProximity(100);
DeviceEventEmitter.addListener('Proximity', function (data) {
  /**
  * data.isNear: [Boolean] A flag representing whether something is near the screen.
  * data.value: [Number] The raw value returned by the sensor (usually distance in cm).
  * data.maxRange: [Number] The maximum range of the sensor.
  **/
});
SensorManager.stopProximity();
Popular Sensor Projects
Popular Reactjs Projects
Popular Hardware Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Java
Reactjs
Sensor
Accelerometer
Gyroscope