Czy można wykonać kopię zapasową apk z zainstalowanej aplikacji?

13

Mam kilka wielkich gier, w które nie gram regularnie, ale nie chcę też ich usuwać. Czy można wykonać kopię zapasową tych aplikacji jako apk, aby móc je później zainstalować offline ? Nie mówię o tworzeniu kopii zapasowych tylko danych aplikacji, istnieje wiele narzędzi do tego celu. Chcę móc ponownie zainstalować aplikację offline później. Ponadto niekoniecznie jest to prośba o sugestię aplikacji, każda metoda osiągnięcia tego jest dla mnie w porządku.

kBisla
źródło
1
Android automatycznie zapisuje wszystkie pliki apk zainstalowanych aplikacji. Jeśli zdarzy ci się mieć dostęp do roota, powinieneś być w stanie uzyskać APK z /system/app(aplikacji systemowych) lub /data/app/(aplikacji użytkownika)
matan129
Pobierz aplikację asystenta na Androida ze Sklepu Play. Pozwala wykonać kopię zapasową aplikacji jako APK.

Odpowiedzi:

18

Bardzo łatwym sposobem jest ES File Explorer ze sklepu Google Play. Możesz przejść do swojego

  • /system/app folder (dla aplikacji systemowych)
  • /data/app folder (dla aplikacji użytkownika; wymaga dostępu do roota)

i skopiuj je do swojego /sdcard(lub gdziekolwiek indziej).

Kopiowanie wielu plików za pomocą ES File Explorera jest bardzo łatwe. Wystarczy długo przytrzymać jeden z plików, a następnie zaznaczyć znaczniki wyboru na wszystkich plikach, które chcesz skopiować. Następnie przejdź do folderu (na karcie SD), w którym chcesz je umieścić.

Podłączenie do komputera za pomocą kabla USB umożliwi utworzenie kopii zapasowej zawartości karty SD na komputerze.

Aktualizacja (dostęp do chronionego obszaru danych / aplikacji):

Zauważyłem, że /data/katalog nie jest czytelny. Możesz pobrać dowolną treść, jeśli znasz ją po imieniu. Opiszę do (CLI) rozwiązanie, aby uzyskać nazwy i pliki. Jednak narzędzia do tworzenia kopii zapasowych sugerowane przez Izzy są najłatwiejszym sposobem.

Jest to metoda krok po kroku, aby uzyskać listę pakietów i pobrać pakiety za pomocą wiersza polecenia:

  1. Pobierz i zainstaluj pakiet Android SDK (lub zobacz Czy jest minimalna instalacja ADB? Dla rozwiązania wymagającego znacznie mniej miejsca, jeśli nie zamierzasz tworzyć aplikacji na Androida). Podczas gdy będziesz mieć dostęp do prawie wszystkiego na świecie (Androida), nie bądź zbyt przesadny ... po prostu skup się na bezpośrednim celu, a wszystkie inne funkcje mogą być na inny dzień.

  2. Dodaj ścieżkę do tych dwóch katalogów instalacji pakietu ( [installedpath]/toolsi [installedpath]/platform-toolsdla pełnej instalacji SDK).

  3. Teraz, gdy Android jest podłączony przez USB, uruchom to, aby uzyskać pełną listę zainstalowanych aplikacji:
    $ adb shell 'pm list packages'
    Masz teraz listę nazw wszystkich zainstalowanych aplikacji.

  4. Użyj tego -fparametru, aby uzyskać pełną nazwę ścieżki żądanego pakietu, podając ciąg wyszukiwania znaleziony na poprzedniej liście:
    $ adb shell 'pm list packages -f reader'

  5. Teraz wyciągnij pełną ścieżkę do pakietu, który chcesz uzyskać:

    ## adb pull [filepathname] [destination path] ##
    $ adb pull /data/app/com.ebooks.ebookreader-2.apk ~/mybackupdir
    

Kroki mogą wydawać się skomplikowane, ale łatwiej je wykonać niż powiedziano. Po wykonaniu go kilka razy bardzo łatwo będzie pobrać dowolną aplikację z urządzenia. Możesz również napisać skrypt, aby to zrobić jako własne narzędzie do tworzenia kopii zapasowych.

Podczas gdy istnieją alternatywne GUI, jak wspomniano w alternatywnej odpowiedzi, zdecydowanie polecam przyjrzenie się funkcjom poleceń adb, które obejmują pełne kopie zapasowe ... opcja dla użytkowników, aby wybrać dokładnie to, co chcą kopii zapasowej i gdzie.

Zainstalowanie pełnego zestawu SDK systemu Android zapewni pełniejszy dostęp do komponentów urządzenia z systemem Android (z wiersza polecenia).

Spójrz na polecenia:

$ adb -help

Spójrz na sekcję tworzenia kopii zapasowych (ekranu pomocy):

adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all] [-system|-nosystem] [<packages...>]

     - write an archive of the device's data to <file>.
     If no -f option is supplied then the data is written
     to "backup.ab" in the current directory.

     (-apk|-noapk enable/disable backup of the .apks themselves
     in the archive; the default is noapk.)

     (-obb|-noobb enable/disable backup of any installed apk expansion
     (aka .obb) files associated with each application; the default
     is noobb.)

     (-shared|-noshared enable/disable backup of the device's
     shared storage / SD card contents; the default is noshared.)

     (-all means to back up all installed applications)

     (-system|-nosystem toggles whether -all automatically includes
     system applications; the default is to include system apps)

     (<packages...> is the list of applications to be backed up.  If
     the -all or -shared flags are passed, then the package
     list is optional.  Applications explicitly given on the
     command line will be included even if -nosystem would
     ordinarily cause them to be omitted.)

Możesz użyć Android Backup Extractor do eksploracji skompresowanego pliku kopii zapasowej utworzonego przez narzędzie adb.

Przywracanie kopii zapasowej w Androidzie jest prostym poleceniem „-restore”:

$ adb restore <file>

Android Backup Extractor umożliwia przeglądanie kopii zapasowej i wybieranie pojedynczych plików (takich jak apk jak w celu PO) do przechowywania lub przechowywania.

Pakiet eksploratora zawiera różnorodne narzędzia wieloplatformowe, takie jak Java, perl i cygwin.

Możesz rozpakować kopię zapasową za pomocą (używając opcji Java Extract Opton):

## this line converts the android backup into a tar file ##
$ java -jar abe.jar unpack backup.ab backup.tar

Poza moją pierwotną odpowiedzią na CLI, najbardziej precyzyjną aplikacją GUI do wykonania konkretnego pytania OP jest AirDroid . Jest darmowy, wyjątkowo przyjazny dla użytkownika i intuicyjny w obsłudze.

Aby użyć, uruchom aplikację. Daje lokalny adres IP do pisania w przeglądarce internetowej. Link da interfejs użytkownika podobny do ekranu głównego systemu Android. Kliknij ikonę „Aplikacje” i wybierz jedną lub więcej aplikacji do pobrania. Możesz zainstalować lub ponownie zainstalować aplikacje przy użyciu tego samego interfejsu.

Dostępnych jest kilka innych alternatyw GUI (graficznych interfejsów użytkownika), np. QtADB (wieloplatformowy) lub, dla użytkowników Windows, także doskonały Droid Explorer naszego członka Ryana Conrada (patrz np. Pełna kopia zapasowa nierootowanych urządzeń ; więcej zobacz także nasz tag adb-wiki ).

LD James
źródło
Czy mogę uzyskać dostęp do tych folderów bez rootowania telefonu?
kBisla,
@BlueFlame Tak.
LD James,
4

Istnieje kilka aplikacji specjalizujących się w tym temacie. Prawdopodobnie najbardziej znanym jest AppMonster , którego używam (w wersji Pro) od lat, bardzo niezawodny (i bardzo aktywny programista). Aby znaleźć alternatywy i więcej szczegółów, spójrz na:

