Package org.acra.config

Types

Link copied to clipboard
class ACRAConfigurationException : Exception

A simple Exception used when required configuration items are missing.

Link copied to clipboard
object ClassValidator
Link copied to clipboard
interface Configuration : Serializable

A configuration object

Link copied to clipboard
interface ConfigurationBuilder

A Configuration builder

Link copied to clipboard
interface ConfigurationBuilderFactory : Plugin

A factory for configuration builders

Link copied to clipboard
class CoreConfiguration(    val sharedPreferencesName: String? = null,     val includeDropBoxSystemTags: Boolean = false,     val additionalDropBoxTags: List<String> = emptyList(),     val dropboxCollectionMinutes: Int = 5,     val logcatArguments: List<String> = listOf("-t", ACRAConstants.DEFAULT_LOG_LINES.toString(), "-v", "time"),     val reportContent: List<ReportField> = ACRAConstants.DEFAULT_REPORT_FIELDS.toList(),     val deleteUnapprovedReportsOnApplicationStart: Boolean = true,     val alsoReportToAndroidFramework: Boolean = false,     val additionalSharedPreferences: List<String> = emptyList(),     val logcatFilterByPid: Boolean = true,     val logcatReadNonBlocking: Boolean = false,     val sendReportsInDevMode: Boolean = true,     val excludeMatchingSharedPreferencesKeys: List<String> = emptyList(),     val excludeMatchingSettingsKeys: List<String> = emptyList(),     val buildConfigClass: Class<*>? = null,     val applicationLogFile: String = ACRAConstants.DEFAULT_STRING_VALUE,     val applicationLogFileLines: Int = ACRAConstants.DEFAULT_LOG_LINES,     val applicationLogFileDir: Directory = Directory.FILES_LEGACY,     val retryPolicyClass: Class<out RetryPolicy> = DefaultRetryPolicy::class.java,     val stopServicesOnCrash: Boolean = false,     val attachmentUris: List<String> = emptyList(),     val attachmentUriProvider: Class<out AttachmentUriProvider> = DefaultAttachmentProvider::class.java,     val reportSendSuccessToast: String? = null,     val reportSendFailureToast: String? = null,     val reportFormat: StringFormat = StringFormat.JSON,     val parallel: Boolean = true,     val pluginLoader: PluginLoader = ServicePluginLoader(),     val pluginConfigurations: List<Configuration> = emptyList()) : Serializable, Configuration
Link copied to clipboard
class DefaultRetryPolicy : RetryPolicy

Default RetryPolicy. Only resend if all senders failed.

Link copied to clipboard
class DialogConfiguration(    val enabled: Boolean = true,     val reportDialogClass: Class<out Activity> = CrashReportDialog::class.java,     val positiveButtonText: String? = null,     val negativeButtonText: String? = null,     val commentPrompt: String? = null,     val emailPrompt: String? = null,     @DrawableRes val resIcon: Int = android.R.drawable.ic_dialog_alert,     val text: String? = null,     val title: String? = null,     @StyleRes val resTheme: Int? = null) : Configuration

CrashReportDialog configuration

Link copied to clipboard
class HttpSenderConfiguration(    val enabled: Boolean = true,     val uri: String,     val basicAuthLogin: String? = null,     val basicAuthPassword: String? = null,     val httpMethod: HttpSender.Method = HttpSender.Method.POST,     val connectionTimeout: Int = 5000,     val socketTimeout: Int = 20000,     val dropReportsOnTimeout: Boolean = false,     val keyStoreFactoryClass: Class<out KeyStoreFactory> = NoKeyStoreFactory::class.java,     val certificatePath: String? = null,     @RawRes val resCertificate: Int? = null,     val certificateType: String = "X.509",     val compress: Boolean = false,     val tlsProtocols: List<TLS> = listOf(TLS.V1_3, TLS.V1_2, TLS.V1_1, TLS.V1),     val httpHeaders: Map<String, String> = emptyMap()) : Configuration

Http sender configuration

