2013-04-15 222 views
0

我已經閱讀過幾次,手機上的一些應用程序可以在日誌中包含有關例如:通話記錄的信息。我想寫一個獲取到這個日誌並使用這個信息的應用程序。但問題是我該怎麼做? Logcat - Android日誌記錄系統提供了一個收集和查看系統調試輸出的機制,所以這不是我想要的。也許你可以建議我,我怎樣才能從日誌直接獲取信息?Android - 日誌訪問

回答

1

什麼你要找的是不是常見的日誌文件,但在所謂的content providers

例子:

static public List<String> getMissedCalls(Context context) 
    { 
      final String queryCond = Calls.TYPE + " = " + Calls.MISSED_TYPE + " and " + Calls.NEW + " = 1"; 

      List<String> phoneNumbers = new ArrayList<String>(); 
      Cursor cur = context.getContentResolver().query(
          CallLog.Calls.CONTENT_URI, 
          new String[]{Calls._ID, Calls.NUMBER}, 
          queryCond, 
          null, 
          null 
          ); 
      //int count=cur.getCount(); 
      //Log.d(TAG, "missed calls = " + count); 
      while(cur.moveToNext()) 
      { 
        String phoneNumber = cur.getString(cur 
       .getColumnIndexOrThrow(Calls.NUMBER)); 
        //Log.d(TAG, "missed call = " + phoneNumber); 
        phoneNumbers.add(phoneNumber); 
      } 
      cur.close(); 
      return phoneNumbers; 
    }