Это нормально работает для меня.Пожалуйста, посмотрите.
contactNumber = Uri.encode(contactNumber);
int phoneCallLogID = new Random().nextInt();
Cursor callLogLookupCursor = context.getContentResolver().query(Uri.withAppendedPath(android.provider.CallLog.Calls.CONTENT_FILTER_URI,contactNumber),null, null, null, null);
while(callLogLookupCursor.moveToNext()){
phoneCallLogID = callLogLookupCursor.getInt(callLogLookupCursor.getColumnIndexOrThrow(CallLog.Calls._ID));
}
callLogLookupCursor.close();
Uri uri = Uri.withAppendedPath(
android.provider.CallLog.Calls.CONTENT_URI, String.valueOf(phoneCallLogID));
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(uri);
startActivityForResult(intent,0);