Screenshot reports
v1.7.1Detect screenshots, request permissions and attach images to bug reports.
Automatic screenshot detection
When users take a screenshot, BugScreen automatically shows a bug report dialog. That's it. Reporters can attach up to four screenshots to a single report from the in-app dialog.
Reporter settings load asynchronously. If the dialog opens before they arrive, it shows a loading indicator and keeps any attached screenshot. If they cannot be loaded, the dialog shows a Retry action instead of opening the form with default settings.
Permissions
Request permissions
Android 14+: no permission needed to detect screenshots. The SDK prompts once for photo access to auto-attach the screenshot; if denied, the user picks it from the photo picker instead.
Android 13 and below: needs a runtime permission to detect screenshots. Opt in with .requestPermissionsOnStart(true) to have the SDK prompt automatically, or use the fine-grained helpers below.
import app.bugscreen.android.BugScreenSDK
// Check if permission is needed
if (BugScreenSDK.shouldRequestPermission(this)) {
// Request permission with callback
BugScreenSDK.requestScreenshotPermission(this) { granted ->
if (granted) {
// Permission granted - screenshot detection enabled
} else {
// Permission denied - manual triggering still works
}
}
}
// Or just check permission status
val hasPermission = BugScreenSDK.hasScreenshotPermission(this)Permissions added to your app
BugScreen's manifest is merged into your app's manifest, so these <uses-permission> entries appear in your Play Console listing if you ship the SDK in your production app:
INTERNET— upload bug reports.READ_EXTERNAL_STORAGE(Android 12 and below only) — read the latest screenshot fromMediaStore.READ_MEDIA_IMAGES(Android 13+) — same lookup on modern Android; requested opt-in at runtime.DETECT_SCREEN_CAPTURE(Android 14+) — install-time, silent; lets the SDK know when a screenshot is taken.