Search code examples
androidbrowser-history

Displaying browsing history with time stamp


I tried the below code to get the browsing history of the user with time stamp.

Problem in getting Time stamp.

Here is my code.

  public void getBrowserHist()  {
    @SuppressWarnings("deprecation")
    Cursor mCur = managedQuery(Browser.BOOKMARKS_URI,
            Browser.HISTORY_PROJECTION, null, null, null);
    StringBuffer bf=new StringBuffer(" ");
    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));
            String titleIdx=mCur
                    .getString(Browser.HISTORY_PROJECTION_TITLE_INDEX);
            String url= mCur
                    .getString(Browser.HISTORY_PROJECTION_URL_INDEX);
            bf.append(titleIdx+" "+url+"\n\n");
            mCur.moveToNext();
       }
  }
    tv.setText(bf);
 }

Solution

  • Use Browser.HISTORY_PROJECTION_DATE_INDEX to get time and date. Below I have edited your code to get time stamp.

        public void getBrowserHist()  {
        @SuppressWarnings("deprecation")
        Cursor mCur = managedQuery(Browser.BOOKMARKS_URI,
                Browser.HISTORY_PROJECTION, null, null, null);
        StringBuffer bf=new StringBuffer(" ");
        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));
                String titleIdx=mCur
                        .getString(Browser.HISTORY_PROJECTION_TITLE_INDEX);
                String url= mCur
                        .getString(Browser.HISTORY_PROJECTION_URL_INDEX);
                //Edit
                Calendar cal = Calendar.getInstance();
                long dateTime = Long.parseLong(mCur
                            .getString(Browser.HISTORY_PROJECTION_DATE_INDEX));
                cal.setTimeInMillis(dateTime);
                Log.i("Date", cal.getTime().toString());
    
                //append cal.getTime().toString()
                bf.append(titleIdx+" "+url+"\n\n");
                mCur.moveToNext();
           }
      }
        tv.setText(bf);
     }