+-

我在Api 18上这样做了它的工作原理:
String[] proj = new String[] { BookmarkColumns.TITLE,BookmarkColumns.URL };
Uri uriCustom = Uri.parse("content://com.android.chrome.browser/bookmarks");
String sel = BookmarkColumns.BOOKMARK + " = 0"; // 0 = history, 1 = bookmark
Cursor mCur = getContentResolver().query(uriCustom, proj, sel, null, null);
mCur.moveToFirst();
@SuppressWarnings("unused")
String title = "";
@SuppressWarnings("unused")
String url = "";
if (mCur.moveToFirst() && mCur.getCount() > 0) {
boolean cont = true;
while (mCur.isAfterLast() == false && cont) {
title = mCur.getString(mCur.getColumnIndex(BookmarkColumns.TITLE));
url = mCur.getString(mCur.getColumnIndex(BookmarkColumns.URL));
Log.e("title" , title);
Log.e("url" , url);
// Do something with title and url
mCur.moveToNext();
}
}
但是在API 23上它不起作用我在Android.Manifest上添加了它
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
最佳答案
请参阅此链接,介绍Android 6.0对书签浏览器行为的更改:
https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html#behavior-bookmark-browser
https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html#behavior-bookmark-browser
This release removes support for global bookmarks. The
android.provider.Browser.getAllBookmarks() and
android.provider.Browser.saveBookmark() methods are now removed.
Likewise, the READ_HISTORY_BOOKMARKS and WRITE_HISTORY_BOOKMARKS
permissions are removed. If your app targets Android 6.0 (API level
23) or higher, don’t access bookmarks from the global provider or use
the bookmark permissions. Instead, your app should store bookmarks
data internally.
点击查看更多相关文章
转载注明原文:android – 权限READ_HISTORY_BOOKMARKS不适用于API 23 - 乐贴网