Releases: Ereza/CustomActivityOnCrash
2.4.0
- New installation instructions, please review them if you are using Firebase: an additional step is required in this case. Closes #75, #80.
- Bump
minSdkVersion
to 16. - Catch exceptions thrown by
EventListener
so we don't crash while a crash is occurring. Closes #71. - Hide the app build date if it's before 1990. Since recent Gradle versions do not set this attribute anymore, I'm considering removing it in future releases.
- New
CustomCrashDataCollector
interface that allows specifying a class that will be invoked when a crash occurs in order to get additional data to be shown in the "error details" screen. Also added a new methodCustomActivityOnCrash.getCustomCrashDataFromIntent(Intent)
to retrieve the custom crash data reported by theCustomCrashDataCollector
. Thanks @akallabeth for PR #77.
2.3.0
- Migrated to AndroidX and latest dependencies.
- When launching an activity and using the "silent" crash mode for background crashes, the library detected the app as in background and crashed silently. A new mechanism has been introduced: if a crash occurs less than 500 ms after an activity has been created, the app is considered in foreground and the error activity is shown instead of crashing silently. Closes #44.
- A more trustworthy method of detecting possible restart loops has been implemented (if a crash somehow occurs in the error activity process, the library does not intercept it).
- Added a null check to
getConfigFromIntent
. Closes #56. - Added OS version to the error details. Closes #57.
2.2.0
2.1.0
2.0.0
- Library initialization no longer needed! Now it is automatic.
- Fixed issue that caused Firebase Crash Reporting-enabled apps to not receive any crash report on Firebase. Closes #28.
- Changed initialization of the library config to use the Builder pattern.
- New crash mode for background crashes: "crash" (crashes normally when in background).
- Library now depends on AppCompat, therefore eliminating all theme compatibility issues. minSdkVersion is now 14. Closes #26, #30.
- New activity log (optional), thanks @bourmhe! Closes #27.
1.5.0
-Merged #17 (thanks again @alorma!)
-Fixed an issue when logging the results of getAllErrorDetailsFromIntent
(#18).
-Fixed an issue that made the library not work when other applications on the device declare the ERROR or RESTART intent filters (#21)
-The library checks for restart loops by setting a shared preference with the most recent crash timestamp. If another crash occurs in less than 2 seconds, the library assumes it's a restart loop and uses the default exception handler in order to stop it from infinitely restarting (#19).
-The library now uses the default exception handler when an error occurs in Application or error activity classes, or when a restart loop is detected.
1.4.0
1.3.0
-Activity stack is now correctly cleared when invoking the error activity or restarting the app (thanks @hongyangAndroid for pointing it out on #9!)
-Now only one process is run at a time, so there is no possibility of multiple Application
instances running at the same time, fixes #8.
-Deprecated methods have been removed.
1.2.0
-Restart and error activity now settable via intent-filter (thanks @AizazAZ, @alorma), closes #5
-If the restart activity is not specified, it is automatically guessed via PackageManager.getLaunchIntentForPackage()
(thanks @AizazAZ), closes #4
-Some methods have been deprecated, they will be removed in the next version.