Skip to main content
Version: Android SDK

Install

How to install the Android SDK in your app?โ€‹

You can find here useful information if you are using one of these technologies:

  1. Flutter: Releases - sources - example
  2. React Native: Releases - sources - example

Maven Central

Screeb SDK Usage in CI Environmentsโ€‹

Please note that if you are utilizing a Continuous Integration (CI) system, it is advisable to deactivate the Screeb SDK during CI execution. This precaution helps prevent the creation of numerous new anonymous users and potential exceedance of your MTU limit.

Technical requirementsโ€‹

The Screeb SDK is configured to work with Android SDK version 19 minimum.

The SDK adds about 110 KB to an Android release app.

The SDK needs the permissions INTERNET to work well.

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

The SDK also need theses permissions if you want to use the Screeb Audio/Video feature.

<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.MICROPHONE" />
<uses-feature android:name="android.hardware.camera" android:required="true"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

How to configure the Android SDK in your app?โ€‹

Add Screeb as a dependencyโ€‹

# build.gradle
allprojects {
repositories {
mavenCentral()
}
}

implementation 'app.screeb.sdk:survey:x.x.x'

Import Screeb SDK into your packageโ€‹

import app.screeb.sdk.Screeb

Setup the SDKโ€‹

tip

You can find your channel id in your workspace settings.

// simple initialization
Screeb.initSdk(this, "<YOUR-CHANNEL-ID>")

// detailed initialization using a unique id and custom properties, see Identify visitors section
Screeb.initSdk(this,
"<YOUR-CHANNEL-ID>",
"<unique-user-id>", // optional
VisitorProperties().apply { // optional
this["firstname"] = "<user-firstname>"
this["lastname"] = "<user-lastname>"
this["plan"] = "<user-plan>"
this["age"] = 42
this["logged_at"] = Date()
this["authenticated"] = true
},
language = "en" // optional
)

To enable the Screeb In-App Message editor on your Android app, you need to configure deep links.

1. Add intent filter to AndroidManifest.xmlโ€‹

Add the following intent filter to your main Activity in AndroidManifest.xml, replacing <channel-id> with your channel ID:

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="screeb-<channel-id>" />
</intent-filter>
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Screeb.handleDeepLink(intent)
}

override fun onNewIntent(intent: Intent?) {
super.onNewIntent(intent)
Screeb.handleDeepLink(intent)
}

About SDK lifecycleโ€‹

At any time, you can disable the Screeb SDK with the following command:

Screeb.closeSdk()

SDK dependenciesโ€‹

If you face any issues with our dependencies, please contact our support team.

  • core-ktx:1.6.0
  • webkit:1.7.0
  • com.google.android.play:review:2.0.1
  • com.google.android.play:review-ktx:2.0.1