Amazon SDK Setup
Instructions for adding the OneSignal SDK to your Amazon app
Requirements
- Your app is distributed on the Amazon AppStore
- Android 5.0+ device or emulator with "Google Play Store (Services)" installed
- Configured OneSignal App and Platform
Configure your OneSignal App and Platform
Details on configuring your OneSignal App and Platform (click to expand)
If you haven't already, sign up for a free account on onesignal.com.
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
Update AndroidManifest.xml
Open your AndroidManifest.xml
file and add xmlns:amazon="http://schemas.amazon.com/apk/res/android"
in the manifest tag right after the xmlns:android
property.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:amazon="http://schemas.amazon.com/apk/res/android"
package="com.onesignal.example"
android:versionCode="1"
android:versionName="1.0" >
Add the following permissions to AndroidManifest.xml
:
<uses-permission android:name="com.amazon.device.messaging.permission.RECEIVE" />
<permission android:name="COM.YOUR.PACKAGE_NAME.permission.RECEIVE_ADM_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="COM.YOUR.PACKAGE_NAME.permission.RECEIVE_ADM_MESSAGE" />
In the application tag
, add the following:
<application ....>
<amazon:enable-feature android:name="com.amazon.device.messaging"
android:required="false"/>
<service android:name="com.onesignal.notifications.services.ADMMessageHandler"
android:exported="false" />
<service android:name="com.onesignal.notifications.services.ADMMessageHandlerJob"
android:permission="android.permission.BIND_JOB_SERVICE"
android:exported="false" />
<receiver android:name="com.onesignal.notifications.receivers.ADMMessageReceiver"
android:permission="com.amazon.device.messaging.permission.SEND"
android:exported="true" >
<intent-filter>
<action android:name="com.amazon.device.messaging.intent.REGISTRATION" />
<action android:name="com.amazon.device.messaging.intent.RECEIVE" />
<category android:name="COM.YOUR.PACKAGE_NAME" />
</intent-filter>
</receiver>
</application>
Replace all 3 of instances COM.YOUR.PACKAGE_NAME
with your package name in AndroidManifest.xml
.
2. Amazon API Key File
Place your api_key.txt
in a folder named assets
in the root of your project.
To create an api_key.txt
for your app, follow our Generate an Amazon API Key guide.
Make sure to use the same keystore when building your APK as you did in step 2.4 in the Amazon Configuration guide.
Ensure that you are not building a debug
app when testing Amazon push notifications. It must be a release
type.
Submit the signed APK to Live App Testing. Submitting a signed APK is a necessary requirement for ADM to work.
3. Testing
Run your app on a physical device to make sure it builds correctly.
If you used the provided code, then the requestPermission
method, should prompt you to subscribe to push notifications. You can change this later.
Check your OneSignal Dashboard Audience > Subscriptions to see your User & Subscription Record.
Then head over to Messages > New Push to Send your first Push Notification from OneSignal.
Troubleshooting
If running into issues, see our Mobile Troubleshooting Guide.
Try our example projects on our Github repository.
If stuck, contact support directly or email [email protected] for help.
For faster assistance, please provide:
- Your OneSignal App ID
- Details, logs, and/or screenshots of the issue.
- Steps to reproduce
Updated 13 days ago