The Google Play Console reports some crashes with the following stacktrace:
Exception java.lang.RuntimeException:
at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3835)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:4011)
at android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2325)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loop (Looper.java:246)
at android.app.ActivityThread.main (ActivityThread.java:8633)
at java.lang.reflect.Method.invoke (Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:602)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1130)
What I consider to be interesting is the fact that this crash only appeared on devices which did not install the application using the Play Store (according to the filter option in the Play Console). This also happens with my latest app version that I do not have published anywhere besides Google Play (5% staged rollout). Only four hours after I submitted the staged rollout, I got a crash report like above, again from an non-google-play installation.
I found another stackoverflow question that also mentions many crashes coming from non-google-play app installations, that also indicates that Firebase Crashlytics would not be able to pick up this sort of crashes that appear on my Play Console. And I also found this question that mentions the exact stacktrace I am getting, but the issue also is not reported with Firebase Crashlytics.
There is no recognizable pattern regarding the device information. I am reported crashes from Samsung, Oppo, Alcatel, Infix, and TCL. The crash only happened on >= Android 10 so far, while the app supports >= Android 5. The crash is reproducible when it appears on a device, so then I get multiple crash reports from the same device in a row.
Do you have any ideas how to further investigate this issue or what could be causing this kind of crashes?
build.gradle(:app)
android {
compileSdkVersion 33
defaultConfig {
applicationId "one.two.three"
minSdkVersion 21
targetSdkVersion 33
versionCode 22
versionName "2.3.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
namespace 'one.two.three'
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar']) //actually redundant, I have no jar libs
implementation 'androidx.preference:preference:1.2.0'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.8.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.vectordrawable:vectordrawable:1.1.0'
implementation 'androidx.recyclerview:recyclerview:1.2.1'
implementation 'androidx.cardview:cardview:1.0.0'
}