如何从浏览器获取url字符串

时间:2011-04-20 12:49:49

标签: android

我可以获得我在Android设备浏览器上写的url ..

请告诉我..

感谢。

2 个答案:

答案 0 :(得分:4)

您可以像访问其他ContentProviders一样访问浏览历史记录。除了浏览历史记录,您还可以获得书签列表。 HISTORY_PROJECTION_BOOKMARK_INDEX用于区分它们。您需要权限com.android.browser.permission.READ_HISTORY_BOOKMARKS才能执行此代码。

Cursor webLinksCursor = getContentResolver().query(Browser.BOOKMARKS_URI, Browser.HISTORY_PROJECTION, null, null, Browser.BookmarkColumns.DATE + " DESC");
int row_count = webLinksCursor.getCount();

int title_column_index = webLinksCursor.getColumnIndexOrThrow(Browser.BookmarkColumns.TITLE);
int url_column_index = webLinksCursor.getColumnIndexOrThrow(Browser.BookmarkColumns.URL);

if ((title_column_index > -1) && (url_column_index > -1) && (row_count > 0))
{
    webLinksCursor.moveToFirst();
    while (webLinksCursor.isAfterLast() == false)
    {
        if (webLinksCursor.getInt(Browser.HISTORY_PROJECTION_BOOKMARK_INDEX) != 1)
        {
            if (!webLinksCursor.isNull(url_column_index))
            {
                Log.i("History" , "Last page browsed " + webLinksCursor.getString(url_column_index));
                break;
            }
        }
        webLinksCursor.moveToNext();
    }            
}
webLinksCursor.close();

答案 1 :(得分:0)

我的直觉告诉我这类似于阅读历史记录,我看不到谷歌允许应用程序访问这些数据,它会被恶意应用程序滥用。但是,如果有人证明我错了,我将来会更有选择性地选择我的应用程序!!