thunderbird / thunderbird/thunderbird-android

Crash on "Add to Contacts" when no contacts app is available

Open
#11,548 1 comment 0 reactions 1 assignee View on GitHub

@wmontwe is already working on this.

Since Sep 16, 2026.

tb-team
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
  1. Use a device without a Contacts app (e.g., Boox e-reader).
  2. Open a message.
  3. Tap "Add to contacts".
  4. 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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.