Tôi muốn biết liệu có cách nào để bảo Android cài đặt ứng dụng trên thẻ micro SD theo mặc định thay vì phải tải ứng dụng vào bộ nhớ trong trước và sau đó phải di chuyển chúng sang thẻ SD theo cách thủ công.
Cảm ơn
Tôi muốn biết liệu có cách nào để bảo Android cài đặt ứng dụng trên thẻ micro SD theo mặc định thay vì phải tải ứng dụng vào bộ nhớ trong trước và sau đó phải di chuyển chúng sang thẻ SD theo cách thủ công.
Cảm ơn
Câu trả lời:
Bài viết này tại HowtoGeek mô tả một cách có thể sử dụng adb :
adb shell pm setInstallLocation 2
adb shell pm set-install-location 2
)Lệnh này sẽ đặt mục tiêu cài đặt mặc định của thiết bị thành SDCard của bạn. Điều đó không nhất thiết có nghĩa là mọi thứ được cài đặt ở đó: chỉ các ứng dụng hỗ trợ này sẽ xuất hiện ở đó và các nhà phát triển có thể "ghi đè" điều này trong bảng kê khai ứng dụng của họ nếu họ nghĩ cần thiết. Từ tham chiếu API được liên kết :
Thay đổi vị trí cài đặt mặc định. Giá trị vị trí:
0
: Tự động cho phép hệ thống quyết định vị trí tốt nhất.1
: Cài đặt nội bộ trên bộ lưu trữ thiết bị nội bộ.2
: Cài đặt bên ngoài trên phương tiện truyền thông bên ngoài.Lưu ý: Điều này chỉ dành cho gỡ lỗi; sử dụng điều này có thể khiến các ứng dụng bị phá vỡ và các hành vi không mong muốn khác.
Để biết thêm chi tiết về ADB và cách bạn có thể lấy phiên bản tối thiểu của nó cho máy tính của mình (không cần cài đặt toàn bộ SDK), bạn có thể xem qua thẻ adb -wiki .
Cập nhật: Để tránh nhầm lẫn với câu trả lời của t0mm13b , một số giải phóng mặt bằng trong quá trình cài đặt:
/data/local
, tức là đến bạn nội bộ lưu trữ . Bạn không thể thay đổi điều đó..apk
nó sẽ được cài đặt tự động. Ở đâu, phụ thuộc vào nhiều thứ:
android:installLocation
tính trong ứng dụng của mình Manifest
, ứng dụng sẽ được cài đặt vào câu chuyện nội bộ. Dừng hoàn toàn, không có lựa chọn nào khác (xem: Tham chiếu API ).android:installLocation
được đặt thành preferExternal
và bộ nhớ ngoài khả dụng, nó sẽ đến đó.auto
, nó lại phụ thuộc:
Điều đó không thể thay đổi! Đó là cách Android hoạt động.
Tất cả các tải xuống từ Google Play sẽ chuyển đến hệ thống tệp nội bộ, sau đó từ:
Nếu nút Move to SDCard bị vô hiệu hóa hoặc bị mờ đi, có lẽ nó sẽ ngăn ứng dụng hoạt động - chẳng hạn như các widget của riêng chúng trên màn hình chính.
Ngoài ra, xem câu trả lời này trong thanh bên liên quan ở bên phải của trang này. :)
android:installLocation="auto"
Chưa thấy adb shell pm setInstallLocation 2
, có lẽ bạn chỉ định tên gói trong trường hợp đó ...
Manifest
nói "tự động", đó là nơi nó đi. Nếu Manifest
nói khác với "tự động", nó đi đến nơi Manifest
nói. Xem thêm: API ref , cũng ở đây để biết lệnh pm set-install-location
(cú pháp mới).
android:installLocation
- thực sự cho phép di chuyển để SDCard từ các cài đặt ứng dụng quản lý ... một số nhà phát triển không chỉ định nó và làm cho nút bị vô hiệu hoá nhưng tôi thừa nhận - không bao giờ nhìn thấy các lệnh adb để làm điều đó một trong hai
/data/local
và từ đó ứng dụng được cài đặt. Nhưng tùy thuộc vào cài đặt và bảng kê khai, nó được cài đặt vào bên trong hoặc trực tiếp ra bên ngoài từ đó. // Nếu bạn muốn thảo luận chi tiết về điều này: bạn có nhớ quán rượu của chúng tôi, ahem, trò chuyện không? :)
Cài đặt "Trình mô phỏng đầu cuối cho Android" trong điện thoại di động của bạn và mở
$ su
# pm get-install-location
0[auto]
# pm set-install-location 2
# pm get-install-location
2[external]
Chuyển đến "Quản lý ứng dụng" và sau đó chọn tab "Tất cả" và tìm "Cửa hàng Google Play". Chạm vào nó và sau đó nhấn nút "Gỡ cài đặt cập nhật". Sau đó, hãy đến Cửa hàng Play, tất cả các ứng dụng sẽ được cài đặt trên Thẻ SD của bạn. Đây là những gì tôi đã làm trên QMobile A110 (Android 4.2).
Điều này là bạn có thể thay đổi thư mục cài đặt mặc định nếu điện thoại của bạn đã được root. Tải về patcher may mắn và chạm vào các công cụ ở đó bạn có thể tìm thấy tùy chọn để thay đổi directort cài đặt mặc định. ** Không làm điều này cho Android 4 trở lên hoặc nó có thể gây ra thay đổi không thể đảo ngược. **