Huawei React Native SDK Setup
Follow these instructions if your app is distributed on the Huawei AppGallery.
Requirements
- Android Studio
- A Huawei device with "Huawei App Gallery" installed
- Configured OneSignal App and Platform
Configure your OneSignal app and platform
If your team already created an account with OneSignal, ask to be invited as an admin role so you can setup the app. Otherwise, sign up for a free account at onesignal.com to get started!
Details on configuring your OneSignal app (click to expand)
You can setup multiple platforms (iOS, Android, Web, Email, SMS) within the same OneSignal App under Settings > Platforms. If you want to create a new app select New App/Website. If this is your first OneSignal app, you will see the next page.
Name your app and organization something recognizable, then select the platform to setup. You can always set up more platforms in this OneSignal App later within Settings > Platforms.
Click Next: Configure Your Platform.
To configure your app, follow the prompts based on the platforms you support.
- Android: Set up your Android Firebase Credentials
- iOS: p8 Authentication Token or p12 Push Notification Certificate
- Amazon: Generate an Amazon API Key
- Huawei: Authorize OneSignal to send Huawei Push
After you setup your credentials, click Save & Continue.
Choose your Apps Target SDK, the click Save & Continue.
Finally, you will be directed to install the SDK and provided your OneSignal App ID. Make sure to save your App ID as you will need it later.
If you need a teammate or your developer to assist, you can click Invite them to the app and select Done when finished.
Continue through the documentation to finish adding OneSignal to your app.
Setup
1. Setup the OneSignal React Native SDK
Follow the OneSignal React Native SDK setup guide. Firebase / Google setup not required for app builds released to the Huawei AppGallery.
2. Huawei Setup
Configure app information in AppGallery Connect
Add dependencies to React Native android project
In the case ReactNative plugin is going to be used (see step 4), then this step can be skipped.
Under project build.gradle add the following
buildscript {
repositories {
google()
jcenter()
maven { url 'https://developer.huawei.com/repo/' }
}
dependencies {
...
classpath 'com.huawei.agconnect:agcp:1.6.0.300'
}
}
allprojects {
repositories {
google()
jcenter()
maven { url 'https://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:6.3.0.304'
}
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
When following the plugin setup, after downloading the plugin remove the RNHmsMessageService from the downloaded plugin's AndroidManifest.xml
file under the android package.
4. Huawei Location Service (Optional)
Add implementation 'com.huawei.hms:location:<HUAWEI HMS VERSION #>
to your app build.gradle's dependencies section.
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
orrelease
) so that a6003
error is avoided when registering for HuaweipushToken
with the OneSignal SDK.
- You may need to create a debug or release keystore signature (choose the correct app build path,
Updated 9 months ago