Linux MintでADBを使いAPKを抽出し、ZIPで共有・インストールするまでの手順まとめ

contents 5
  1. 01 抽出側(あなたのPCでの作業)
  2. 02 インストール側(友人の端末での作業)
  3. 03 ポイント
  4. 04 まとめ
  5. 05 参考文献

オフラインの端末に入れたいという要望があったため、手元のAndroid端末からAPKを抽出し、ZIPにまとめて共有する方法を記録します。


抽出側(あなたのPCでの作業)

ADB導入

sudo apt update
sudo apt install -y android-tools-adb android-tools-fastboot

端末準備

  • Android側で「開発者向けオプション」→「USBデバッグ」を有効化します。
  • 接続後にRSA認証を許可します。

パッケージのパスを確認

adb shell pm path <パッケージ>

出力例として、base.apksplit_asset_pack.apksplit_config.arm64_v8a.apk が表示されます。

APKを抽出

mkdir -p ~/apk-dump/target-app
cd ~/apk-dump/target-app

for p in $(adb shell pm path <パッケージ> | sed 's/package://'); do
  adb pull "$p"
done

ZIPにまとめる

zip target_app.zip base.apk split_asset_pack.apk split_config.arm64_v8a.apk

Google Driveで共有

target_app.zip をDriveにアップロードし、共有リンクを発行します。


インストール側(友人の端末での作業)

方法A: SAI(Split APKs Installer)を使う(推奨)

  1. Split APKs Installer(SAI) を用意します(※今回は以前adbで入れたものを利用しましたが、通常はGoogle Playストアからインストール可能です)。
  2. 共有された target_app.zip を端末にダウンロードします。
  3. SAIを開き、Installerタブ → Install APKs を選択します。
  4. target_app.zip を指定してインストールします。

方法B: PC + ADBでインストール

  1. ZIPを解凍し、3つのAPKを同じフォルダに配置します。
  2. USBデバッグを有効化した端末を接続します。
  3. 以下を実行します:
adb install-multiple -r base.apk split_asset_pack.apk split_config.arm64_v8a.apk

ポイント

  • 3つのファイルすべてが必要です。どれか一つでも欠けると正常に起動しません。
  • 署名は正規のまま保持されるため安全です。ただし、Google Playストアより古いバージョンはインストールできません。
  • ZIPのままSAIで選択すると、簡潔に処理できます。

まとめ

Linux MintでADBを導入し、対象アプリを抽出した後、3つのAPKをZIP化してGoogle Driveで共有し、友人側はSAIでZIPをそのままインストールする流れで、手元のアプリを安全に他者端末へ渡すことが可能になります。


参考文献

share Twitter Facebook