{"adoption": {"forks": 540, "observed_at": "2026-08-28T04:08:17.846599+00:00", "stars": 3757}, "canonical_url": "https://ross.abutalabs.com/products/customactivityoncrash", "card": {"archived": false, "artifact_type": "library", "description": "Android library that allows launching a custom activity when your app crashes, instead of showing the hated \"Unfortunately, X has stopped\" dialog.", "domain": ["android-tools", "mobile-development", "developer-tools"], "enriched": true, "function": ["error-handling", "ui-components", "logging"], "health_score": 20, "homepage": null, "language": "Java", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["Ereza/CustomActivityOnCrash"], "name": "Ereza/CustomActivityOnCrash", "platform": ["jvm"], "pushed_at": "2024-05-17T08:29:02+00:00", "repo": "Ereza/CustomActivityOnCrash", "stars": 3757, "tags": ["crash-handler", "android-library", "uncaught-exception", "error-activity", "crash-reporting", "android", "mobile"], "topics": [], "urls": [], "use_cases": ["show a custom screen when my android app crashes", "replace the unfortunately app has stopped dialog", "let users restart the app after a crash", "collect crash details in a custom error activity", "combine a custom crash screen with Firebase Crashlytics", "silently handle crashes that happen in the background"], "what_it_is": "An Android library that launches a custom error activity when the app crashes, replacing the default 'Unfortunately, X has stopped' system dialog. It is configurable via a builder API and can be combined with crash reporters like Firebase Crashlytics or ACRA.", "when_to_avoid": ["you only need crash reporting/analytics without a custom UI - use Crashlytics or ACRA alone", "you are not building an Android app", "you need a cross-platform crash handler covering iOS or desktop"], "when_to_choose": ["you want a branded, user-friendly crash screen on Android instead of the system dialog", "you need configurable crash behavior such as restart buttons, error details, or background crash modes", "you already use Crashlytics or ACRA and want to add a custom UI on top"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/customactivityoncrash", "repo": "Ereza/CustomActivityOnCrash", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:17.846599+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:28:55.610241+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c227bd798dc53b22c0b3f3db0ef34b0895a32c9a513aef7561e302c080e9cd8e", "fetched_at": "2026-08-28T04:08:17.846599+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Ereza/CustomActivityOnCrash"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4443, "days_push": 838, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}