Is it possible to add a bookmark (by code) to Google chrome browser Android? Does anyone knows how?
Asked
Active
Viewed 4,705 times
2
-
1Usually choosing things to bookmark is the users job, not the code's job. – Paul Aug 09 '13 at 19:14
2 Answers
3
Yes it is possible, I can do it.
If you're familiar with content providers both default and chrome provide bookmarks content providers so we can use these to change/insert bookmarks easily.
ContentValues values = new ContentValues();
values.put(Browser.BookmarkColumns.TITLE, "Yahoo Inc.");
values.put(Browser.BookmarkColumns.URL, "http://www.yahoo.com");
values.put(Browser.BookmarkColumns.BOOKMARK, 1);
values.put(Browser.BookmarkColumns.DATE, 0);
// add bookmark to default browser
getContentResolver().insert(Browser.BOOKMARKS_URI, values);
// add bookmark to Chrome
Uri chromeUri = Uri.parse("content://com.android.chrome.browser/bookmarks");
getContentResolver().insert(chromeUri,values);
Don't forget to add the write permission in your manifest:
<uses-permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"/>

Mark Whitaker
- 8,465
- 8
- 44
- 68

Farhan Munir
- 409
- 5
- 23
0
URI for content provider of Chrome is "content://com.android.chrome.ChromeBrowserProvider/bookmarks". But URI for default browser is Browser.BOOKMARKS_URI
ContentValues values = new ContentValues();
values.put(Browser.BookmarkColumns.TITLE, "title");
values.put(Browser.BookmarkColumns.URL, "http://ss.com");
values.put(Browser.BookmarkColumns.BOOKMARK, 1);
values.put(Browser.BookmarkColumns.CREATED, 0);
values.put(Browser.BookmarkColumns.DATE, 0);
values.put("parentId", 3); // just for Chrome
getContentResolver().insert(Uri.parse("content://com.android.chrome.ChromeBrowserProvider/bookmarks"), values);
Have tesed in Android 4.04 and Chrome 18.0.1.

Kislingk
- 1,427
- 14
- 23