こんにちは、コンテンツプロバイダーから通話ログの詳細を取得していますが、正常に動作していますが、出力には重複した通話の詳細が表示され、通話ログの重複を回避する方法も表示されます。
現在の出力のような
ID 名前 番号 時間
1 abc 1233 午後 2 時 30 分
2 bdc 2897 午後 1 時
3 abc 1233 午前 11 時 30 分
4 abc 1233 午前 11 時
しかし、私はこの出力が必要ではありません
ID 名前 番号 時間
1 abc (3) 1233 午後 2 時 30 分
2 bdc 2897 午後 1 時
これを達成する方法私のコードを見て、私を助けてください
public void readCallLogs() {
Cursor callLog = getActivity().getContentResolver().query(
CallLog.Calls.CONTENT_URI, null, null, null,
android.provider.CallLog.Calls.DATE + " DESC");
int cid = callLog.getColumnIndex(CallLog.Calls._ID);
int cName = callLog.getColumnIndex(CallLog.Calls.CACHED_NAME);
int cNumber = callLog.getColumnIndex(CallLog.Calls.NUMBER);
int cType = callLog.getColumnIndex(CallLog.Calls.TYPE);
int cDate = callLog.getColumnIndex(CallLog.Calls.DATE);
int cDuration = callLog.getColumnIndex(CallLog.Calls.DURATION);
// looping call log cursor object
while (callLog.moveToNext()) {
String mId = callLog.getString(cid);
String mName = callLog.getString(cName);
String mNumber = callLog.getString(cNumber);
long mCallDate = callLog.getLong(cDate);
}