react-native-aerogear-ups

Note that currently this module only works with android. In the coming weeks I will develop the iOS module.

Usage no npm install needed!

<script type="module">
  import reactNativeAerogearUps from 'https://cdn.skypack.dev/react-native-aerogear-ups';
</script>

README

react-native-aerogear-ups

Note that currently this module only works with android. In the coming weeks I will develop the iOS module.

Getting started

$ npm install react-native-aerogear-ups --save

Mostly automatic installation

$ react-native link react-native-aerogear-ups

Android

  • Add the following line inside dependencies in <PROJECT_ROOT>/build.gradle

    dependencies {
        ...
        classpath 'com.google.gms:google-services:3.2.1'
    }
    
    • Add the following line at the end of the file <PROJECT_ROOT>/app/build.gradle
    apply plugin: 'com.google.gms.google-services'
    
  • Add the google-services.json file to <PROJECT_ROOT>/app/. Download the google-services.json file as described in the Google Documentation.

Manual installation

Android

  1. Open up android/app/src/main/java/[...]/MainActivity.java
  • Add import com.reactlibrary.RNAerogearUpsPackage; to the imports at the top of the file
  • Add new RNAerogearUpsPackage() to the list returned by the getPackages() method
  1. Append the following lines to android/settings.gradle:
    include ':react-native-aerogear-ups'
    project(':react-native-aerogear-ups').projectDir = new File(rootProject.projectDir, 	'../node_modules/react-native-aerogear-ups/android')
    
  2. Insert the following lines inside the dependencies block in android/app/build.gradle:
      compile project(':react-native-aerogear-ups')
    

Usage

  • Import the module in the files that you need it;

    import RNAerogearUps from 'react-native-aerogear-ups';
    
  • Connect to the server in order to start receiving push notifications

    RNAerogearUps.init(
        "http://<your-ups-server>.com",
        "<senderId>",
        "<variantId>",
        "<variantSecret>"
    );
    
  • If you want to receive the notification as an event you need to call the following method:

    RNAerogearUps.registerMainMessageHandler()
    

    you also need to import DeviceEventEmitter from react-native and start listening to "onMessage" events.

    import { DeviceEventEmitter } from 'react-native'
    
    DeviceEventEmitter.addListener('onMessage', (message)=>{
         //TODO
     }
    

    To stop receiving the events call:

    RNAerogearUps.unregisterMainMessageHandler()
    
  • To stop receiving the notifications in the notifications bar call:

    RNAerogearUps.unregisterBarMessageHandler()
    

    To start receiving them egain

    RNAerogearUps.registerBarMessageHandler()