CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: gianpassa con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 9 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 34 Thanks ricevuti nell'ultimo mese

Pagina 3 di 4 primaprima 1234 ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 21 a 30 su 33
Discussione:

Prova Content Provider

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #21
    Androidiano


    Registrato dal
    Oct 2009
    Messaggi
    97

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Come mai devi usare questo: <data android:mimeType="vnd.android.cursor.dir/data"></data> ?

    Nel listato che hai postato non hai messo nulla di deprecato.
    Io nel programma che avevo fatto non scrivevo nel content provider dei contatti, ma li leggevo e basta (Ho scritto sul content degli SMS).
    Come URI usavo quello dato da Contacts.CONTENT_URI
    codice:
    final Cursor c = getContentResolver().query(Contacts.CONTENT_URI, null,
    				null, null, ContactsContract.Contacts.DISPLAY_NAME);
    		startManagingCursor(c);
    o da Data.CONTENT_URI
    codice:
    String[] proiezione = new String[] {
    				ContactsContract.CommonDataKinds.Phone.NUMBER,
    				ContactsContract.CommonDataKinds.Phone.TYPE };
    		String where = ContactsContract.Data.CONTACT_ID + " = " + position
    				+ " AND " + ContactsContract.Data.MIMETYPE + " = \""
    				+ ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
    				+ "\"";
    		final Cursor cur = getContentResolver().query(Data.CONTENT_URI,
    				proiezione, where, null, null);
    		startManagingCursor(cur);
    
    		ArrayList<String> tipo = new ArrayList<String>();
    		ArrayList<String> numTel = new ArrayList<String>();
    		ArrayList<Integer> indTipo = new ArrayList<Integer>();
    
    		if (cur.moveToFirst()) {
    			do {
    
    				tipoNumTemp = cur
    						.getString(cur
    								.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.TYPE));
    				numTemp = cur
    						.getString(cur
    								.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.NUMBER));
    				if (numTemp != null && !numTemp.contentEquals("")) {
    					numTel.add(numTemp);
    					indTipo.add(Integer.parseInt(tipoNumTemp));
    
    					tipoNumTemp = risorse.getStringArray(R.array.tipo_numero)[Integer
    							.parseInt(tipoNumTemp) - 1];
    					tipo.add(tipoNumTemp);
    				}
    			} while (cur.moveToNext());
    		}
    Prova a studiarti come ho usato i vari metodi ed applicarli al tuo caso.

    E auguri!!

  2.  
  3. #22
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    229

    Ringraziamenti
    0
    Ringraziato 5 volte in 4 Posts
    Predefinito

    Si infatti quel MimeType non serve a nulla...ora studio i metodi e vediamo che ne esce fuori. Grazie!!

  4. #23
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da mimmog Visualizza il messaggio
    Si infatti quel MimeType non serve a nulla...ora studio i metodi e vediamo che ne esce fuori. Grazie!!
    Ah beh, se posso toglierlo allora torno a lavorarci anch'io
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  5. #24
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    229

    Ringraziamenti
    0
    Ringraziato 5 volte in 4 Posts
    Predefinito

    Si si può togliere perchè il MimeType serve per un altra cosa non c'entra in questo caso

  6. #25
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    229

    Ringraziamenti
    0
    Ringraziato 5 volte in 4 Posts
    Predefinito

    Ok ragazzi ci nuovi sviluppi ora sono in macchina appena ho un pc sottomano vi dico.. :-)

  7. #26
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    229

    Ringraziamenti
    0
    Ringraziato 5 volte in 4 Posts
    Predefinito

    Eccomi qui ! allora ho fatto delle prove di lettura così come consigliato da Deadly e funziona tutto perfettamente. Per la scrittura riscontravo gli stessi ed identici errori di eccezione quindi ho dovuto fare vari tentativi fino ad arrivare a questo codice :

    ContentValues values = new ContentValues();
    values.put(Data.RAW_CONTACT_ID, "1");
    values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
    values.put(Phone.NUMBER, "1-800-GOOG-411");
    values.put(Phone.TYPE, Phone.TYPE_CUSTOM);
    values.put(Phone.LABEL, "free directory assistance");
    Uri dataUri = getContentResolver().insert(Data.CONTENT_URI, values);
    che non permette quello che vorrei fare io, cioè inserire un nuovo contatto in rubrica, bensì permette di aggiungere un nuovo numero di telefono ad un contatto già presente in rubrica ed identificato come vedete dal campo Data.RAW_CONTACT_ID ora mi resta da capire invece come far creare un contatto exnovo passandogli nome, cognome, etc

    Vi tengo aggiornati ed intato se qualcuno di buon cuore vuole aiutarmi ben venga !

  8. #27
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Quote Originariamente inviato da mimmog Visualizza il messaggio
    Vi tengo aggiornati ed intato se qualcuno di buon cuore vuole aiutarmi ben venga !
    A me pare che nel libro su Android che ho casa ci sta un esempio per aggiungere un contatto, devo controllare, non vorrei sbagliarmi, stasera guardo e ti faccio sapere

  9. #28
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    229

    Ringraziamenti
    0
    Ringraziato 5 volte in 4 Posts
    Predefinito

    Ok thanks ;-)

  10. #29
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Eccomi!
    Ecco l'esempio preso dal mio libro (per la cronaca si intitola "Android Wireless Application Development" della Addison Wesley, non è proprio il massimo visto che parla di tutto ma senza approfondire mai in modo soddisfacente niente, però per iniziare mi è stato utile):



    Spero di non aver sbagliato a trascrivere niente. Questo codice io non l'ho provato, facci sapere se funziona!
    Ah, bisogna anche aggiungere al manifest il permesso WRITE_CONTACTS se non l'hai già fatto!

  11. #30
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    229

    Ringraziamenti
    0
    Ringraziato 5 volte in 4 Posts
    Predefinito

    Ciao Orochi purtroppo la classe Contacts.Phones è deprecata Contacts.Phones | Android Developers ora di tutto ciò che riguarda i contatti se ne occupa la classe ContactsContract. Oggi l'ho studiata un pochino e devo dire che hanno complicato le cose rispetto a prima, sono riuscito però a recuperare un codice che utilizza questa classe per fare varie cose sui contatti quindi credo che adattandola dovrebbe farmi raggiungere l'obiettivo, stasera me la guardo e poi se funziona posto il codice. Grazie!

Pagina 3 di 4 primaprima 1234 ultimoultimo
Ultima pagina

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy