Tôi đang sử dụng phương pháp freeStorageAndNotify()
với sự cho phép android.permission.CLEAR_APP_CACHE
để xóa bộ đệm ẩn của tất cả các ứng dụng đã cài đặt. Nhưng phương pháp bắt đầu ném InvocationTargetException
từ phiên bản android marshmallow 6.0. Sau khi googling các vấn đề tôi tìm thấy cùng một vấn đề được báo cáo ở đây: Android M reflection method freeStorageAndNotify exception Vì vậy, ở đây kết luận là, freeStorageAndNotify()
ngừng hoạt động kể từ khi google đã nâng cấp chữ ký của phương pháp bây giờ để chữ ký | hệ thống. Nhưng bây giờ câu hỏi là làm thế nào các ứng dụng của bên thứ ba khác như 'Làm sạch tổng thể' vẫn có thể xóa bộ đệm ẩn của tất cả các ứng dụng đã cài đặt bằng cách cho phép người dùng truy cập cho thiết bị 6.0?Xóa bộ nhớ cache hệ thống trên android 6.0
Trả lời
Trình dọn dẹp hệ thống tôi đang sử dụng có quyền truy cập vào các quyền STORAGE. Quyền này cho phép ứng dụng xóa tất cả dữ liệu trong thư mục lưu trữ bên ngoài được chia sẻ.
http://developer.android.com/reference/android/Manifest.permission_group.html#STORAGE
Tôi không nghĩ rằng bất kỳ ứng dụng của bên thứ 3 thực sự có thể rõ ràng hệ thống bộ nhớ cache nữa trừ khi thiết bị được cắm rễ và các ứng dụng được thiết kế cho các thiết bị bắt rễ.
Tôi biết điều đó. Câu hỏi của tôi là làm thế nào "Clean Master" ứng dụng có thể làm điều đó bằng cách lấy sự cho phép truy cập từ người dùng. – Audumbar
Clean Master chỉ nhận quyền STORAGE. –
Làm sạch Master rõ ràng yêu cầu truy cập STORAGE PERMISSION –
những ứng dụng chỉ làm điều tương tự tất cả các thời gian. sử dụng nó trên một thiết bị cũ và một thiết bị mới kết quả là như nhau. trợ giúp duy nhất tôi đã thấy là họ có thể giết hoặc khởi động lại một số quy trình nền, không phải để làm sạch bộ nhớ cache. do đó không có API nào có thể hạn chế thủ thuật của chúng ..
Tôi không nghĩ rằng 'Làm chủ' thực sự sử dụng Quyền truy cập để xóa bộ nhớ cache của ứng dụng đã cài đặt. Nhưng nếu bạn quan tâm, bạn có thể đạt được mục tiêu này bằng cách sử dụng AccessibilityService
trong đơn đăng ký của mình. Trong lớp học của bạn kéo dài AccessibilityService
bạn có callback này:
@Override
public void onAccessibilityEvent(AccessibilityEvent aEvent) {
AccessibilityNodeInfo rootNode = aEvent.getSource();
//...
}
Ở đây bạn có thể gọi rootNode.findAccessibilityNodeInfosByViewId()
hoặc rootNode.findAccessibilityNodeInfosByText()
, nó sẽ trả lại toàn bộ phù hợp với AccessibilityNodeInfo
đối tượng (sub-node) trong cây. Sau đó, bạn chỉ cần phát hiện trong số đó là Button
(node.getClassName()
) và gọi subNode.performAction(AccessibilityNodeInfo.ACTION_CLICK)
. Trên điện thoại Android M, trước tiên bạn cần mở màn hình App Info
của hệ thống (bạn có thể tìm hướng dẫn tại đây How can I start android application info screen programmatically?) cho ứng dụng cụ thể và theo sơ đồ được mô tả ở trên, thực hiện các nhấp chuột liên tục trên các nút "Lưu trữ" -> "Xóa bộ nhớ cache ".
Để xóa bộ nhớ cache cho tất cả các ứng dụng đã cài đặt, bạn có thể phải lặp qua tất cả các ứng dụng đã cài đặt (List<ApplicationInfo> installedApplications = context.getPackageManager.getInstalledApplications(0);
) và lặp lại quy trình nêu trên.
- 1. Android: Xóa bộ nhớ cache lập trình
- 2. Cách xóa bộ nhớ cache Android
- 3. Xóa bộ nhớ cache trên AWS Redshift
- 4. Xóa bộ nhớ cache Magento
- 5. Truy cập thư mục/bộ nhớ cache trong hệ thống tệp Android
- 6. Làm thế nào để xóa bộ nhớ cache/bộ nhớ đệm in trên MacOSX
- 7. Xóa bộ nhớ cache ActiveRecord
- 8. Xóa bộ nhớ cache NSURLConnection
- 9. Buộc xóa bộ nhớ cache
- 10. Xóa bộ nhớ cache hình ảnh Picasso
- 11. Cách xóa/xóa biến bộ nhớ cache
- 12. Gỡ bỏ bộ nhớ cache khỏi bộ nhớ cache L1 khi xóa L2
- 13. Android Webview - Hoàn toàn xóa bộ nhớ cache
- 14. Xóa bộ nhớ cache cục bộ git
- 15. Trong hệ thống tệp FUSE bộ nhớ
- 16. Bộ nhớ cache bản vẽ Android
- 17. android xóa một số ảnh khỏi bộ nhớ cache Picasso
- 18. Xóa dữ liệu người dùng hoặc Xóa bộ nhớ cache trên Phonegap android
- 19. Ngăn chặn dữ liệu bộ nhớ cache trên Android WebView
- 20. Cách xóa Bộ nhớ Cache của Smarty
- 21. Cách xóa bộ nhớ cache của HttpWebRequest
- 22. Cách xóa bộ nhớ cache của ứng dụng cho tất cả ứng dụng trong Android M?
- 23. Tắt/xóa bộ nhớ cache OleDbConnection
- 24. Xóa bộ nhớ cache của bưu cục
- 25. Chromecast: Cách xóa bộ nhớ cache nhận
- 26. Composer.phar Symfony xóa bộ nhớ cache
- 27. Gọi ajax để xóa bộ nhớ cache
- 28. Lệnh xóa bộ nhớ cache NFS?
- 29. xóa bộ nhớ cache trong Nightmare.js (Electron)
- 30. Android: Chiến lược bộ nhớ cache hình ảnh và bộ nhớ cache kích thước
Ứng dụng Làm sạch chính không sử dụng quyền truy cập. –
Bạn đã thử [xem trộm] (http://www.decompileandroid.com/) vào APK chưa? – kichik
Bạn đã cố xoá thư mục bộ nhớ cache trực tiếp chưa? (Có lẽ bạn cần quyền truy cập bộ nhớ đọc/ghi, nhưng tôi không chắc chắn bạn có thể làm điều đó) –