Huawei React Native SDK Setup

Step 1. React Native OneSignal SDK setup

Step 2. Huawei Setup

buildscript {
    repositories {
        google()
        jcenter()
        maven { url 'http://developer.huawei.com/repo/' }
    }

    dependencies {
        ...
        classpath 'com.huawei.agconnect:agcp:1.2.1.301'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'http://developer.huawei.com/repo/' }
    }
}
  • Under app build.gradle add the following
apply plugin: "com.android.application"
apply plugin: "com.huawei.agconnect"

...
  
dependencies {
    ...
    implementation 'com.huawei.hms:push:5.3.0.304'
}

Step 3. React Native Huawei Plugin setup (Optional)

OneSignal does not require the React Native Huawei plugin and in most cases you can omit this. However, if you need specific Huawei features in React Native see Integrating React Native HMS Push Kit Module

  • 3.1 When following the plugin setup, after downloading the plugin remove the RNHmsMessageService from the downloaded plugin's AndroidManifest.xml file under the android package.
1392

Step 4. Huawei Location Service (Optional)

  • 4.1 Add implementation 'com.huawei.hms:location:<HUAWEI HMS VERSION #> to your app build.gradle's dependencies section.
  • 4.2 Make sure to also add the location permission to your AndroidManifest.xml if you don't have this already
dependencies {
    ...
    implementation 'com.huawei.hms:location:4.0.0.300'
}

Notes/Resources

This is an example React Native project integrating the Huawei React Native Plugin.

  • HMS error code reference to help debug logs and successfully integrate HMS Core SDK with the OneSignal SDK.

Keystore Signature

  • Huawei Signing Certificate Usage
    • You may need to create a debug or release keystore signature (choose the correct app build path, debug or release) so that a 6003 error is avoided when registering for Huawei pushToken with the OneSignal SDK.