最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android獲取聯(lián)系人頭像的方法

 更新時間:2016年08月18日 11:48:12   作者:老舟  
這篇文章主要介紹了Android獲取聯(lián)系人頭像的方法,結(jié)合實例形式分析了Android調(diào)用聯(lián)系人頭像的相關(guān)操作技巧,涉及Bitmap對象及ImageView的使用方法,需要的朋友可以參考下

本文實例講述了Android獲取聯(lián)系人頭像的方法。分享給大家供大家參考,具體如下:

public byte[] getPhoto(String people_id) {
String photo_id = null;
String selection1 = ContactsContract.Contacts._ID + " = " + people_id;
Cursor cur1 = getContentResolver().query(
ContactsContract.Contacts.CONTENT_URI, null, selection1, null, null);
if (cur1.getCount() > 0)
{
cur1.moveToFirst();
photo_id = cur1.getString(cur1.getColumnIndex(ContactsContract.Contacts.PHOTO_ID));
//System.out.println("photo_id:" + photo_id);
}
String[] projection = new String[]
{
ContactsContract.Data.DATA15
};
String selection = ContactsContract.Data._ID + " = " + photo_id;
Cursor cur = getContentResolver().query(
ContactsContract.Data.CONTENT_URI, projection, selection, null, null);
cur.moveToFirst();
byte[] contactIcon = cur.getBlob(0);
System.out.println("conTactIcon:" + contactIcon);
if (contactIcon == null) {
return null;
} else {
return contactIcon;
}
}

以下代碼將字節(jié)數(shù)組轉(zhuǎn)化成Bitmap對象,然后再ImageView中顯示出來

private ImageView image;
byte[] photo = getPhoto(contactId);
Bitmap map = BitmapFactory.decodeByteArray(photo, 0,photo.length);
image.setImageBitmap(map);

通過代碼設(shè)置Android聯(lián)系人的頭像:

