swappable-crash-reporting-and-dialog
Installation
SKILL.md
Two modules, three functions, no interface
The unit of the swap is a module, not a class. Two source modules share one package name and one file name, and each defines the same three top-level functions:
// adapted — reporting module
package com.example.crashreporting
fun configCrashReporting(applicationContext: Context, dsn: String) {
ReportingClient.init(applicationContext) { options -> options.dsn = dsn }
}
fun reportCrash(throwable: Throwable) {
ReportingClient.captureException(throwable)
}