Link copied to clipboard
class LimiterConfiguration(    val enabled: Boolean = true,     val periodUnit: TimeUnit = TimeUnit.DAYS,     val period: Long = 7,     val overallLimit: Int = 25,     val stacktraceLimit: Int = 3,     val exceptionClassLimit: Int = 10,     val failedReportLimit: Int = 5,     val ignoredCrashToast: String? = null,     val deleteReportsOnAppUpdate: Boolean = true,     val resetLimitsOnAppUpdate: Boolean = true) : Configuration

Limiter configuration

Link copied to clipboard
class LimiterData
Link copied to clipboard
@AutoService(value = [ReportingAdministrator::class])
class LimitingReportAdministrator : HasConfigPlugin, ReportingAdministrator
Link copied to clipboard
class MailSenderConfiguration(    val enabled: Boolean = true,     val mailTo: String,     val reportAsFile: Boolean = true,     val reportFileName: String = EmailIntentSender.DEFAULT_REPORT_FILENAME,     val subject: String? = null,     val body: String? = null) : Configuration
Link copied to clipboard
class NotificationConfiguration(    val enabled: Boolean = true,     @DrawableRes val resIcon: Int = android.R.drawable.stat_sys_warning,     val title: String,     val text: String,     val tickerText: String? = null,     val sendButtonText: String? = null,     @DrawableRes val resSendButtonIcon: Int = android.R.drawable.ic_menu_send,     val discardButtonText: String? = null,     @DrawableRes val resDiscardButtonIcon: Int = android.R.drawable.ic_menu_delete,     val channelName: String,     val channelDescription: String? = null,     val channelImportance: Int = 4,     val sendWithCommentButtonText: String? = null,     @DrawableRes val resSendWithCommentButtonIcon: Int = android.R.drawable.ic_menu_send,     val commentPrompt: String? = null,     val sendOnClick: Boolean = false) : Configuration
Link copied to clipboard
interface ReportingAdministrator : Plugin

Controls if reports are sent

Link copied to clipboard
interface RetryPolicy

A policy which determines if a report should be resent.

Link copied to clipboard
class SchedulerConfiguration(    val enabled: Boolean = true,     val requiresNetworkType: Int = JobInfo.NETWORK_TYPE_NONE,     val requiresCharging: Boolean = false,     val requiresDeviceIdle: Boolean = false,     val requiresBatteryNotLow: Boolean = false,     val restartAfterCrash: Boolean = false) : Configuration
Link copied to clipboard
class ToastConfiguration(    val enabled: Boolean = true,     val text: String,     @IntRange(from = 0, to = 1) val length: Int = Toast.LENGTH_LONG) : Configuration

Functions

Link copied to clipboard
fun CoreConfigurationBuilder.dialog(initializer: <ERROR CLASS>.() -> Unit)
Link copied to clipboard
inline fun <T : Configuration> CoreConfiguration.findPluginConfiguration(): T?
fun <T : Configuration> CoreConfiguration.findPluginConfiguration(c: Class<T>): T?
Link copied to clipboard
inline fun <T : Configuration> CoreConfiguration.getPluginConfiguration(): T

Allows easy access to Plugin configurations from the main configuration

fun <T : Configuration> CoreConfiguration.getPluginConfiguration(c: Class<T>): T
Link copied to clipboard
fun CoreConfigurationBuilder.httpSender(initializer: <ERROR CLASS>.() -> Unit)
Link copied to clipboard
fun CoreConfigurationBuilder.limiter(initializer: <ERROR CLASS>.() -> Unit)
Link copied to clipboard
fun CoreConfigurationBuilder.mailSender(initializer: <ERROR CLASS>.() -> Unit)
Link copied to clipboard
fun CoreConfigurationBuilder.notification(initializer: <ERROR CLASS>.() -> Unit)
Link copied to clipboard
fun CoreConfigurationBuilder.scheduler(initializer: <ERROR CLASS>.() -> Unit)
Link copied to clipboard
fun CoreConfigurationBuilder.toast(initializer: <ERROR CLASS>.() -> Unit)