How to create a contact programmatically

KK_07k11A0585 picture KK_07k11A0585 · Dec 7, 2011 · Viewed 16.3k times · Source

Possible Duplicate:
How to add new contacts in android

public boolean createContact(String name, String number, String email) 
{
        boolean success = true;

        try
        {
            ContentValues contentValues = new ContentValues();

            ContentResolver contentResolver  = getContentResolver();

            contentValues.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
            contentValues.put(Phone.NUMBER, "123254");
            Uri uri = contentResolver.insert(android.provider.ContactsContract.Data.CONTENT_URI, contentValues);

            if(uri==null)
            {
                success = false;
            }

        }
        catch (Exception e) 
        {
            e.printStackTrace();
            success = false;
        }
        return success;
}

I am getting NullPointer Exception I don't know why I have also specified WRITE_CONTACTS Permission. Please help me ............

Answer

Abhinava picture Abhinava · Dec 16, 2011
ContentValues values = new ContentValues();
            values.put(Data.RAW_CONTACT_ID, 001);
            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(android.provider.ContactsContract.Data.CONTENT_URI, values);

Use the above code. You are not providing id. http://developer.android.com/reference/android/provider/ContactsContract.Data.html