6
Ho problemi con ottenere i contatti dalla mia lista dei contatti. Sto usando questo codice:Lettura delle informazioni di contatto utilizzando il descrittore di file in Android
final Cursor Contact = cResolver.query(ContactsContract.Contacts.CONTENT_URI, null,
ContactsContract.Contacts._ID +" = " + Contact_ID, null,null);
Contact.moveToFirst();
String lookupKey = Contact.getString(Contact
.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY));
Uri uri = Uri.withAppendedPath(
ContactsContract.Contacts.CONTENT_VCARD_URI, lookupKey);
AssetFileDescriptor fd = null;
FileInputStream fis = null;
fd = cResolver.openAssetFileDescriptor(uri, "_ID");
fis = fd.createInputStream();
byte[] buf = new byte[(int) fd.getDeclaredLength()];
fis.read(buf);
String vcardstring = new String(buf);
Ma sto Exception
:
java.io.IOException: read failed: EINVAL (Invalid argument)
libcore.io.IoBridge.read(IoBridge.java:432)
Può uno aiutarmi con questo?
è possibile inviare l'intero stack trace? –
Ciao AnasBakez, anche io sto affrontando lo stesso problema. Se hai la soluzione, per favore condividi. –
@abhishekkumargupta se ancora non trovi la soluzione, la soluzione non è quella di usare il descrittore di file, perché ho riscontrato qualche problema nell'utilizzarlo, alcuni dispositivi/produttori non lo usano quindi ora ottengo tutte le informazioni che voglio dal contenuto fornitore manualmente. Spero che questo possa aiutare – AnasBakez