Italian Lettura nome proprietario

AlpVir

Well-Known Member
Licensed User
Vorrei leggere il nome dl proprietario del device Android, quello che è registrato in Impostazioni - Utenti - Tu
Il seguente codice parrebbe fare il caso mio
B4X:
Dim cr As ContentResolver
        Dim u As Uri
        u.Parse("content://com.android.contacts/profile/raw_contacts")
        cr.Initialize("cr")
        Dim crsr As Cursor = cr.Query(u, Null, "", Null, "")
        crsr.Position=0
        Proprietario=crsr.GetString2(0)
        crsr.Close
e difatti restituisce pari pari il mio nome (nel mio smartphone con Android 5.0).
Viceversa su un tablet (pure mio, con Android 5.0.1) si blocca a crsr.GetString2(0)
Come ovviare ?
Grazie per l'attenzione.
 

Filippo

Expert
Licensed User
Ciao AlpVir,

perchè non usi la libreria FirebaseAuth ?
Io la uso in una mia App e posso avere la E-Mail e nome e cognome dell'utente.
 

AlpVir

Well-Known Member
Licensed User
Grazie ma mi sembra un po' complicata da usare. Un'intera libreria che - se ho ben capito - serve per usi ben più corposi di quello che è il mio scopo: memorizzare in un file INI il nome del proprietario del telefono ! Tutto lì.
Se non risolvo in modo semplice e compatto il problema faccio un bel input con BetterDialogs e chi s'è visto s'è visto.
 

Filippo

Expert
Licensed User
Il problema è che non facile ricavare il nome del proprietario e, come hai notato, il codice non funziona con tutti i dispositivi.
Inoltre non tutti gli utenti, ad esempio come me, inseriscono il proprio nome.
 

AlpVir

Well-Known Member
Licensed User
Hai ragione. Ho tagliato la testa al toro ed ho inserito un semplice input (con BetterDialogs). Tanto l'utente lo fa una volta per tutte.
Altro problema, che ho risolto anche questa volta con un semplice input: se si ha un secondo operatore telefonico, il numero del telefono non è quello che l'utente ben conosce e con cui viene chiamato ma un altro; il codice riconosce però quello "sbagliato".
 
Top