thunderbird / thunderbird/thunderbird-android
Crash on "Add to Contacts" when no contacts app is available
@wmontwe is already working on this.
Since Sep 16, 2026.
- Dominant language
- Kotlin
- Stars
- 14k
- Forks
- 2.8k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 57
Description
Checklist
- I have used the search function to see if someone else has already submitted the same bug report.
- I will describe the problem with as much detail as possible.
App
Thunderbird for Android
App version
22.0
Where did you get the app from?
F-Droid
Android version
Android 11 (BOOX OS)
Device model
Leaf3
Steps to reproduce
- Use a device without a Contacts app (e.g., Boox e-reader).
- Open a message.
- Tap "Add to contacts".
- App crashes.
Expected behavior
Show a user-friendly message (e.g., a Snackbar) if no contacts app is available.
Actual behavior
App crashes
Logs
AndroidRuntime: FATAL EXCEPTION: main
AndroidRuntime: Process: net.thunderbird.android, PID: 15405
AndroidRuntime: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.INSERT_OR_EDIT typ=vnd.android.cursor.item/contact flg=0x10080000 (has extras) }
AndroidRuntime: at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2072)
AndroidRuntime: at android.app.Instrumentation.execStartActivity(Instrumentation.java:1728)
AndroidRuntime: at android.app.Activity.startActivityForResult(Activity.java:5324)
AndroidRuntime: at androidx.activity.ComponentActivity.startActivityForResult(r8-map-id-078b0aa973d4f4c25c169e0369dc0e83184f668aa32ad228232021d32bdd57aa:8)
AndroidRuntime: at android.app.Activity.startActivityForResult(Activity.java:5282)
AndroidRuntime: at androidx.activity.ComponentActivity.startActivityForResult(r8-map-id-078b0aa973d4f4c25c169e0369dc0e83184f668aa32ad228232021d32bdd57aa:4)
AndroidRuntime: at android.app.Activity.startActivity(Activity.java:5668)
AndroidRuntime: at android.app.Activity.startActivity(Activity.java:5621)
AndroidRuntime: at com.fsck.k9.ui.messagedetails.MessageDetailsFragment$overflowClickEventHook$1.onClick(r8-map-id-078b0aa973d4f4c25c169e0369dc0e83184f668aa32ad228232021d32bdd57aa:232)
AndroidRuntime: at com.google.android.material.snackbar.Snackbar$$ExternalSyntheticLambda0.onClick(r8-map-id-078b0aa973d4f4c25c169e0369dc0e83184f668aa32ad228232021d32bdd57aa:66)
AndroidRuntime: at android.view.View.performClick(View.java:7494)
AndroidRuntime: at android.view.View.performClickInternal(View.java:7470)
AndroidRuntime: at android.view.View.access$3600(View.java:830)
AndroidRuntime: at android.view.View$PerformClick.run(View.java:28465)
AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:938)
AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
AndroidRuntime: at android.os.Looper.loop(Looper.java:223)
AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7873)
AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:952)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.