Autore Topic: Problema con l'update dei contatti  (Letto 464 volte)

Offline Fuma

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: 0
    • Mostra profilo
Problema con l'update dei contatti
« il: 28 Giugno 2011, 11:13:56 CEST »
0
Salve a tutti non capisco perchè quando cerco di fare l'update di alcuni contatti della rubrica invece di cambiare dei determinati campi me ne cambia altri.Questo è il codice con cui creo un nuovo contatto:
Codice (Java): [Seleziona]
ops.clear();
                int rawContactInsertIndex = 0;    
            //Aggiunge il RawContact
                ops.add( ContentProviderOperation
                                .newInsert( RawContacts.CONTENT_URI )
                                .withValue( RawContacts.ACCOUNT_TYPE, null )
                                .withValue(RawContacts.ACCOUNT_NAME, null )
                                .build() );
                //Aggiunge il nome e il cognome
                ops.add( ContentProviderOperation
                        .newInsert( Data.CONTENT_URI )
                        .withValueBackReference( Data.RAW_CONTACT_ID, rawContactInsertIndex )
                        .withValue( Data.SYNC1,id)
                        .withValue(Data.MIMETYPE,Organization.CONTENT_ITEM_TYPE )
                        .withValue( Organization.COMPANY, azienda )
                        .withValue(Organization.TITLE,ORGANIZATION_TITLE)
                        .build() );
            //Aggiunge il numero di telefono
            ops.add( ContentProviderOperation
                        .newInsert( Data.CONTENT_URI ).withValueBackReference( Data.RAW_CONTACT_ID, rawContactInsertIndex  )
                        .withValue( Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE )
                        .withValue( Phone.NUMBER, phone )
                        .withValue( Phone.TYPE, Phone.TYPE_WORK )
                    .build() );
        ops.add( ContentProviderOperation
                        .newInsert( Data.CONTENT_URI ).withValueBackReference( Data.RAW_CONTACT_ID, rawContactInsertIndex  )
                                .withValue( Data.MIMETYPE, Email.CONTENT_ITEM_TYPE )
                                .withValue( Email.DATA, mail)
                                .withValue( Email.TYPE, Email.TYPE_WORK)
                .build() );



Quando cerco di fare l'update con il seguente codice i campi modificati risultano sbagliati:
Codice (Java): [Seleziona]
ops.clear();
               
                ops.add(ContentProviderOperation.newUpdate(Data.CONTENT_URI)
                          .withSelection(Data.SYNC1 + "=?", new String[]{id})
                         .withValue(Phone.NUMBER,phone)
                       .build());

In questo caso mi cambia il nome dell'azienda invece del numero di telefono.