Izzy
źródło
Czy AppMonster jest lepszy od TitaniumBakcup? Utworzyłem kopię zapasową aplikacji na moim telefonie LG G3 i skopiowałem kopię zapasową na inny telefon i próbowałem ją „przywrócić”, chociaż nie należała ona do drugiego urządzenia i zakończyła się niepowodzeniem.
Shayan,
1
@Shayan Nie. Powiedziałbym, że nie ma nic lepszego niż TiBu. I nie jestem pewien, czy Grigory nadal aktywnie rozwija AppMonster. Już go nie używam (chociaż naprawdę lubię Grigoriego, znając go osobiście).
Izzy
1

Mam zainstalowany „średni program antywirusowy”. Po prostu tworzę z niego kopie zapasowe i zapisuję je jako apki.

Uzair
źródło
1

Wszyscy sugerują tutaj oprogramowanie zamknięte, które może być oprogramowaniem reklamowym. Należy raczej użyć Menedżera plików Ghost Commander, który zawiera sekcję Aplikacje . Kopiowanie aplikacji do zamontowanej pamięci (dostępnej dla laika) jest dość proste.

Mahesh Hegde
źródło
3
Dla czytelników: plakat nie wspomniał o tym, ani nie uważałem za stosowne go edytować, ale dana aplikacja jest w rzeczywistości aplikacją typu open source, więc to wyjaśnia, dlaczego argumentował przeciwko oprogramowaniu o zamkniętym źródle.
Firelord
0

Dlaczego nie użyć SD MAID?

Do tej pory korzystałem z tego narzędzia do tworzenia kopii zapasowych aplikacji na Androida. Jest lekki i łatwy w użyciu, aby pobrać apk z zainstalowanych aplikacji (bez konieczności rootowania).

Krok po kroku:

  1. Pobierz SD MAID z Google Playstore
  2. Otwórz menu MAID SD, przeciągnij od lewej strony.
  3. Wybierz AppControl, aby wyświetlić aplikację zainstalowaną na telefonie z Androidem.
  4. Stuknij żądaną aplikację
  5. Następnie dotknij Eksportuje menu .apk
  6. Masz ochotę!

BTW, domyślna lokalizacja wyjścia (APK) zostanie zapisana w folderze pobierania (pamięć wewnętrzna).

Odwołaj się do Bartolab, jak wyeksportować plik APK z zainstalowanych aplikacji na Androida

linuxguy
źródło
0

Istnieje eksport APK, który jest odpowiedni tylko do tego celu: ma tylko 112 kB i jest bezpłatny, bez reklam i sugestii w aplikacji, aby uzyskać wersję pro.

Dmitrij Grigoriew
źródło
0

Na podstawie odpowiedzi Mahesha Hegde'a mogę potwierdzić, że Total Commander może również zapisać APK aplikacji. Nie wymaga rootowania ani żadnych dodatkowych ustawień.

Na ekranie głównym znajduje się sekcja „Zainstalowane aplikacje”. Wystarczy wybrać i skopiować aplikację do dowolnego folderu na drugiej karcie.

Aplikacja jest dostępna do bezpośredniego pobrania od dewelopera lub ze sklepów z aplikacjami.

Alen Siljak
źródło
-1

Następnie wykonaj kopię zapasową danych aplikacji i przejdź do Ustawienia-> Aplikacja -> -> Wyczyść dane (Wyczyść dane aplikacji). Następnie możesz pobrać apk dla wybranej aplikacji za pomocą aplikacji Udostępnianie / wysyłanie APK.

Pradeesh MP
źródło
1
Wygląda na świetną ofertę: aby wykonać kopię zapasową aplikacji, muszę usunąć moje dane? Dzięki, ale wątpię, żeby to było dobre podejście. I dlaczego ta sama odpowiedź dwa razy?
Izzy