我正在制作一个小型 Java 应用程序来显示用户访问次数最多的 Chrome 中的哪些 URL。如何在 Java 中访问我的浏览器历史记录?
问问题
7501 次
1 回答
7
创建一个ContentObserver
类...
static class ChromeOberver extends ContentObserver {
public ChromeOberver(Handler handler) {
super(handler);
}
@Override
public void onChange(boolean selfChange) {
onChange(selfChange, null);
}
@Override
public void onChange(boolean selfChange, Uri uri) {
super.onChange(selfChange);
Log.d(TAG, "onChange: " + selfChange);
Cursor cursor = context.getContentResolver()
.query(CHROME_BOOKMARKS_URI, new String() {"title", "url"},
"bookmark = 0", null, null);
// process cursor results
}
}
并注册该类以监视历史记录/书签更改:
private static String CHROME_BOOKMARKS_URI =
"content://com.android.chrome.browser/bookmarks";
ChromeOberver observer = new ChromeOberver();
resolver.registerContentObserver(CHROME_BOOKMARKS_URI, true, observer);
不要忘记许可:
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />
于 2013-10-07T18:18:37.780 回答