Ho bisogno di chiamare la lista delle chiamate recenti e la lista delle chiamate preferite con un clic dei rispettivi pulsanti e ho bisogno dei dati nel mio elenco personale. Sono nuovo ad Android e ho molti problemi con questo. Chiunque può aiutarmi ... grazie in anticipo ..come recuperare la lista delle chiamate recenti e lista dei preferiti in Android?
5
A
risposta
5
Per ottenere l'elenco delle chiamate recenti, è possibile utilizzare CallLog in Android. Here è un buon tutorial. This è anche utile.
Si può usare per tutte le chiamate in uscita come questo:
Cursor cursor = getContentResolver().query(android.provider.CallLog.Calls.CONTENT_URI,null, android.provider.CallLog.Calls.TYPE+"="+android.provider.CallLog.Calls.OUTGOING_TYPE, null,null);
Per tutti i tipi di chiamate, utilizzarlo come:
Cursor cursor = getContentResolver().query(android.provider.CallLog.Calls.CONTENT_URI,null, null, null,null);
6
Con un po ', codice utile in più:
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;
}
Problemi correlati
- 1. Lista lista Android lazy loading
- 2. Come ottenere contatti preferiti in Android
- 3. Qual è la differenza tra lista e lista [:] in python?
- 4. lista dei paesi DropDown
- 5. La lista [i: j] è garantita come una lista vuota se la lista [j] precede la lista [i]?
- 6. Il modo migliore per convertire la lista delle liste nella lista delle tuple?
- 7. Batch lista dei processi
- 8. Android: ListFragment: come aggiornare la lista
- 9. comportamento diverso per la lista .__ iadd__ e la lista .__ add__
- 10. Associazione dati Android in una lista espandibile lista
- 11. con C#, come recuperare la lista dei messaggi di posta elettronica da server Gmail tramite POP3
- 12. come creare la lista e il sottolista -android?
- 13. JSON per la Lista dei int
- 14. Python: filtra la lista della lista con un'altra lista
- 15. Crea lista dei farmaci generici
- 16. Dovremmo ordinare la lista dei paesi?
- 17. Che differenza c'è tra la lista [-1:] [0] e la lista [len (lista) -1]?
- 18. aspettano per la lista dei compiti
- 19. Scala - Converti Lista di liste in una singola Lista: Lista [Lista [A]] in Lista [A]
- 20. Android + Gradle: lista delle directory in un file
- 21. in Jquery e Lista
- 22. Haskell iterare lista 2d, filtri, in uscita la lista 1d
- 23. android swipe per eliminare la riga lista
- 24. Dato un elemento di una lista, come faccio a recuperare il suo indice all'interno della lista?
- 25. Lista delle popolazioni con tuple
- 26. Come invertire una lista generica senza cambiare la stessa lista?
- 27. Modellazione dei preferiti
- 28. come convertire la lista di stringhe nella lista di guids
- 29. Recupera lista autorizzazioni
- 30. Lista vs Lista iteratore
Ciao Hiral, sto usando la stessa query per ottenere tutti i tipi di registro chiamate, ma io sto avendo un piccolo problema quando si tratta di dispositivi dual sim. Il mio codice non funziona correttamente per i dispositivi dual sim. Puoi per favore gentilmente aiutarmi in questo. – Scorpion