2017-09-01 65 views
-2

我想通過我的應用程序獲得互聯網應用程序(Web瀏覽器)在Android的歷史,我嘗試用「com.android.browser.permission.READ_HISTORY_BOOKMARKS」如何通過我的應用程序獲取Android上的互聯網應用程序的書籤歷史?

使用但它僅適用於OS < 6.0支持。你有一個獲取歷史的新方法嗎?請幫幫我!謝謝。

+0

首先,該應用程序必須支持它。那個'互聯網應用程序'是什麼?你爲什麼認爲它應該給你它的歷史? –

+0

互聯網應用程序是Android手機上的瀏覽器默認?我想獲取歷史記錄,書籤進行備份。 –

+0

究竟哪個瀏覽器? Android上可能有500個瀏覽器應用程序。 –

回答

1

使用ArrayList。

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

    ArrayList<HistoryEntry> list = new ArrayList<HistoryEntry>(); 

    String[] proj = new String[] { Browser.BookmarkColumns.TITLE, 
      Browser.BookmarkColumns.URL }; 
    String sel = Browser.BookmarkColumns.BOOKMARK + " = 0"; 

    Cursor mCur = getContentResolver().query(Browser.BOOKMARKS_URI, proj, 
      sel, null, null); 
    mCur.moveToFirst(); 

    if (mCur.moveToFirst() && mCur.getCount() > 0) { 
     boolean cont = true; 
     while (mCur.isAfterLast() == false && cont) { 
      HistoryEntry entry = new HistoryEntry(); 

      title = mCur.getString(mCur 
        .getColumnIndex(Browser.BookmarkColumns.TITLE)); 
      url = mCur.getString(mCur 
        .getColumnIndex(Browser.BookmarkColumns.URL)); 
      entry.setTitle(title); 
          entry.setUrl(url); 
          list.add(entry); 
      Log.d("TAG", "title " + title); 
      mCur.moveToNext(); 
     } 
    } 

    mCur.close(); 

    return list; 
} 
+0

感謝您的分享。你的方法只支持OS <6.0。我想使用所有的操作系​​統。你有其他方法嗎? –

相關問題