FAQ
Answers to common questions about Screeb for Android.
Can I use Screeb without identifying users?
Yes. Screeb assigns an anonymous ID automatically when you call Screeb.initSdk(...). You don't need to call Screeb.setIdentity(...) if you want to track anonymous users. Anonymous users count toward your Monthly Tracked Users (MTU).
How do I prevent Screeb from loading in test/CI environments?
Simply skip calling Screeb.initSdk(...) in non-production environments. Use a conditional check based on your build configuration:
if (!BuildConfig.DEBUG) {
Screeb.initSdk(this, "<YOUR-CHANNEL-ID>")
}
This prevents Screeb from initializing during development or testing.
Can I call initSdk() multiple times?
No. Call Screeb.initSdk(...) only once per app session, typically in your Application.onCreate() method. Calling it multiple times may cause unexpected behavior. If you need to switch users, use Screeb.resetIdentity() followed by Screeb.setIdentity(...).
How do I switch to a different user (e.g., after login)?
Call Screeb.resetIdentity() first to clear the current session, then call Screeb.setIdentity() with the new user ID. If you also want to attach profile data, set visitor properties afterward:
Screeb.resetIdentity()
Screeb.setIdentity("new-user-id")
Screeb.setVisitorProperties(
VisitorProperties().apply {
this["email"] = "support@screeb.app"
// other properties
}
)
Where do I find my Channel ID?
Your Android Channel ID is available in the Screeb admin console under Settings > Install. Select "Android" as the platform, and you'll see the channel ID, which looks like a UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
Why is my survey not showing?
Common reasons a survey might not appear:
- Targeting rules: Check the survey targeting rules in the admin console
- User identification: Ensure the user is identified before the survey trigger fires
- Initialization timing: Ensure
Screeb.initSdk(...)is called before triggering surveys
See the Troubleshooting page for more detailed debugging steps.
Which minimum Android API level is required?
Screeb for Android requires API level 19 (Android 4.4 KitKat) or higher. Set this in your app's build.gradle:
android {
defaultConfig {
minSdk 19
}
}
Does Screeb require internet permission in the manifest?
Yes. Add the INTERNET permission to your AndroidManifest.xml if not already present:
<uses-permission android:name="android.permission.INTERNET" />
Most modern apps already include this permission, but it's required for Screeb to communicate with the backend.
Is Screeb compatible with ProGuard/R8?
Yes. Add keep rules for Screeb classes in your ProGuard configuration file (proguard-rules.pro):
-keep class app.screeb.** { *; }
-keepnames class app.screeb.** { *; }
See the Troubleshooting page for the complete ProGuard configuration.
Can I customize the survey appearance on Android?
Survey appearance is configured in the Screeb admin console, not in the SDK. You can customize colors, fonts, and button styles through the survey editor. The SDK respects these settings automatically.