[prjkt.io] cyrnel:
Substratum crashes on launch every time. I've been searching for fix but am starting to flail.

I've cleared app data for Substratum without effect. I've uninstalled and reinstalled again without effect.

I'm pretty sure this started after one or another app auto-update, or possibly the latest OTA. (I've since switched off all auto-updates after being burned too many times.)

This is a pixel XL (not 2) running 8.1.0 Jan 5 patch level.

Here's the most recent stacktrace: (I haven't coded in years but looks like something's being stupid - or could be me)

Build version: nine hundred fifteen

Device: Pixel XL (marlin) [google/marlin/marlin:8.1.0/OPM1.171019.012/4470837:user/release-keys]

ROM: 8.1.0 - Unknown

Theme system: OMS (andromeda)

Stack trace:

java.lang.RuntimeException: Canvas: trying to draw too large(115045088bytes) bitmap.

at android.view.DisplayListCanvas.throwIfCannotDraw(DisplayListCanvas.java:229)

at android.view.RecordingCanvas.drawBitmap(RecordingCanvas.java:97)

at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:529)

at android.widget.ImageView.onDraw(ImageView.java:1367)

at android.view.View.draw(View.java:19192)

at android.view.View.updateDisplayListIfDirty(View.java:18142)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.draw(View.java:19195)

at android.view.View.updateDisplayListIfDirty(View.java:18142)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.support.v7.widget.RecyclerView.drawChild(RecyclerView.java:4607)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.draw(View.java:19195)

at android.support.v7.widget.RecyclerView.draw(RecyclerView.java:4013)

at android.view.View.updateDisplayListIfDirty(View.java:18142)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.draw(View.java:19195)

at android.view.View.updateDisplayListIfDirty(View.java:18142)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.support.v4.widget.DrawerLayout.drawChild(DrawerLayout.java:1367)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.draw(View.java:19195)

at android.view.View.updateDisplayListIfDirty(View.java:18142)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.updateDisplayListIfDirty(View.java:18133)

at android.view.View.draw(View.java:18920)

at android.view.ViewGroup.drawChild(ViewGroup.java:4236)

at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)

at android.view.View.draw(View.java:19195)

at com.android.internal.policy.DecorView.draw(DecorView.java:788)

at android.view.View.updateDisplayListIfDirty(View.java:18142)

at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:669)

at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:675)

at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:783)

at android.view.ViewRootImpl.draw(ViewRootImpl.java:2992)

at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2806)

at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2359)

at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1392)

at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6752)

at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)

at android.view.Choreographer.doCallbacks(Choreographer.java:723)

at android.view.Choreographer.doFrame(Choreographer.java:658)

at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897)

at android.os.Handler.handleCallback(Handler.java:790)

at android.os.Handler.dispatchMessage(Handler.java:99)

at android.os.Looper.loop(Looper.java:164)

at android.app.ActivityThread.main(ActivityThread.java:6494)

at java.lang.reflect.Method.invoke(Native Method)

at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)

at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

User actions:

2018-01-10 09:26:03: LauncherActivity created

2018-01-10 09:26:03: SplashScreenActivity created

2018-01-10 09:26:03: SplashScreenActivity resumed

2018-01-10 09:26:03: LauncherActivity destroyed

2018-01-10 09:26:07: SplashScreenActivity paused

2018-01-10 09:26:07: AppIntroActivity created

2018-01-10 09:26:07: AppIntroActivity resumed

2018-01-10 09:26:07: AppIntroActivity paused

2018-01-10 09:26:07: AppIntro created

2018-01-10 09:26:07: AppIntro resumed

2018-01-10 09:26:07: SplashScreenActivity destroyed

2018-01-10 09:26:09: AppIntro paused

2018-01-10 09:26:09: MainActivity created

2018-01-10 09:26:09: MainActivity resumed

2018-01-10 09:26:10: AppIntroActivity destroyed

2018-01-10 09:26:10: AppIntro destroyed