水たまりは希望を写している

【Android】COCOA の継続使用日数をほかの端末に引き継ぐ

最近全く話題に挙がらなくなった新型コロナウイルス接触確認アプリ (COCOA) だが、今でも使用を続けている人も居るだろう。僕もその一人だ。リリース後すぐにインストールした人は、もう少しで 1 年半くらい継続使用していることになる

スマホを機種変更することになったが、COCOA には “引き継ぎ” という仕組みはないため、継続使用日数がリセットされてしまう。ちょっと残念。

しかし、Android にはまるごとアプリ内データをバックアップ・復元できる機能がある。今回はこの機能を用いて、COCOA の継続使用日数をほかの端末に引き継いでみよう

必要なもの

旧端末で COCOA のデータをバックアップ

旧端末で COCOA のデータをバックアップする。まずは旧端末で開発者向けオプションの中にある「USB デバッグ」をオンにする。

パソコンと接続し、ターミナルとかコマンドプロンプトとかを使用して Android Debug Bridge (ADB) にて以下のコマンドを実行する。

adb backup jp.go.mhlw.covid19radar

すると端末の方で「フルバックアップ」という画面に移動するので、任意のパスワードを設定して「データをバックアップ」をタップする。バックアップし終えると、カレントディレクトリに backup.ab というファイルが生成される。これが COCOA のデータになる。

新端末で COCOA のデータを復元

あらかじめ COCOA 自体は Google Play ストアからインストールしておくこと。

新端末で COCOA のデータを復元する。まずは新端末で 開発者向けオプションの中にある「USB デバッグ」をオンにする。

パソコンと接続し、ターミナルとかコマンドプロンプトとかを使用して Android Debug Bridge (ADB) にて以下のコマンドを実行する。

adb restore backup.ab

すると端末の方で「完全な復元」という画面に移動するので、先ほど設定したパスワードを入力して「データを復元する」をタップする。

あとは COCOA を起動して、ちゃんと継続使用日数が引き継がれているか確認するだけ。初回の起動は上の画像のように Exposure Notifications System をオンにするかどうかのダイアログが開かれるはずなので「ON にする」をタップする。

あくまでも日数が引き継がれるだけで過去 14 日間の接触の記録が引き継げるわけではない (OS 側で管理されてるので)。

将来的にできなくなる (かも?)

adb backup / adb restore コマンドを実行すると「非推奨だし今後のリリースで削除されるよ」という文言が表示される。2019 年にこの変更がコミットされてるけど、今のことろ問題無く使えるし、最新バージョンの Android 12 でも使えた。フルバックアップがなくなってしまうとルート化してない端末でのバックアップが絶望的になるので、できれば残してもらいたいよね……。