スマートフォンのアプリのデータをadbコマンドを使用して移行しました


My Redmine

原田です。今回は少し前に購入したスマートフォン(以下「スマホ」と省略します)に古いスマホのデータを移行しましたので手順の一部をご紹介します。

スマホを買い替えた理由

私の場合「電話を掛ける」「メールを読む」「調べ物をする」がスマホの主な使い道です。そのためスマホが使えなくなる(壊れる)まで買い替える気はありませんでした。

すでにメーカーサポートが終了していることでAndroid OSを8.0からアップデートできず、一部のアプリケーション(以下「アプリ」と省略します)もアップデートできない状況でしたが、仕事で利用しているSlackから以下の通知が届いたことがスマホの買い替えを決断する大きな理由になりました。


SlackからのAndroid 9以降にアップデートすることをおすすめする通知

ちなみに私のスマホ購入時の第一条件は、FeliCaを使用した「おサイフケータイ」が利用可能であることです(無意識に使っていますけど便利です)。そのためどうしてもAndroid端末を購入することになります。(iPhoneでもFeliCaが利用できればうれしいのですけど)

新旧スマホのデータ移行

今回データを移行した新旧スマホは次の2台です。


左:旧(Xperia XZ)、右:新(Xperia 5 III)

Xperiaでは転送ツール「Xperia Transfer 2」が利用できます。これを利用してアプリを新スマホにインストールしたり、アドレス(電話帳)データなどが移行できます。


Xperia Transfer 2

このツールを使用してもアプリのデータは移行できないようでした。ただし最近のアプリはアプリ提供元が(クラウド上に)データを管理していることが多く、IDとパスワードなどを指定することでこれらのデータにアクセスするため移行作業そのものが不要になる場合があります。これによりスマホを買い替えてもアプリは継続して利用できるため便利です。L*NEや***Payや+メッセージなどは移行の手順が公開されており、手順通りに操作することでデータ移行できます。

しかしこれらの方法を使用してデータが移行できないアプリがあります。私の場合は、数独(ナンプレ)や古いアプリが移行できませんでした。いろいろ調べるとGoogleが公開しているコマンドラインツール(adbコマンド)を使用すると移行できる場合があるようなので試してみました。

adbコマンドを使用してアプリのデータを移行(バックアップ・リストア)します

以下のような手順で旧スマホのアプリのデータをバックアップし、新スマホに復元(リストア)しました。(リストアする前に新スマホにアプリをインストールしておいてください)

  1. Android SDK Platform-Tools をPC(当方所有のWindows10 32bit)にインストール

    https://developer.android.com/studio/releases/platform-tools?hl=ja からご利用環境用の SDK Platform-Tools をダウンロードし、インストールしてください。

  2. スマホのUSBデバックモードを有効にしてPCとUSBケーブルで接続

    今回はPCからスマホに対してコマンド操作を行うため、事前にスマホの開発者向けオプション(Xperiaの場合)でUSBデバックモードを有効にしておく必要があります。(作業終了時はデバッグモードを無効にしてください)


    USBデバッグモードの有効化(Xperiaの場合)
  3. 旧スマホ:アプリ(パッケージ名)の一覧取得

    アプリはパッケージ名で管理されています。このパッケージ名はアプリデータのバックアップ時に必要になりますので adb shell pm list packages -3 -e を実行し取得しておきます。アプリがインストールされていれば新スマホ内のパッケージ名も同じです。


    PC:パッケージ名の取得(パッケージ数が多いので数独アプリに限定しています)

    パッケージ名を確認してもアプリの名前と一致しません。私の場合は地道にインターネット検索して紐付けました。

  4. 旧スマホ:アプリデータのバックアップ

    上記3でアプリのパッケージ名が確認できましたので、 adb backup -f <バックアップファイル名> -obb <アプリのパッケージ名> を実行し、アプリデータのバックアップを取得します。


    PC:バックアップコマンドの実行

    adb backupコマンドを実行すると、旧スマホに以下のような確認画面が表示されます。「データをバックアップ」をクリックしてください。


    旧スマホ:バックアップの確認
  5. 新スマホ:アプリデータのリストア(復元)

    adb restore <バックアップファイル名> を実行し、上記4のバックアップデータ(ファイル)を新スマホに復元します。


    PC:リストアコマンドの実行

    adb restoreコマンドを実行すると、新スマホに以下のような確認画面が表示されます。「データを復元する」をクリックしてください。


    新スマホ:復元の確認

数年ごとに実施しますが次回はこのやり方が使えるか分かりません

IT技術の進歩もありますので、今回実施したデータ移行方法が次回も使えるかは分かりません。たぶん次回実施する時は新たに移行方法を調査するのではないかと思います。(何も考えずにすんなり移行できれば一番いいのですけどね)


新スマホに移行した数独アプリ

新スマホの画面

【お知らせ】
弊社ではAWSを活用したソリューションの企画・設計・構築・運用や、Ruby on Rails・JavaScriptフレームワークなどを使用したアプリケーション開発を行うスタッフを募集しています。詳細はこちら
弊社での勤務に関心をお持ちの方は、知り合いの弊社社員・関係者を通じてご連絡ください。


こちらの記事もオススメです!
Rails7.0にアプリケーションをアップデートしています
社内で開発中のRuby on RailsアプリケーションをVer6.1系からVer7.0系にアップデートした手順の一部をご紹介します。
社内セキュリティ教育の教材として調査報告書(つるぎ町立半田病院様公開文書)を採用してみました
半田病院様の調査報告書を教材にしてISMS推進チームの教育を実施しました。
Redmine 5.0 の新機能で仕事の効率が上がりました
Redmine 5.0で追加された「チケットのオートウォッチ」「メンション」などの機能が便利です。
github.com/redmine/redmine の運用を引き継いだ
RedmineのGitHub上のミラーリポジトリの運用をファーエンドテクノロジーが引き継ぎました。
Ubuntuの仮想環境を構築・管理できる「Multipass」を使ってみた
Multipassは、Ubuntuの仮想環境を構築し管理することができるソフトウェア。そのメリットとデメリット。
ファーエンドテクノロジーからのお知らせ(2024/04/24更新)
入門Redmine 第6版 出版記念企画セミナー「Redmineのアクセス制御」【2024/5/30開催】
入門Redmine 第6版(2024年3月23日発売)の書籍から「Redmineのアクセス制御」について解説します。
My Redmine 初回ご契約で「入門Redmine 第6版」プレゼントのお知らせ
Redmineのクラウドサービス「My Redmine」を初めてご契約いただいたお客様にRedmine解説書「入門Redmine 第6版」を進呈いたします。
2024年度ブランドパートナーに島根県在住のモデル ユイさんを継続起用
ユイさん(モデルスタジオミューズ所属)をファーエンドテクノロジーの2024年度ブランドパートナーとして継続して起用します。
My Redmine スタンダードプランおよびAdminサポートデスクプランの料金改定のお知らせ【2024年4月ご利用分より】
2024年4月ご利用分より、My Redmine スタンダードプラン(民間企業・個人向け及び官公庁向け)とAdminサポートデスクプランの料金を改定いたします。
Redmineの最新情報をメールでお知らせする「Redmine News」配信中
新バージョンやセキュリティ修正のリリース情報、そのほか最新情報を迅速にお届け