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 ); } }

更多相关文章

  1. Android设备预计将超微软
  2. 微软之鉴:Google不会将Android与Chrome OS融合?
  3. 【安卓】关于 Android 默认字体以及对比微软雅黑字体
  4. 微软发布 mircosft remote desktop for android
  5. Android连接SQLServer详细教程(数据库+服务器+客户端),并在微软Azur
  6. 专利敲诈——微软对Android痛下杀手的背后
  7. 【更新】Google 与微软开始口水战
  8. 微软一年通过Android获得几十亿美元收入,没错,是微软!
  9. 不仅是微软和诺基亚,谁都无法 fork Android,因为它就没法 fork

随机推荐

  1. vue代码练习
  2. APICloud携手三六零天御,助力企业守好App
  3. 6.30日开始学习PHP,圆我多年的学习梦想!ヾ(
  4. Linux 网络性能的 15 个优化建议!
  5. 二、Spring程序开发
  6. Python 内存分配时的小秘密
  7. Python 浮点数的冷知识
  8. Python 为什么要保留显式的 self ?
  9. Android入门进阶教程(5)-android 常用组
  10. 当Google忙着忽悠Android的时候,各位别忘