2011-04-20 118 views
1

可我得到的URL我寫的東西在Android設備瀏覽器中得到的URL字符串..如何從瀏覽器

請告訴我..

感謝。

+0

您是否已經嘗試加載該頁面或只是將其寫入url字段?我的意思是你需要剛加載的網頁的網址嗎? – Zelimir 2011-04-20 13:59:29

回答

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(); 
0

我的直覺告訴我這就像閱讀歷史,我看不到谷歌允許應用程序訪問這些數據,它會被惡意應用程序濫用。但是,如果有人證明我錯了,我將在未來更有選擇性地選擇我的應用程序!

+0

可以獲取瀏覽記錄(只讀)。我會告訴你,如果哈里確認這是他期望的。 – Zelimir 2011-04-21 06:03:48

+0

瀏覽歷史記錄可以通過ContentProvider獲得,您可以從我發佈的答案中看到。但是,安裝某些應用程序時,您可以查看該應用程序是否接近瀏覽歷史記錄,並避免安裝,如果這不符合您對此類應用程序的期望。 – Zelimir 2011-04-21 18:58:59

+0

允許訪問瀏覽歷史記錄以啓用自定義Web瀏覽器應用程序的創建。 – Zelimir 2011-05-09 07:18:12