以前はLinux Androidバックアップ。
Open Androidバックアップは、ベンダーのロックインなし、またはデータを危険にさらす可能性のあるクローズドソースソフトウェアを使用して、Androidデバイスを安全にバックアップできるようにする小さなシェルスクリプトおよびフラッターアプリです。 ADBに基づいていますが、非推奨adb backupコマンドを使用していません。このプロジェクトは、Windows、MacOS、Linuxで機能します。

重要: masterブランチは開発のために予約されています。ダウンロードをお探しの場合は、リリースに移動するか、代わりにタグを選択してください。
次のデータ型を自動的にデバイスに戻すことができます。
次のデータ型は、7-zipでバックアップアーカイブを開くことによってのみ表示され、現時点ではデバイスに復元できません。
これらのことは、ほとんどの人が安全に保ちたいと思うものの大部分ですが、誰もが異なる期待と要件を持っているので、提案は歓迎されます。
sudo apt update; sudo apt install p7zip-full adb curl whiptail pv bc secure-delete zenity 。 fedoraで、ここからの手順を使用してRPM Sphere Repoを有効にします:https://rpmsphere.github.io/次にこのコマンドを実行するsudo dnf install p7zip p7zip-plugins adb curl newt pv secure-deletebackup.shを実行します。警告:MACOSテストは限られています。遭遇した問題を報告してください。
# Tip: Run these commands in the built-in Terminal app (or iTerm if you have that installed).
# Install Homebrew if you haven't yet
/bin/bash -c " $( curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh ) "
# If you already have Homebrew installed, just run these 2 commands:
brew install --cask android-platform-tools
brew install p7zip pv bash dialog coreutilsInstallステップに従う必要があります。backup-windows.ps1というファイルを右クリックし、[PowerShellで実行]をクリックします。重要:スクリプトを実行した後にエラーが表示された場合は、設定アプリで「開発者設定」を検索し、PowerShellに関連する設定を適用します。また、ファイルのプロパティを開き、「セキュリティ」の横に「ブロックを解除する」ことを確認する必要があります。 
backup.sh (またはWindowsでbackup-windows.ps1 )を実行するだけで、スクリプトがプロセスを進めます。このセクションでは、このプログラムの高度な使用について説明します。
Androidバックアップフックを開くことで、メインスクリプトを変更せずに、特定のデバイスでのみルートや作業を必要とするものなど、独自のバックアップステップを簡単に含めることができます。これらのフックを自分のGitHubリポジトリにアップロードして、他の人と共有できます。
ユーザー向けの情報
使用したいフックを書き込んだりダウンロードした後、 hooks.shに変更して、このスクリプトと同じディレクトリに配置します。次に、スクリプトが尋ねるときにフックを使用してください。
セキュリティ意識のための情報
あなたが信頼していないフックを使用することは、私たちが責任を主張しないセキュリティリスクです!携帯電話やコンピューターにAndroidバックアップを開いているのと同じアクセスがあり、攻撃者がバックドアやデバイスを拭くことができるようになります。スクリプトを実行する前に、使用したいフックの内容を確認する必要があります。
Androidバックアップを開くことは自動的にフックをロードしません。プログラムに触れる前に、フックを使用する必要があります。
開発者向けの情報
ガイドライン- これらに従って、バックアップを将来的に説明してください。
./backup-tmp/Hooks/<hook name>/に保存し、何かをする前に必ずディレクトリを作成してください。./backup-tmpに抽出されます)。これにより、フックはバニラバックアップアーカイブで動作できます。$backup_archiveを使用してバックアップアーカイブパスを取得できます。有用な機能とコマンド
cecho <text>では、黄色の端子出力を使用できます。wait_for_enterキープレスを待ち、無人モードと互換性があります。get_file <phone_directory> <phone_file> <destination> adb pullの代替品である最良の信頼性と速度でファイルをデバイスからコピーできます。データのバックアップに役立ちます。adb push <file> <destination>データを復元するときに役立つファイルをデバイスにアップロードできます。必要な関数
スクリプトによって適切に初期化されるには、フックに3つの機能が必要です。
after_backup_hookバックアップが完了した後に実行されるコード、つまり、すべてがバックアップアーカイブに圧縮された後。backup_hook内部ストレージ、アプリ、連絡先、その他のデータがデバイスからコピーされた後に実行されるコード。restore_hook復元プロセス中に実行されるコードで、以前にバックアップしたデータを復元できます。このプロジェクトには自動化に対する最小限のサポートがあり、サポートはほとんど提供されないことに注意してください。連絡先をエクスポートするには、コンパニオンアプリの「無人モード」としてバックアップしているデバイスに物理的にアクセスする必要があります。
ユーザー入力なしでスクリプトが行うことを制御する10の環境変数があります。
unattended_modeキープレスを待つ代わりに、5秒間寝ます。あらゆる価値にすることができます。selected_action実行時にスクリプトがすべきこと。考えられる値はBackupとRestore (ケースに敏感です)です。archive_pathバックアップへのパス。復元アクションとバックアップアクションの両方で機能します。archive_passwordバックアップパスワード。mode - スクリプトがデバイスに接続する方法。考えられる値はWiredでWirelessです(ケースセンシティブ)。export_method -Androidバックアップを開くメソッドは、デバイスからのデータをエクスポートするために使用する必要があります。考えられる値はtarとadb (ケースセンシティブ)です - 前者は高速で非常に安定していますが、すべてのデバイスでは機能しない可能性があり、後者は広く互換性がありますが、安定性の問題があります。use_hooksフックを使用するかどうか。考えられる値はyesまたはnoです(ケースに敏感)。data_erase_choice一時的なファイルを安全に消去するかどうか。可能な値はFast 、 Slow 、 Extra Slowです(ケースに敏感です)。この変数の値は、コンピューターにコマンドsrmが存在しない場合、無視されます。discouraged_disable_archiveバックアップアーカイブの作成を無効にし、圧縮、暗号化、またはその他の機能を持たないバックアップディレクトリのみを作成します。これはお勧めしませんが、バックアップを延期してスペースを節約するのに役立つと思われる人もいます。このオプションを有効にして作成したバックアップの復元は、デフォルトではサポートされていません。バックアップディレクトリからアーカイブを手動で作成してから復元する必要があります。考えられる値はyesまたはnoです(ケースに敏感)。compression_level 0、1、3、5、7、9のいずれか。ここで、9は最も遅い接続であり、0は圧縮がなく、最速のレベルです。データのほとんどがすでに圧縮されている場合、たとえばJPGの写真やMP3ビデオなど、それを圧縮して大量のボリュームを失うことはありません。例:
# Enable unattended mode, backup the device over the wire to the working directory and use the password "123"
$ unattended_mode= " yes " selected_action= " Backup " mode= " Wired " export_method= " tar " archive_path= " . " archive_password= " 123 " ./backup.sh
# Keep unattended mode disabled, but automatically use the password "456"
$ archive_password= " 456 " ./backup.shget.openandroidbackup.meコンビニエンススクリプトは、インターネットから未検証コードの実行に関連する潜在的なセキュリティへの影響と、さまざまなシステム構成の限られたサポートに関連する潜在的なセキュリティの影響により、非推奨です。代わりに、公式の使用手順を使用してください。
スクリプトの削除は2024年4月に計画されていますが、かなりの数の人々がまだ使用している場合は長く留まることがあります。
注:これを行う必要はありません。これは、GitHubリリースからの実行時に、Precompiled Companionアプリが自動的にダウンロードされるためです。
flutter doctorとflutter doctor --android-licenses実行します。cd companion_app/およびflutter build apkを実行します。 PRをありがとう。
このプログラムはフリーソフトウェアです。フリーソフトウェアファンデーションの条件、ライセンスのバージョン3、または(オプションで)後のバージョンのいずれかで公開されているように、GNU一般公開ライセンスの条件の下でそれを再配布したり、変更したりできます。
このプログラムは、それが有用であることを期待して配布されますが、保証はありません。商品性や特定の目的に対するフィットネスの暗黙の保証さえありません。詳細については、GNU一般公開ライセンスを参照してください。
このプログラムとともに、GNU一般公開ライセンスのコピーを受け取る必要があります。そうでない場合は、https://www.gnu.org/licenses/を参照してください。