Có thể sao lưu apk từ một ứng dụng đã cài đặt không?


13

Tôi có một số trò chơi lớn mà tôi không chơi thường xuyên nhưng cũng không muốn xóa. Có thể sao lưu các ứng dụng đó dưới dạng apk để tôi có thể cài đặt ngoại tuyến sau này không? Tôi không nói về việc chỉ sao lưu dữ liệu ứng dụng, nhiều công cụ tồn tại cho mục đích đó. Tôi muốn khả năng cài đặt lại ứng dụng ngoại tuyến sau. Ngoài ra, đây không nhất thiết là một yêu cầu đề xuất ứng dụng, bất kỳ phương pháp nào để đạt được điều này đều ổn với tôi.


1
Android tự động lưu tất cả các tệp apk của các ứng dụng đã cài đặt. Nếu bạn có quyền truy cập root, bạn sẽ có thể nhận APK từ /system/app(ứng dụng hệ thống) hoặc /data/app/(ứng dụng người dùng)
matan129

Tải xuống ứng dụng trợ lý Android từ Play Store. Nó cho phép sao lưu một ứng dụng dưới dạng APK.

Câu trả lời:


18

Một cách rất dễ dàng là ES File Explorer từ Google Play Store. Bạn có thể duyệt đến

  • /system/app thư mục (cho các ứng dụng hệ thống)
  • /data/app thư mục (đối với ứng dụng người dùng; yêu cầu truy cập root)

và sao chép chúng vào của bạn /sdcard(hoặc bất cứ nơi nào khác).

Sao chép nhiều tệp bằng ES File Explorer rất dễ dàng. Chỉ cần giữ một trong các tệp, sau đó đặt dấu kiểm vào tất cả các tệp bạn muốn sao chép. Sau đó duyệt đến thư mục (trên sdcard của bạn) nơi bạn muốn đặt chúng.

Kết nối với máy tính của bạn thông qua cáp usb sẽ cho phép bạn sao lưu nội dung sdcard của mình vào máy tính.

Cập nhật (Truy cập khu vực ứng dụng / dữ liệu được bảo vệ):

Tôi nhận thấy /data/thư mục không thể đọc được. Bạn có thể lấy bất kỳ nội dung nào nếu bạn biết nó theo tên. Tôi sẽ mô tả một giải pháp (cli) để lấy tên và các tệp. Tuy nhiên, các công cụ sao lưu được đề xuất bởi Izzy là cách dễ nhất để đi.

Đây là phương pháp từng bước để có được danh sách các gói và kéo các gói bằng cách sử dụng dòng lệnh:

  1. Tải xuống và Cài đặt gói SDK Android (hoặc xem Có cài đặt ADB tối thiểu không? Cho một giải pháp cần ít không gian hơn, nếu bạn không có ý định phát triển ứng dụng Android). Mặc dù bạn sẽ có quyền truy cập vào mọi thứ trên thế giới (Android), nhưng đừng quá lo lắng ... chỉ cần tập trung vào một mục tiêu ngay lập tức và tất cả các tính năng khác có thể dành cho một ngày khác.

  2. Thêm một đường dẫn đến hai thư mục cài đặt gói này ( [installedpath]/tools[installedpath]/platform-toolsđể cài đặt SDK đầy đủ).

  3. Bây giờ, với Android được cắm qua usb, hãy chạy nó để có danh sách đầy đủ các ứng dụng đã cài đặt:
    $ adb shell 'pm list packages'
    Bây giờ bạn có một danh sách tên của tất cả các ứng dụng cài đặt của bạn.

  4. Sử dụng -ftham số để lấy tên đường dẫn đầy đủ của gói mong muốn bằng cách chỉ định chuỗi tìm kiếm được tìm thấy trong danh sách trước:
    $ adb shell 'pm list packages -f reader'

  5. Bây giờ hãy kéo tên đường dẫn đầy đủ của gói bạn muốn nhận:

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

Các bước có thể phức tạp, nhưng chúng được thực hiện dễ dàng hơn nói. Khi bạn thực hiện nó một vài lần, bạn sẽ thấy rất dễ dàng để kéo bất kỳ ứng dụng nào khỏi thiết bị của mình. Bạn cũng có thể viết một tập lệnh để làm điều này như tiện ích sao lưu cá nhân của riêng bạn.

Mặc dù có các lựa chọn thay thế như được đề cập trong câu trả lời thay thế, tôi thực sự khuyên bạn nên xem xét các tính năng của các lệnh adb bao gồm sao lưu đầy đủ ... tùy chọn cho người dùng chọn chính xác những gì họ muốn sao lưu và ở đâu.

Cài đặt SDK Android đầy đủ sẽ cung cấp quyền truy cập đầy đủ hơn vào các thành phần của thiết bị Android của bạn (từ dòng lệnh).

Nhìn vào các lệnh:

$ adb -help

Nhìn vào phần sao lưu (của màn hình trợ giúp):

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.)

Bạn có thể sử dụng Trình trích xuất sao lưu Android để khám phá tệp sao lưu nén được tạo bởi tiện ích adb.

Khôi phục bản sao lưu cho Android là một lệnh "đơn giản":

$ adb restore <file>

Trình trích xuất sao lưu Android cung cấp một cách để khám phá bản sao lưu và chọn ra các tệp riêng lẻ (chẳng hạn như apk như trong mục tiêu của OP) để lưu trữ hoặc bảo quản.

Gói explorer bao gồm nhiều công cụ đa nền tảng, chẳng hạn như Java, perl và cygwin.

