안녕하세요 안드로이드 초보 개발자가 질문드립니다.

 

지금 주소록을 만들고 있는데요

 

폰에 저장된 전화번호를 띄우는 것까지 하였습니다.

 

그 다음이 insert  update delete 인데요.

 

안드로이드 예제인

 

 ContentValues values = new ContentValues(); 
 values
.put(Data.RAW_CONTACT_ID, rawContactId); 
 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); 

를 어떻게 사용 하는지를 모르겠습니다.

 

특히 put을 한담에 insert를 잘 모르겠구요...

 

또 기본 어플을 생각하면 전화번호를 삽입 하면 바로 리스트에 추가되는데

 

위의 코드를 적용했다고 가정했을 때 언제 list가 언제  업데이트 되는 건지

 

흐름과 방법을 알려주셨으면 감사하겠습니다.

 

 

 

 

 

 

--------------------------------------------소스------------------------------------------

package my.test.list;

import java.util.ArrayList;

import android.app.ListActivity;
import android.content.ContentProviderOperation;
import android.content.ContentUris;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.provider.ContactsContract.Contacts;
import android.provider.ContactsContract.Contacts.Data;
import android.provider.ContactsContract.RawContacts;
import android.widget.ListAdapter;
import android.widget.SimpleCursorAdapter;

public class ListActivitys extends ListActivity{
    /** Called when the activity is first created. */
 //private String[] mString  = {"123","456","789","111","123","145"};
   
 static final String[] projection = new String[] {

  ContactsContract.CommonDataKinds.Phone._ID,
  ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
  ContactsContract.CommonDataKinds.Phone.NUMBER,
  ContactsContract.CommonDataKinds.Phone.PHOTO_ID,
  ContactsContract.CommonDataKinds.Phone.CONTACT_ID,
  
 };
 Uri mContacts = null;
 @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        mContacts = ContactsContract.CommonDataKinds.Phone.CONTENT_URI;
        Cursor c = getContentResolver().query( mContacts
    ,projection, null,null, Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC");
       
        startManagingCursor(c);
        ListAdapter adapter = new SimpleCursorAdapter(this,
    android.R.layout.simple_list_item_1,
    c,
    new String[] {Contacts.DISPLAY_NAME},
    new int[]{android.R.id.text1});
       
       
  setListAdapter(adapter);
  /*
  ContentValues values = new ContentValues();
  values.put(Phone.RAW_CONTACT_ID,1234);
  values.put(Phone.NUMBER, "123141124");
  values.put(Phone.TYPE, "123213123133");
  values.put(Phone.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
  Uri uri = getContentResolver().insert(mContacts, values); */
    }
  public void insert_CP()
  {
   
   ContentValues values = new ContentValues();
   values.put(Phone.RAW_CONTACT_ID,1234);
   values.put(Phone.NUMBER, "123141124");
   values.put(Phone.TYPE, "123213123133");
   values.put(Phone.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
   Uri uri = getContentResolver().insert(mContacts, values);


   /*
    ArrayList<ContentProviderOperation> ops =
            new ArrayList<ContentProviderOperation>();
  
   ops.add(ContentProviderOperation.newInsert(Data.CONTENT_URI)
            .withValue(Data.RAW_CONTACT_ID, rawContactId)
            .withValue(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE)
            .withValue(Phone.NUMBER, "1-800-GOOG-411")
            .withValue(Phone.TYPE, Phone.TYPE_CUSTOM)
            .withValue(Phone.LABEL, "free directory assistance")
            .build());
   getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);

   */
   /*
   ContentValues values = new ContentValues();
    values.put(Data.RAW_CONTACT_ID, rawContactId);
    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);
*/
   /*
   ContentValues values = new ContentValues();
   values.put(RawContacts.ACCOUNT_TYPE, "basic");
   values.put(RawContacts.ACCOUNT_NAME, "test");
   Uri rawContactUri = getContentResolver().insert(RawContacts.CONTENT_URI, values);
   long rawContactId = ContentUris.parseId(rawContactUri);
    */
   
   /*
   ContentValues values = new ContentValues();
   Uri phoneUri = null;
   Uri emailUri = null;
   //0 = the new  contact is added to  favorites
   //1 = the new  contact is not  added to favorites
   values.put(Contacts.DISPLAY_NAME,"kangsungsu");
   values.put(Contacts.STARRED,1);
   
   //Add Phone Numbers
   
   Uri uri = getContentResolver().insert(mContacts, values);
   phoneUri= Uri.withAppendedPath(uri,Data.CONTENT_DIRECTORY);
   values.clear();
   values.put(Phone.TYPE,Phone.TYPE_MOBILE);
   values.put(Phone.NUMBER,"123456789");
   getContentResolver().insert(phoneUri, values);
   */
   
  }
}