private final static boolean OldSDK = (System.getSDKVersionNumber()< 5 )? true : false;
public static void setPersonPhotoBytes(Context context,byte[] b, long persionID, boolean Sync)
{
if (OldSDK){
Uri myPerson = ContentUris.withAppendedId(People.CONTENT_URI, persionID);
People.setPhotoData(context.getContentResolver(), myPerson, b);
if (! Sync){
ContentValues values = new ContentValues();
values.put("_sync_dirty", 0);
context.getContentResolver().update(myPerson, values, null, null);
}
}
else
setContactPhoto5(context.getContentResolver(), b, persionID, Sync);
}
private static void setContactPhoto5(ContentResolver c, byte[] bytes,long personId, boolean Sync)
{
ContentValues values = new ContentValues();
Uri u = Uri.parse("content://com.android.contacts/data");
int photoRow = -1;
String where ="raw_contact_id = " + personId + " AND mimetype ='vnd.android.cursor.item/photo'";
Cursor cursor = c.query(u, null, where, null, null);
int idIdx = cursor.getColumnIndexOrThrow("_id");
if (cursor.moveToFirst()) {
photoRow = cursor.getInt(idIdx);
}
cursor.close();
values.put("raw_contact_id", personId);
values.put("is_super_primary", 1);
values.put("data15", bytes);
values.put("mimetype","vnd.android.cursor.item/photo");
if (photoRow >= 0) {
c.update(u, values, " _id= " + photoRow, null);
} else {
c.insert(u, values);
}
if (! Sync){
u = Uri.withAppendedPath(Uri.parse("content://com.android.contacts/raw_contacts"),
String.valueOf(personId));
values = new ContentValues();
values.put("dirty", 0);
c.update(u, values, null, null);
}
}

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android操作SQLite數(shù)據(jù)庫技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android數(shù)據(jù)庫操作技巧總結(jié)》、《Android文件操作技巧匯總》、《Android編程開發(fā)之SD卡操作方法匯總》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

  • Android實現(xiàn)三段式滑動效果

    Android實現(xiàn)三段式滑動效果

    最近發(fā)現(xiàn)很多app都使用了三段式滑動,比如說高德的首頁和某寶等物流信息都是使用的三段式滑動方式,谷歌其實給了我們很好的2段式滑動,就是BottomSheet,所以這次我也是在這個原理基礎(chǔ)上做了一個小小的修改來實現(xiàn)我們今天想要的效果。
    2021-06-06
  • Activity透明/半透明效果的設(shè)置transparent(兩種實現(xiàn)方法)

    Activity透明/半透明效果的設(shè)置transparent(兩種實現(xiàn)方法)

    兩種方法實現(xiàn)Activity透明/半透明效果的設(shè)置,代碼思路很有調(diào)理,感興趣的朋友可以參考下,希望本文可以幫助到你
    2013-02-02
  • Android Compose Column列表不自動刷新問題

    Android Compose Column列表不自動刷新問題

    這篇文章主要介紹了Android Compose Column列表數(shù)據(jù)更新列表不刷新的問題,總的來說這并不是一道難題,那為什么要拿出這道題介紹?拿出這道題真正想要傳達的是解題的思路,以及不斷優(yōu)化探尋最優(yōu)解的過程。希望通過這道題能給你帶來一種解題優(yōu)化的思路
    2023-01-01
  • Android ListView實現(xiàn)仿iPhone實現(xiàn)左滑刪除按鈕的簡單實例

    Android ListView實現(xiàn)仿iPhone實現(xiàn)左滑刪除按鈕的簡單實例

    下面小編就為大家?guī)硪黄狝ndroid ListView實現(xiàn)仿iPhone實現(xiàn)左滑刪除按鈕的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • Android畫中畫窗口開啟方法

    Android畫中畫窗口開啟方法

    Android8.0 Oreo(API Level26)允許活動啟動畫中畫Picture-in-picture(PIP)模式。PIP是一種特殊類型的多窗口模式,主要用于視頻播放。PIP模式已經(jīng)可用于Android TV,而Android8.0則讓該功能可進一步用于其他Android設(shè)備
    2023-01-01
  • CDC與BG-CDC的含義電容觸控學(xué)習(xí)整理

    CDC與BG-CDC的含義電容觸控學(xué)習(xí)整理

    今天小編就為大家分享一篇關(guān)于CDC與BG-CDC的含義電容觸控學(xué)習(xí)整理,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • 快速處理ListView為空的情況

    快速處理ListView為空的情況

    下面小編就為大家?guī)硪黄焖偬幚鞮istView為空的情況。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • android多開器解析與檢測實現(xiàn)方法示例

    android多開器解析與檢測實現(xiàn)方法示例

    最近有業(yè)務(wù)上的要求,要求app在本地進行諸如軟件多開、hook框架、模擬器等安全檢測,防止作弊行為,下面這篇文章主要給大家介紹了關(guān)于android多開器解析與檢測實現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • Android studio 添加assets文件夾的方法

    Android studio 添加assets文件夾的方法

    這篇文章主要介紹了Android studio 添加assets文件夾的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Android將Glide動態(tài)加載不同大小的圖片切圓角與圓形的方法

    Android將Glide動態(tài)加載不同大小的圖片切圓角與圓形的方法

    這篇文章主要給大家介紹了關(guān)于Android如何將Glide動態(tài)加載不同大小的圖片切圓角與圓形的方法,文中通過示例代碼介紹的非常吸納關(guān)系,對各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11

最新評論

镇安县| 高密市| 贺州市| 宜兰县| 柘荣县| 秭归县| 界首市| 涟水县| 廊坊市| 乌鲁木齐县| 东乌| 东宁县| 潞城市| 苗栗市| 阳山县| 佳木斯市| 阿拉善盟| 方山县| 文安县| 田阳县| 虎林市| 荣昌县| 乡宁县| 株洲县| 张家川| 南康市| 察隅县| 宜阳县| 宜君县| 大名县| 乐安县| 前郭尔| 东海县| 灵川县| 五台县| 顺昌县| 张家界市| 琼中| 乌兰浩特市| 兴仁县| 渭源县|