Bạn có thể trích xuất bản sao lưu bằng (sử dụng java extract opton):

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

Ngoài câu trả lời ban đầu của tôi, ứng dụng GUI chính xác nhất để thực hiện câu hỏi cụ thể của OP là AirDroid . Nó miễn phí, cực kỳ thân thiện và trực quan để sử dụng.

Để sử dụng, hãy chạy ứng dụng. Nó cung cấp một địa chỉ IP cục bộ để gõ vào trình duyệt web. Liên kết sẽ cung cấp cho bạn một giao diện người dùng giống với màn hình chính của Android. Nhấp vào biểu tượng "Ứng dụng" và chọn một hoặc nhiều ứng dụng để tải xuống. Bạn có thể cài đặt hoặc cài đặt lại Ứng dụng bằng cùng một giao diện.

Có một số lựa chọn thay thế GUI khác (giao diện người dùng đồ họa), ví dụ QtADB (đa nền tảng) hoặc, đối với người dùng Windows, cũng là Droid Explorer tuyệt vời của thành viên Ryan Conrad của chúng tôi (ví dụ: Sao lưu toàn bộ thiết bị không root ; để biết thêm, cũng xem thẻ adb-wiki của chúng tôi ).


Tôi có thể truy cập các thư mục này mà không cần root điện thoại không?
kBisla

@BlueFlame Có.
LD James

4

Có một số ứng dụng chuyên về chủ đề này. Có lẽ nổi tiếng nhất là AppMonster , mà tôi sử dụng (trong phiên bản Pro) trong nhiều năm nay, rất đáng tin cậy (và rất tích cực dev). Để thay thế và biết thêm chi tiết, xin vui lòng xem tại:


AppMonster có tốt hơn TitaniumBakcup không? Tôi đã sao lưu một ứng dụng trên LG G3 của mình và sao chép bản sao lưu sang điện thoại khác và thử "khôi phục" nó mặc dù nó không thuộc về thiết bị thứ hai và nó đã thất bại.
Shaya

1
@Shaya Không. Tôi muốn nói không có gì tốt hơn TiBu. Và tôi không chắc liệu Grigory có còn tích cực phát triển AppMonster hay không. Tôi không sử dụng nó nữa (mặc dù tôi thực sự thích Grigory, biết cá nhân anh ta).
Izzy

1

Tôi đã cài đặt 'phần mềm chống vi-rút'. Tôi chỉ sao lưu các tệp từ nó và chúng được lưu trữ dưới dạng apks.


1

Mọi người đều đề xuất các phần mềm nguồn đóng ở đây có lẽ là Phần mềm quảng cáo. Bạn nên sử dụng Trình quản lý tệp Ghost Commander có phần Ứng dụng . Sao chép ứng dụng vào bộ nhớ được gắn (có thể truy cập theo thuật ngữ cư sĩ) khá đơn giản.


3
Đối với độc giả: người đăng không đề cập đến nó, tôi cũng không thấy nó phù hợp để chỉnh sửa nó, nhưng ứng dụng liên quan thực sự là một ứng dụng nguồn mở, vì vậy điều đó giải thích lý do tại sao anh ta tranh cãi với phần mềm nguồn đóng.
Firelord

0

Tại sao không sử dụng SD MAID?

Tôi đã sử dụng các công cụ này để sao lưu các ứng dụng Android của mình cho đến nay. Nó nhẹ và dễ sử dụng để tải apk từ các ứng dụng đã cài đặt (không cần root).

Từng bước:

  1. Tải xuống SD MAID từ Google Playstore
  2. Mở menu SD MAID, vuốt từ bên trái.
  3. Chọn AppControl để hiển thị ứng dụng được cài đặt trên điện thoại Android của bạn.
  4. Nhấn vào ứng dụng mà bạn muốn
  5. Sau đó nhấn Xuất khẩu menu .apk
  6. Bạn có được bạn muốn!

BTW, vị trí mặc định của đầu ra (APK) sẽ được lưu trong thư mục Tải xuống (bộ nhớ trong).

Tham khảo Bartolab, Cách xuất tệp APK từ các ứng dụng đã cài đặt trên Android


0

APK Xuất khẩu chỉ tốt cho mục đích đó: chỉ có 112 kB và hoàn toàn miễn phí khi không có quảng cáo hoặc đề xuất trong ứng dụng để có phiên bản pro.


0

Dựa trên câu trả lời từ Mahesh Hegde, tôi có thể xác nhận rằng Total Commander cũng có thể lưu APK của ứng dụng. Nó không yêu cầu root hoặc bất kỳ cài đặt bổ sung.

Trong màn hình chính, có phần "Ứng dụng đã cài đặt". Chỉ cần chọn và sao chép ứng dụng vào bất kỳ thư mục nào trong tab khác.

Ứng dụng có sẵn dưới dạng tải xuống trực tiếp từ nhà phát triển hoặc từ các cửa hàng ứng dụng.


-1

Sau đó sao lưu dữ liệu ứng dụng của bạn sau đó vào Cài đặt-> Ứng dụng -> -> Xóa dữ liệu (Xóa dữ liệu ứng dụng). Sau đó, bạn có thể tải apk cho ứng dụng đã chọn bằng cách sử dụng ứng dụng Chia sẻ / Gửi APK.


1
Trông giống như một thỏa thuận tuyệt vời: để sao lưu ứng dụng, tôi phải xóa dữ liệu của mình? Cảm ơn, nhưng tôi nghi ngờ đó là một cách tiếp cận tốt. Và tại sao cùng một câu trả lời hai lần?
Izzy

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.