android電話聯絡人資料庫

2021-09-24 04:53:40 字數 2829 閱讀 4397

最近做乙個聯絡人方面的專案,包括通訊錄在這記錄一下,希望可以幫到有用的朋友

1.查詢手機所有聯絡人

public void querycontactphonenumber() ;

null, null, null, null);

for (int i = 0; i < cursor.getcount(); i++)

emitter.onnext(numberbean);

}cursor.close();//關閉游標

emitter.oncomplete();

}}).observeon(androidschedulers.mainthread())

.subscribeon(schedulers.io())

.subscribe(new observer()

@override

public void onnext(numberbean numberbean)

@override

public void onerror(throwable e)

@override

public void oncomplete()

});}

2.獲取手機所有分組

public void getallgroup(context context) 

} finally }}

}).observeon(androidschedulers.mainthread())

.subscribeon(schedulers.io())

.subscribe(new observer()

@override

public void onnext(persongroup persongroup)

@override

public void onerror(throwable e)

@override

public void oncomplete()

});}

3.根據分組id查詢聯絡人列表

public void querygroupphonenumber(int groupid) ;

string raw_contacts_where = contactscontract.commondatakinds.groupmembership.group_row_id

+ "=?"

+ " and "

+ contactscontract.data.mimetype

+ "="

+ "'"

+ contactscontract.commondatakinds.groupmembership.content_item_type

+ "'";

// 通過分組的id 查詢得到raw_contact_id

contactscontract.data.content_uri, raw_projection,

raw_contacts_where, new string, "data1 asc");

while (cursor.movetonext()) , null);

try else if ("vnd.android.cursor.item/name".equals(mime)) else if (contactscontract.commondatakinds.photo.content_item_type.equals(mime)) }}

} finally }}

} catch (exception e) finally }}

}).subscribeon(schedulers.io())

.observeon(androidschedulers.mainthread())

.subscribe(new observer()

@override

public void onnext(numberbean numberbean)

@override

public void onerror(throwable e)

@override

public void oncomplete()

});}

4.刪除群組

/**

* 刪除指定群組

*/public static void deletegroup(context context,string groupid) catch (exception e)

}

5.插入聯絡人頭像

/**

* 新增聯絡人

* @param context

* @param contactname

* @param phonenumber

* @param group

*/public static void addcontactphonenumber(context context, string contactname, string phonenumber, int groupid, drawable drawable)

//新增頭像

if (drawable!=null)

}finally

} catch (ioexception e)

}toast.maketext(context, "新增新的聯絡人:" + contactname + " " + phonenumber, toast.length_short).show();

}

由於才開始嘗試寫,可能有很多不足的地方,希望諒解,僅以此代表個人行為

Android 聯絡人資料庫操作

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

Android 聯絡人資料庫表詳解

更多 1.首先手機新增幾個聯絡人 2.然後在此路徑下可以找到檔案 data data com.android.providers.contacts databases contact2.db 3.匯出檔案,將其匯入視覺化資料庫管理器當中 這裡用的是sqlite expert personal 我去。...

Android中訪問聯絡人資料示例

聯絡人提供了自己contentprovider,因此可以使用contentresolver來訪問它的資料。舉例來說 建立乙個隱式intent final intent pickintent new intent intent.action pick,contactscontract.contacts...