Metode & Algoritma | List Tutorials | Source Code | About | Sitemap
Konsultan Tesis
Bimbingan dan Konsultasi Tesis Informatika bersama team Project Graduate Indonesia. Konsultasi hanya untuk yang sudah me-Like FB kami (Silahkan LIKE tombol ini jika belum).
. Scroll kebawah untuk memasukan kode AntiSpam Protection. Hasil konsultasi akan kami kirimkan ke email Anda.

Pemrograman Android : Menulis Menambah Contacts Phone Book pada Android




.


Metode dan Algoritma | Pemrograman Android : Menulis Menambah Contacts Phone Book pada Android . Anda bisa melakukan konsultasi tentang Pemrograman Android : Menulis Menambah Contacts Phone Book pada Android melalui form di samping kanan !!!

Program ini berguna kalau kita ingin menambahkan Kontak ke Phone Book atau Address Book Android secara program (memakai kode program).

Berikut ini adalah program utamanya untuk menulis atau menambah Contacts pada PhoneBook Android

MainActivity.java :


package my.amijaya.writecontacts;


import java.util.ArrayList;


import android.app.Activity;
import android.content.ContentProviderOperation;
import android.content.ContentValues;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.provider.Contacts.People;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.widget.Toast;


public class MainActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        //addContact("Michelle","02744444");
        //addContact("Michael","02711111");
        //addContact("Shafira","707070");
        //addContact("Angelica","085123456");
        Tambah();
    }
    

    /*private void addContact(String name, String phone) {
        ContentValues values = new ContentValues();
        values.put(People.NUMBER, phone);
        values.put(People.TYPE, Phone.TYPE_CUSTOM);
        values.put(People.LABEL, name);
        values.put(People.NAME, name);
        Uri dataUri = getContentResolver().insert(People.CONTENT_URI, values);
        Uri updateUri = Uri.withAppendedPath(dataUri, People.Phones.CONTENT_DIRECTORY);
        values.clear();
        values.put(People.Phones.TYPE, People.TYPE_MOBILE);
        values.put(People.NUMBER, phone);
        updateUri = getContentResolver().insert(updateUri, values);
      }*/
    
    private void Tambah() {
    String DisplayName = "XYZ";
    String MobileNumber = "123456";
    String HomeNumber = "1111";
    String WorkNumber = "2222";
    String emailID = "email@nomail.com";
    String company = "bad";
    String jobTitle = "abcd";


    ArrayList<ContentProviderOperation> ops = 
       new ArrayList<ContentProviderOperation>();


    ops.add(ContentProviderOperation.newInsert(
       ContactsContract.RawContacts.CONTENT_URI)
       .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, null)
       .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, null)
       .build()
    );


    //------------------------------------------------------ Names
    if(DisplayName != null)
    {           
       ops.add(ContentProviderOperation.newInsert(
           ContactsContract.Data.CONTENT_URI)              
           .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
           .withValue(ContactsContract.Data.MIMETYPE,
               ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
           .withValue(
               ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME,     
               DisplayName).build()
       );
   


    //------------------------------------------------------ Mobile Number                      
    if(MobileNumber != null)
    {
       ops.add(ContentProviderOperation.
           newInsert(ContactsContract.Data.CONTENT_URI)
           .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
           .withValue(ContactsContract.Data.MIMETYPE,
           ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
           .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, MobileNumber)
           .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, 
           ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE)
           .build()
       );
    }


                       //------------------------------------------------------ Home Numbers
                       if(HomeNumber != null)
                       {
                           ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
                                   .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
                                   .withValue(ContactsContract.Data.MIMETYPE,
                                           ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
                                   .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, HomeNumber)
                                   .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, 
                                           ContactsContract.CommonDataKinds.Phone.TYPE_HOME)
                                   .build());
                       }


                       //------------------------------------------------------ Work Numbers
                       if(WorkNumber != null)
                       {
                           ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
                                   .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
                                   .withValue(ContactsContract.Data.MIMETYPE,
                                           ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
                                   .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, WorkNumber)
                                   .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, 
                                           ContactsContract.CommonDataKinds.Phone.TYPE_WORK)
                                   .build());
                       }


                       //------------------------------------------------------ Email
                       if(emailID != null)
                       {
                            ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
                                       .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
                                       .withValue(ContactsContract.Data.MIMETYPE,
                                               ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
                                       .withValue(ContactsContract.CommonDataKinds.Email.DATA, emailID)
                                       .withValue(ContactsContract.CommonDataKinds.Email.TYPE, ContactsContract.CommonDataKinds.Email.TYPE_WORK)
                                       .build());
                       }


                       //------------------------------------------------------ Organization
                       if(!company.equals("") && !jobTitle.equals(""))
                       {
                           ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
                                   .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
                                   .withValue(ContactsContract.Data.MIMETYPE,
                                           ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE)
                                   .withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, company)
                                   .withValue(ContactsContract.CommonDataKinds.Organization.TYPE, ContactsContract.CommonDataKinds.Organization.TYPE_WORK)
                                   .withValue(ContactsContract.CommonDataKinds.Organization.TITLE, jobTitle)
                                   .withValue(ContactsContract.CommonDataKinds.Organization.TYPE, ContactsContract.CommonDataKinds.Organization.TYPE_WORK)
                                   .build());
                       }


                       // Asking the Contact provider to create a new contact                  
                       try 
                       {
                           getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
                       } 
                       catch (Exception e) 
                       {               
                           e.printStackTrace();
                           Toast.makeText(MainActivity.this, "Exception: " + e.getMessage(), Toast.LENGTH_SHORT).show();
                       }
    }
}


Kita gunakan saja tampilan desain layout standar, karena hanya untuk mencoba manambah contacts secara sederhana.

main.xml :


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
</LinearLayout>


Jangan lupa tambahkan permission Write Contacts dan untuk lebih amannya Read Contacts sekalian

AndroidManifest.xml :


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="my.amijaya.writecontacts"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".MainActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>


    </application>
    <uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
    <uses-permission android:name="android.permission.READ_CONTACTS"/>
</manifest> 


Source Code Project selengkapnya dapat diunduh di link berikut :

https://docs.google.com/open?id=0B4i1FYc_4RXzSERvU09CaVhzT3M

Selamat mencoba


Source Code ActionScript AS3 ASP.NET AJAX C / C++ C# Clipper COBOL ColdFusion DataFlex Delphi Emacs Lisp Fortran FoxPro Java J2ME JavaScript JScript Lingo MATLAB Perl PHP PostScript Python SQL VBScript Visual Basic 6.0 Visual Basic .NET Flash MySQL Oracle Android
Related Post :


Project-G
Judul: Pemrograman Android : Menulis Menambah Contacts Phone Book pada Android
Rating: 100% based on 99998 ratings. 5 user reviews.
Ditulis Oleh hank2

Anda sedang membaca artikel tentang Pemrograman Android : Menulis Menambah Contacts Phone Book pada Android, Semoga artikel tentang Pemrograman Android : Menulis Menambah Contacts Phone Book pada Android ini sangat bermanfaat bagi teman-teman semua, jangan lupa untuk mengunjungi lagi melalui link Pemrograman Android : Menulis Menambah Contacts Phone Book pada Android.


Posted by: Metode Algoritma Updated at: 19.59

{ 0 komentar... Views All / Send Comment! }

Posting Komentar

Label