Android中訪問聯絡人資料示例

2021-07-27 06:16:28 字數 1208 閱讀 6860

聯絡人提供了自己contentprovider,因此可以使用contentresolver來訪問它的資料。

舉例來說:

...

......

....

//建立乙個隱式intent

final intent pickintent =

new intent(intent.action_pick,

contactscontract.contacts.content_uri);

msuspectbutton = (button)v.findviewbyid(r.id.crime_suspect);

msuspectbutton.setonclicklistener(new view.onclicklistener()

});...

......

.....

處理返回結果的**如下:

@override

public

void

onactivityresult(int requestcode, int resultcode, intent data) else

if (requestcode == request_contact && data != null) ;

//得到對應的cursor

cursor c = getactivity().getcontentresolver()

.query(contacturi, queryfields, null, null, null);

if (c == null)

try

c.movetofirst();

string suspect = c.getstring(0);

mcrime.setsuspect(suspect);

msuspectbutton.settext(suspect);

msuspectcontactid = c.getstring(1);

mdialbutton.setenabled(true);

} finally

}................

}

聯絡人應用返回結果intent時,會新增intent.flag_grant_read_uri_permission標誌。

該標誌賦予當前應用訪問contacturi對應的聯絡人資料的許可權。

Android 聯絡人資料庫操作

android 聯絡人資料庫 contentproviders 是android 系統核心元件之一,contentproviders 封裝了資料的訪問介面 有時候需要更新多行資料,可以選擇呼叫多次contentresolver的對應函式,或者 使用批量操作。當然 後者效能會比較好些 為了使批量更新 ...

android電話聯絡人資料庫

最近做乙個聯絡人方面的專案,包括通訊錄在這記錄一下,希望可以幫到有用的朋友 1.查詢手機所有聯絡人 public void querycontactphonenumber null,null,null,null for int i 0 i cursor.getcount i emitter.onne...

程式中呼叫聯絡人資料

首先新增乙個許可權 發起乙個 contact picker intent intent new intent intent.action pick,people.content uri startactivityforresult intent,pick contact 重寫方法 override ...