Fatal crash — kills the host app during cold start. Present in 17.2.2 (current release). BlurImageView.a(Bitmap, ArrayList) calls addAll() on its second parameter with no null check. When the SDK passes a null blur list, the host app dies. public void a(Bitmap bitmap, ArrayList blurs) { this.a = bitmap; this.j.clear(); this.j.addAll(blurs); // NPE when blurs == null } This is not fixed by upgrading We disassembled classes.jar from the published AARs for 17.2.0, 17.2.1 and 17.2.2. BlurImageView and its caller com.shakebugs.shake.internal.n9 are bytecode-identical across all three releases. The defect is in the current version. Stack trace java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object[] java.util.Collection.toArray()' on a null object reference at java.util.ArrayList.addAll ( ArrayList.java:760 ) at com.shakebugs.shake.internal.view.BlurImageView.a (SourceFile:6) at com.shakebugs.shake.internal.n9$c.invokeSuspend (SourceFile:4) ... at com.shakebugs.shake.internal.n9.a (SourceFile:5) at androidx.lifecycle.LiveData.considerNotify ( LiveData.java:134 ) at androidx.lifecycle.LiveData.dispatchingValue ( LiveData.java:147 ) Crashed thread: main. Suspected trigger: process-death restore of the markup screen Not reproduced on demand, but the evidence is consistent: BlurImageView appears in exactly one layout in the AAR — shake_sdk_ticket_mark_fragment.xml, the screenshot markup fragment inside ShakeActivity. Both captured crashes happen on a cold start, ~600ms after session_start, with our app's native bootstrap still in flight. Brand-new process, not a user-initiated bug report. The call arrives through a LiveData observer replaying onto a freshly recreated view. Reading: user had the screenshot-markup screen open, Android killed the process, and on task restore ShakeActivity is recreated. The blur list isn't restored, LiveData replays null, and the unguarded addAll kills the app before anything renders. The reason this is severe despite being rare: it fires during our app's cold start, not during a bug-reporting flow. To the user, the app dies on launch for no visible reason. Environment SDK: com.shakebugs:shake:17.2.0 Devices: Samsung SM-S166V, Samsung SM-S908W (ARM64) Config: blackBoxData=false, activityHistoryData=false, consoleLogs=false, invokeShakeOnShakeDeviceEvent=false; screenshots enabled Volume: 2 users over 90 days in production Related Your iOS repo has a similar screenshot-pipeline crash — shake-ios #45, "Screenshot capture crashes with invalid bounds in SwiftUI view." Requested fix Null-guard the parameter in BlurImageView.a(Bitmap, ArrayList) — treating null as "no blurs" turns a fatal crash into a cosmetic loss of blur regions. Better still would be guarding at the source in n9, and checking whether the markup fragment's blur state should survive process death. Happy to provide full Crashlytics exports, breadcrumb logs, and our Shake.start() configuration.