Necesito llamar a la lista de llamadas recientes y a la lista de llamadas favoritas al hacer clic en los botones respectivos y necesito los datos en mi propio diseño de lista. Soy nuevo en Android y tengo muchos problemas con esto. Puede ayudarme nadie ... gracias de antemano ..cómo recuperar la lista de llamadas recientes y la lista de favoritos en android?
5
A
Respuesta
5
Para obtener la lista de llamadas recientes, puede utilizar CallLog en android. Here es un buen tutorial. This también es útil.
Se puede utilizar para todas las llamadas salientes como este:
Cursor cursor = getContentResolver().query(android.provider.CallLog.Calls.CONTENT_URI,null, android.provider.CallLog.Calls.TYPE+"="+android.provider.CallLog.Calls.OUTGOING_TYPE, null,null);
Para todos los tipos de llamadas, usarlo como:
Cursor cursor = getContentResolver().query(android.provider.CallLog.Calls.CONTENT_URI,null, null, null,null);
6
Con un poco de sobrepeso, código útil:
getFavoriteContacts:
Map getFavoriteContacts(){
Map contactMap = new HashMap();
Uri queryUri = ContactsContract.Contacts.CONTENT_URI;
String[] projection = new String[] {
ContactsContract.Contacts._ID,
ContactsContract.Contacts.DISPLAY_NAME,
ContactsContract.Contacts.STARRED};
String selection =ContactsContract.Contacts.STARRED + "='1'";
Cursor cursor = getContentResolver().query(queryUri, projection, selection,null,null);
while (cursor.moveToNext()) {
String contactID = cursor.getString(cursor
.getColumnIndex(ContactsContract.Contacts._ID));
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_URI, String.valueOf(contactID));
intent.setData(uri);
String intentUriString = intent.toUri(0);
String title = (cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)));
contactMap.put(title,intentUriString);
}
cursor.close();
return contactMap;
}
getRecentContacts:
Map getRecentContacts(){
Map contactMap = new HashMap();
Uri queryUri = android.provider.CallLog.Calls.CONTENT_URI;
String[] projection = new String[] {
ContactsContract.Contacts._ID,
CallLog.Calls._ID,
CallLog.Calls.NUMBER,
CallLog.Calls.CACHED_NAME,
CallLog.Calls.DATE};
String sortOrder = String.format("%s limit 500 ", CallLog.Calls.DATE + " DESC");
Cursor cursor = getContentResolver().query(queryUri, projection, null,null,sortOrder);
while (cursor.moveToNext()) {
String phoneNumber = cursor.getString(cursor
.getColumnIndex(CallLog.Calls.NUMBER));
String title = (cursor.getString(cursor.getColumnIndex(CallLog.Calls.CACHED_NAME)));
if(phoneNumber==null||title==null)continue;
String uri = "tel:" + phoneNumber ;
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse(uri));
String intentUriString = intent.toUri(0);
contactMap.put(title,intentUriString);
}
cursor.close();
return contactMap;
}
Cuestiones relacionadas
- 1. ¿Cómo eliminar la aplicación de la lista de aplicaciones recientes?
- 2. ¿Cómo acceder a la lista de llamadas de Android?
- 3. ¿Cómo obtengo la lista de archivos recientes en GNU Emacs?
- 4. Mantenimiento de una lista de archivos recientes
- 5. Estudio lista de proyectos de Visual recientes
- 6. Cómo recuperar Objetos de la lista de arrays en C#
- 7. ¿Cómo recuperar una lista de fuentes disponibles/instaladas en android?
- 8. Recuperar lista de permisos
- 9. Almacenar y recuperar la lista de matrices en el paquete en Android
- 10. ¿Cómo eliminar proyectos de la lista de proyectos recientes en la página de inicio?
- 11. Xcode no muestra proyectos recientes en la lista de proyectos recientes
- 12. Manejo de la funcionalidad 'Deslizar para salir' de la lista de aplicaciones recientes de ICS
- 13. ¿Cómo cambiar la imagen mostrada por la lista de aplicaciones recientes?
- 14. lista de llamadas de la función usando la lista de comprensión
- 15. Android: Cómo deshabilitar los elementos de la lista en la creación de la lista
- 16. Ver una lista de documentos recientes en Vim
- 17. Lista de Android vista toda la lista siendo seleccionada
- 18. Cómo obtener favoritos estrella
- 19. comportamiento diferente de la lista .__ iadd__ y la lista .__ add__
- 20. lista de linq donde contiene cualquiera en la lista
- 21. cómo establecer la altura de la lista desplegable y cómo mostrar la lista de lista desplegable siempre hacia abajo mostrar
- 22. Artículo expandible en la lista en Android
- 23. Lista de devoluciones de llamadas de ActiveRecord
- 24. ¿Cómo puedo borrar la lista de conexiones recientes de Perforce P4V?
- 25. Recuperando un elemento de la lista de arreglos en Android?
- 26. Cómo recuperar llamadas perdidas en Android SDK 2.2
- 27. Android onResume actualización lista adaptador
- 28. ¿Actualizar la actividad de lista de Android cuando cambia la lista de datos?
- 29. y la lista genérica
- 30. Cómo agregar encabezado a la vista de lista En Android
Hola Hiral, estoy usando la misma consulta para obtener todos los tipos de registro de llamadas, pero estoy teniendo un pequeño problema cuando se trata de dispositivo dual sim. Mi código no funciona correctamente para dispositivos con doble SIM. ¿Puedes ayudarme amablemente en eso? – Scorpion