文档详情

Working With Android Contacts分析和总结分析和总结.docx

发布:2024-07-25约3.85万字共31页下载文档
文本预览下载声明

IntroductionToAndroidContacts

LearntoworkwiththeAndroidcontactsdatabase.BasicknowledgeofaccessingSQLiteinAndroidalongwithusingCursorsisexpected.SeeAtnhderoidSQLiteandCursorArticlfeormoreinformation.

Googlechangedthecontactsdatabasemovingfrom1.xto2.0versionsofAndroid.Thistutorialwillbebrokeninto3sections.FirstcoveringaccessingcontactsinAndroid2.0.Thesecondpagewilldealwith

accessingthecontactsinAndroid1.6andbefore.Thirdwellglueitalltogetherwithaclassthatabstractsspecificclassesforeachversionandasetofclassestomanagethedatafromthecontactrecords.

CreateanewprojectcalledTestContactsinEclipsesetupforAndroid2.0.

AndroidContactAPIFor2.0

GrantingAccess

BeforeanapplicationcanquerythecontactrecordsaccessmustbegrantedthroughtheAndroidManifest.xmlfilestoredintherootoftheproject.Addthefollowinguses-permissionbelowstheuses-sdkstatement.

uses-permissionandroid:name=android.permission.READ_CONTACTS/

QueryingTheAndroidContactDatabase

RetrievingContactDetails

BasiccontactinformationstoredinContactstablewithdetailedinformationstoredinindividualtablesfornormalization.InAndroid2.0toquerythebasecontactrecordstheURItoqueryisstoredinContactsContract.Contacts.CONTENT_URI.

packagehigherpass.TestContacts;

importandroid.app.Activity;

importandroid.content.ContentResolver;importandroid.database.Cursor;

importandroid.os.Bundle;

importvider.ContactsContract;

publicclassTestContactsextendsActivity{

/**Calledwhentheactivityisfirstcreated.*/@Override

publicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);ContentResolvercr=getContentResolver();

Cursorcur=cr.query(ContactsContract.Contacts.CONTENT_URI,

null,null,null,null);if(cur.getCount()0){

while(cur.moveToNext()){Stringid=cur.getString(

cur.getColumnIndex(ContactsCo

显示全部
相似文档