gpt4 book ai didi

android - 在android中获取浏览器历史记录和搜索结果

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:51:12 24 4
gpt4 key购买 nike

我正在尝试从 Android 浏览器获取历史记录和搜索结果。在下面的代码中,我得到了所有的书签,效果很好:

public void getBrowser(){
String[] requestedColumns = {
Browser.BookmarkColumns.TITLE,
Browser.BookmarkColumns.VISITS,
Browser.BookmarkColumns.BOOKMARK
};
Cursor faves = managedQuery(Browser.BOOKMARKS_URI, requestedColumns,
Browser.BookmarkColumns.BOOKMARK + "=1", null, Browser.BookmarkColumns.VISITS);
Log.d(DEBUG_TAG, "Bookmarks count: " + faves.getCount());
int titleIdx = faves.getColumnIndex(Browser.BookmarkColumns.TITLE);
int visitsIdx = faves.getColumnIndex(Browser.BookmarkColumns.VISITS);
int bmIdx = faves.getColumnIndex(Browser.BookmarkColumns.BOOKMARK);
faves.moveToFirst();
while (!faves.isAfterLast()) {
Log.d("SimpleBookmarks", faves.getString(titleIdx) + " visited " + faves.getInt(visitsIdx) + " times : " + (faves.getInt(bmIdx) != 0 ? "true" : "false"));
faves.moveToNext();
}
}

当我尝试仅从浏览器获取历史记录时,我正在尝试以下代码:

public void getBrowserHist()  {
Cursor mCur = managedQuery(Browser.BOOKMARKS_URI, Browser.HISTORY_PROJECTION, null, null, null);
mCur.moveToFirst();
if (mCur.moveToFirst() && mCur.getCount() > 0) {
while (mCur.isAfterLast() == false) {
Log.v("titleIdx", mCur.getString(Browser.HISTORY_PROJECTION_TITLE_INDEX));
Log.v("urlIdx", mCur.getString(Browser.HISTORY_PROJECTION_URL_INDEX));
mCur.moveToNext();
}
}
}

问题是我现在获得了所有书签、历史记录和访问次数最多的页面。我只想要历史专栏。我也想要谷歌搜索的搜索结果。我已经尝试过 SEARCHES_URI 对象,但我无法让它工作。有没有人有任何建议可以解决我的问题?

最佳答案

出于某种奇怪的原因,Google 决定在 SDK 中混合使用书签和历史记录,称它们为“书签”。试试下面的代码,重要的是按“书签”类型过滤。

    String[] proj = new String[] { Browser.BookmarkColumns.TITLE, Browser.BookmarkColumns.URL };
String sel = Browser.BookmarkColumns.BOOKMARK + " = 0"; // 0 = history, 1 = bookmark
mCur = this.managedQuery(Browser.BOOKMARKS_URI, proj, sel, null, null);
this.startManagingCursor(mCur);
mCur.moveToFirst();

String title = "";
String url = "";

if (mCur.moveToFirst() && mCur.getCount() > 0) {
while (mCur.isAfterLast() == false && cont) {

title = mCur.getString(mCur.getColumnIndex(Browser.BookmarkColumns.TITLE));
url = mCur.getString(mCur.getColumnIndex(Browser.BookmarkColumns.URL));
// Do something with title and url

mCur.moveToNext();
}
}

关于android - 在android中获取浏览器历史记录和搜索结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7626084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com