Thunderbird Desktopの設定をスマホへ移行しようとしたところ、Thunderbird for AndroidがQRコードを読み取ってくれませんでした。
画面のテーマを変えたり、アカウントを1件ずつ選んだりしても解決しません。他のユーザーが試していた方法を一つずつ試しましたが、どれもダメでした。
結果から言えば「QRコードへパスワードを含めない」ようにすると読み取れました。
同じようにQRコードへスマホをかざしても反応せず、設定を移行できない方へ向けて、私が試したことと解決した方法を紹介します。
ThunderbirdのQRコードをスマホで読み取れなかった
Thunderbird Desktopに登録しているアカウントをThunderbird for Androidへ移行するため、Desktop側に表示されたQRコードへスマホをかざしました。
しかし、カメラにはQRコードが映っているのに何も反応しません。読み取り成功の表示もエラーメッセージもなく、そのままの状態でした。
QRコードを読み取るために試したこと
とりあえず解決方法を調べましたが、どちらも私の環境では解決できませんでした。
Thunderbirdを明るいテーマへ変更した
明るいテーマへの変更が試されていた[1]ため、Thunderbirdをダークテーマからライトテーマへ変更しました。
QRコードと背景のコントラストは変わりましたが、スマホをかざしても反応はありません。私の事例では、テーマの変更だけでは解決できませんでした。
アカウントを1件ずつ選択した
アカウントを1件ずつ選択して成功した報告[2]がありました。複数のアカウントをまとめて選択すると、QRコードに含まれる情報が多くなるのではないかと考え、移行するアカウントを1件だけ選択してQRコードを生成しました。
それでもスマホ側はQRコードを読み取りませんでした。私の環境では、アカウントを1件ずつ選択しても解決できませんでした。
試してはいないが、報告があった方法
以下は、Web上で見つけた報告です。私自身は試していませんが、同じ問題が続く場合の参考として紹介します。
アカウントの認証方式に空欄がないか確認する
アカウントの「認証方式」が空欄だったため、QRコード内の値がnullになり、Android版で読み取れなかったという報告[3]があります。
認証方式をOAuth2や「通常のパスワード」など、そのメールサービスに合う値へ設定し、Thunderbirdを再起動してからQRコードを作り直すと成功した例[4]がありました。
認証方式はメールサービスによって異なります。読み取りのためだけに、実際の設定と異なる方式へ変更しないよう注意してください。
一般のQRスキャナーで読み取れるか確認する
スマホの標準カメラなど、Thunderbird以外のQRスキャナーで読み取れるか確認する方法もあります。
一般のQRスキャナーでは読めるのにThunderbird for Androidだけが反応しない場合、QRコードの見た目やカメラの問題と、QRコード内の設定データをThunderbirdが受け付けていない問題を切り分けられます。
実際に、標準カメラでは読めてもThunderbird for Androidでは反応しなかった事例が報告[5]されています。
ただし、QRコードにはメールアドレスやパスワードが含まれる場合があります。第三者が運営する解析サイトへQRコードをアップロードするなど、内容が外部へ送信される方法は避けたほうが安全です。
Thunderbirdを新しいバージョンへ更新する
Thunderbird Desktopを更新した後に、QRコードを読み取れるようになったという報告[6]もあります。
「GitHub Issue #8520」では、POP3のGmailアカウントでQRコードを読み取れなかったユーザーが、Desktop版153への更新後にインポートできたと報告しています。
今回の問題にはバージョン固有の不具合も確認されているため、Desktop版とAndroid版の両方が更新可能か確認することも、切り分けのひとつです。
結論:「すべてのアカウントのパスワードを含める」をOFFにすると読み取れた
私の環境では、QRコードの生成時に 「すべてのアカウントのパスワードを含める」をOFF にすると、スマホ側で読み取れました。

手順は次のとおりです。
- Thunderbird Desktopで、スマホへ移行するアカウントを選択する
- 「すべてのアカウントのパスワードを含める」をOFFにする
- 「エクスポート」を押して、QRコードを生成する
- Thunderbird for AndroidでQRコードを読み取る
パスワードをQRコードへ含めなかった場合は、インポート後にスマホ側でパスワードの入力を求められます。これはMozillaの公式サポートにも記載されている動作です。
パスワードを入力する手間は残りますが、アカウントのサーバー設定を最初から手入力するよりは楽でした。
パスワードを含めると読み取れなかった原因は不明
私の環境では、パスワードを含めたときは読み取れず、含めなかったときは読み取れました。ただし、なぜ結果が変わったのかまでは特定できていません。
ThunderbirdのQRコード形式の公式仕様では、パスワードは省略可能です。
また、QRコードが大きくなるほど読み取りにくいため、サイズを抑える考え方も記載されています。パスワードを省略すると情報量は減りますが、それが今回の成功理由だったとは断定できません。
一方、Mozilla Bugzillaでは、保存済みのSMTPパスワードを含めてQRコードを生成すると、パスワード欄が文字列ではなく空オブジェクトになり、Android版がデータを拒否する不具合が報告[7]されています。
この不具合はThunderbird 152と153が影響を受け、ESR 140は影響を受けないとされています。ただし、私が遭遇した問題と同じ原因かは確認できていません。
まとめ
Thunderbird DesktopからThunderbird for Androidへ設定を移行するとき、QRコードへスマホをかざしても何も反応しませんでした。
明るいテーマへの変更や、アカウントを1件ずつ選択する方法では解決しませんでしたが、「すべてのアカウントのパスワードを含める」をOFFにすると読み取れました。
同じ問題で困っている場合は、まずパスワードを含めずにQRコードを生成してみてください。読み取り後にスマホ側でパスワードを入力すれば、設定を進められます。
それでも読み取れない場合は、認証方式の空欄、Thunderbirdのバージョン、一般のQRスキャナーでは読めるかを順に確認すると、原因を切り分けやすくなります。
