2013-04-09 42 views
1

我有代码读取通话记录读取通话记录与Viber的例外要求

String[] strFields = { 
     android.provider.CallLog.Calls.DATE, 
     android.provider.CallLog.Calls.TYPE, 
     android.provider.CallLog.Calls.DURATION, 
     android.provider.CallLog.Calls.NUMBER 
     }; 
//READ CALL LOG  
Cursor callCursor = getContentResolver().query(android.provider.CallLog.Calls.CONTENT_URI,strFields, null, null,android.provider.CallLog.Calls.DATE + " ASC"); 
startManagingCursor(callCursor); 

int dateColumn = callCursor.getColumnIndex(android.provider.CallLog.Calls.DATE); 
// type can be: Incoming, Outgoing or Missed 
int typeColumn = callCursor.getColumnIndex(android.provider.CallLog.Calls.TYPE); 
// get duration of calls 
int durationColumn = callCursor.getColumnIndex(android.provider.CallLog.Calls.DURATION); 
// get number 
int numberColumn = callCursor.getColumnIndex(android.provider.CallLog.Calls.NUMBER); 
Calendar calendarCall = Calendar.getInstance(); 

if(callCursor.moveToFirst()){ 
do{   
    callDate = callCursor.getLong(dateColumn); 
    callType = callCursor.getInt(typeColumn); 
    callDuration = callCursor.getInt(durationColumn); 
    callNumber = callCursor.getString(numberColumn); 

    switch(callType){ 
     case android.provider.CallLog.Calls.INCOMING_TYPE: 

      break; 
     case android.provider.CallLog.Calls.MISSED_TYPE: 

      break; 
     case android.provider.CallLog.Calls.OUTGOING_TYPE:      

      break; 
    } 
}while(callCursor.moveToNext());  
} 

现在的问题是,Viber的调用也包括在内,但我想将它们排除在外。有什么办法可以从通话记录中排除Viber通话吗?谢谢

回答

0

取决于标志/列。你有没有找到任何可以帮助你识别Viber电话的标志?如果没有,则无法从日志中获取它。