23

Cho đến khi API cấp 22 (tức là đến Lollipop), đã có cách đọc Lịch sử và Dấu trang từ ứng dụng Chrome (như được hiển thị trong this thread) bằng cách sử dụng sự cho phép com.android.browser.permission.READ_HISTORY_BOOKMARKS.Cách tải Lịch sử & Dấu trang của Chrome trong Android Marshmallow (API> = 23)?

Hiện tại, trong Android API = 23 Marshmallow, vì toàn bộ hệ thống Trình duyệt Dấu trang đã bị xóa trong Marshmallow (changes here), phương thức trên không hoạt động nữa.

Here is the thread cho biết lý do tại sao điều này không thể thực hiện được nữa.

Trong nghiên cứu của tôi cho đến nay, tôi chưa tìm thấy tin tốt. Google chắc chắn đã giết tính năng Dấu trang Hệ thống (here & here), câu hỏi là liệu Trình duyệt Chrome có đang hiển thị nó theo bất kỳ cách nào không?

Có cách thay thế/cách đọc Dấu trang và Lịch sử từ Chrome (thậm chí Chrome cụ thể sẽ trả lời câu hỏi này) trong tương lai trong Android Marshmallow không?

+0

Vui lòng không nhầm lẫn [tag: google-chrome] và [tag: google-chrome-app] – Xan

+1

nếu bạn phát hiện ra câu trả lời bất kỳ lúc nào, vui lòng cho tôi biết. Tôi có cùng một vấn đề :) –

+0

Bản sao có thể có của [permission READ \ _HISTORY \ _BOOKMARKS không hoạt động trên API 23] (https://stackoverflow.com/questions/46828417/permission-read-history-bookmarks-is-not -working-on-api-23) – Nawrez

Trả lời

-4

Bạn có thể xem lịch sử của bạn bằng cách gõ

Chrome://history 

Như URL của bạn.

+1

Ý tôi là - chuyên về ngữ pháp từ Android/Java API, tức là viết một ứng dụng cho nó. – user1406716

+0

@ user1406716 Bạn đã bao giờ tìm ra giải pháp cho vấn đề này chưa? Nếu vậy hãy đăng câu trả lời! :) – Smittey

+0

nope tôi đã không. @ j__m của câu trả lời về có vẻ đầy hứa hẹn, nhưng cần phải thử nó ra. – user1406716

5

Trái với tài liệu được trích dẫn, com.android.browser.permission.READ_HISTORY_BOOKMARKS vẫn được xác định bởi khung và vẫn có thể nhận được các ứng dụng. Thật không may, trên Marshmallow và sau này, Chrome kiểm tra một quyền khác, một trong những ứng dụng thông thường không được phép nhận. Vì lý do tương thích, khi kiểm tra quyền đó không tránh khỏi, Chrome sẽ trả về 0 hàng thay vì ném SecurityException.

Bạn có thể xem mã nguồn ở đây:

query() cuộc gọi hasReadAccess(), trong đó kêu gọi hasPermission("com.android.browser.permission.READ_HISTORY_BOOKMARKS"), mà trên API> = M bỏ qua đối số cho phép và thay vào đó kiểm tra com.android.chrome.permission.READ_WRITE_BOOKMARK_FOLDERS. Quyền này được giới hạn đối với các ứng dụng và ứng dụng hệ thống được ký bằng khóa của Google.

+0

Vì vậy, điều đó có nghĩa là gì? Ứng dụng khác có thể đọc Chrome cho lịch sử của Android không? – Melab

Các vấn đề liên quan