Import the Android SDK

Add the Xtremepush SDK to your Android project

  1. In your app's build.gradle file, add the Xtremepush Maven repository:

👍

Android Studio Bumblebee

In Android Studio Bumblebee, the build configuration files are slightly different than as described below. Specifically, the repository settings have been moved from the top-level build.gradle file to the settings.gradle file. For more information, see the release note Repository settings in settings.gradle.

repositories {
    maven {
        url 'https://maven.xtremepush.com/artifactory/libs-release-local/'
    }
}
  1. Add the XtremePush library to the dependencies section:
implementation 'ie.imobile.extremepush:XtremePush_lib:9.2.4'
  1. If you are using version 8.0 or later of the Xtremepush SDK, please include the latest version of AndroidX.

Otherwise, if you are using an older version of the SDK, add the latest version of Android Support:

implementation 'com.android.support:support-v4:28.0.0'

👍

Dependency versions

This example and others below show specific version numbers. You may need to update these version numbers as new updates of these dependencies are released.

  1. Also add the following google dependencies if not already included:
implementation 'com.google.firebase:firebase-messaging:23.1.2'

// if using location
implementation 'com.google.android.gms:play-services-location:20.0.0'
  1. Add the following dependencies:
implementation 'com.squareup.okhttp3:okhttp:4.10.0'
implementation 'com.squareup:otto:1.3.8'
implementation 'com.google.code.gson:gson:2.8.8'

// If not using beacon the dependency below can be omitted 
implementation 'org.altbeacon:android-beacon-library:2.19.2'
  1. Sync the project with the gradle file.
  2. If you are using Android location services for Xtremepush geofencing or iBeacons, please modify the AndroidManifest.xml to include the following permissions :
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"  />

<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />