0

CONTENT_URI が指す次のカーソルを使用して、Android 2.2 でデフォルトの履歴を取得できます。Browser.BOOKMARKS_URI

cursor = context.getContentResolver().query(CONTENT_URI, Browser.HISTORY_PROJECTION, null, null, null);

if (cursor.moveToLast()) 
        String url = cursor.getString(Browser.HISTORY_PROJECTION_URL_INDEX);

しかし、Android ICSでは機能しませんでした.間違ったURLを取得しています.常に同じです:1970-01-01 00:00:00 http://www.samsung.com/m-manual/common

PS:使用する日付を取得するにはcursor.getLong(Browser.HISTORY_PROJECTION_DATE_INDEX)

4

1 に答える 1

0

getAllBookmarks()も試しましたか?

Cursor cursor = Browser.getAllBookmarks(getContentResolver());
if (cursor != null) {
    try {
        while (cursor.moveToNext()) {
            String url = cursor.getString(cursor.getColumnIndex(Browser.BookmarkColumns.URL));
        }
    } finally {
        cursor.close();
    }
}

編集:

String sortOrder = Browser.BookmarkColumns.DATE + " ASC";
Cursor cursor = getContentResolver().query(CONTENT_URI, Browser.HISTORY_PROJECTION, null, null, sortOrder);
if (cursor != null) {
    try {
        if (cursor.moveToLast()) {
            String url = cursor.getString(Browser.HISTORY_PROJECTION_URL_INDEX);
            long date = cursor.getLong(Browser.HISTORY_PROJECTION_DATE_INDEX);
        }
    } finally {
        cursor.close();
    }
}

実際、なぜhttp://www.samsung.com/m-manual/commonURLが間違っているのですか?どのURLを期待していますか?並べ替える列を指定していません。ブックマークをcursor.moveToLast()移動するのではなく、カーソルを最後のアイテムに移動します。

于 2012-07-30T20:14:10.513 に答える