Я пишу приложение, в котором мне нужно получить подробную информацию о журналах вызовов в моем приложении android. В настоящее время я использую описанный ниже метод для получения данных
Cursor cursor = getContentResolver().query(CallLog.Calls.CONTENT_URI,
null,
CallLog.Calls.NUMBER + " = ?",
new String[]{custMobNo},
CallLog.Calls.DATE + " DESC limit 1;");
int number = cursor.getColumnIndex(CallLog.Calls.NUMBER);
int type = cursor.getColumnIndex(CallLog.Calls.TYPE);
int date = cursor.getColumnIndex(CallLog.Calls.DATE);
int duration = cursor.getColumnIndex(CallLog.Calls.DURATION);
String phoneNo = null;
String callType = null;
String callDate = null;
String callDuration = null;
int dircode = -1;
String dir = null;
if(cursor.getCount() > 0) {
while (cursor.moveToNext()) {
phoneNo = cursor.getString(number);
callType = cursor.getString(type);
callDuration = cursor.getString(duration);
callDate = cursor.getString(date);
if(custMobNo.equals(phoneNo)) {
dircode = Integer.parseInt(callType);
switch (dircode){
case CallLog.Calls.OUTGOING_TYPE:
dir = "Outgoing";
break;
case CallLog.Calls.INCOMING_TYPE:
dir = "Incoming";
break;
case CallLog.Calls.MISSED_TYPE:
dir = "Missed";
break;
}
sb.append("\nPhone Number : " + phoneNo +"\nCall Date : " + callDate+
"\nCall Type : " + dir+"\nCall Duration : "+callDuration);
sb.append("...................");
sb.toString();
break;
}
}
cursor.close();
}
Теперь проблема возникает в сценарии ios, где номер, сохраненный пользователем, может быть с кодом страны или без него. В таком случае ios как мне запросить? Мне нужны не полные журналы вызовов, а последние 2-3 журнала вызовов любого номера.
Я попытался использовать запрос "in" , выполнив поиск как по номеру телефона, так и по номеру телефона с кодом страны, но я, вероятно, использую неправильный синтаксис.
new String[]{"+91" + custMobNo, custMobNo}
Подскажите, пожалуйста, как действовать дальше?