Uygulamamda bu kodu kullanarak tüm çağrı günlüğünü alıyorum.Tüm telefonumdaki tüm çağrı günlüğünü döndür.Android'de belirli bir tarihte arama günlüğüne nasıl ulaşılır
public class CallLogHelper {
public static Cursor getAllCallLogs(ContentResolver cr) {
// reading all data in descending order according to DATE
String strOrder = android.provider.CallLog.Calls.DATE + " DESC";
Uri callUri = Uri.parse("content://call_log/calls");
Cursor curCallLogs = cr.query(callUri, null, null, null, strOrder);
return curCallLogs;
}
public static void insertPlaceholderCall(ContentResolver contentResolver,
String name, String number) {
ContentValues values = new ContentValues();
values.put(CallLog.Calls.NUMBER, number);
values.put(CallLog.Calls.DATE, System.currentTimeMillis());
values.put(CallLog.Calls.DURATION, 0);
values.put(CallLog.Calls.TYPE, CallLog.Calls.OUTGOING_TYPE);
values.put(CallLog.Calls.NEW, 1);
values.put(CallLog.Calls.CACHED_NAME, name);
values.put(CallLog.Calls.CACHED_NUMBER_TYPE, 0);
values.put(CallLog.Calls.CACHED_NUMBER_LABEL, "");
Log.d("Call Log", "Inserting call log placeholder for " + number);
contentResolver.insert(CallLog.Calls.CONTENT_URI, values);
}
}
Ama benim sorunum, bu, arama günlüğünü belirli bir tarihten (tüm arama günlüğü değil) almak istiyorum. Belirli bir tarihten itibaren arama günlüğünü almak için sorguyu nasıl kullanacağım konusunda hiçbir fikrim yok. Bana Teşekkür
için bu değere ayarlayabilirsiniz. Bu kodun neden olacağına ve tarih değerinin mSelectionArgs [1] 'a atanması durumunda OOB istisnasına dikkat edilmelidir, mSelectionArgs [0] = CreateDate (2013,1,1) .ToString(). Daha da iyisi, boş bir dize oluşturmak yerine dize değerini başlatmak ve hemen aşağıdaki gibi atmak olacaktır: Dize [] mSelectionArgs = {String.valueOf (createDate (2013,1,1))}. – Brandon
Brandon 'düzeltmesi dahil edilirse cevap vermeyecek. – Kobor42
Merhaba arkadaşlar yukarıdaki kodu kullandım ama arama kaydında veri olsa bile hala boş bir imleci alıyorum? herhangi bir fikir? – kAnNaN