我知道我可以使用以下方式获取联系人照片的URI:
Uri person = ContentUris.withAppendedID(Contacts.CONTENT_URI, contactID);Uri photoUri = Uri.withAppendedpath(person, Contacts.Photo.CONTENT_DIRECTORY);
有没有办法对RawContact做同样的事情?
我试过了:
Uri person = ContentUris.withAppendedID(RawContacts.CONTENT_URI, rawContactID);Uri photoUri = Uri.withAppendedpath(person, Contacts.Photo.CONTENT_DIRECTORY);
但它不起作用……
我需要一个URI而不是实际blob的原因是因为代码在AppWidget中,并且在将数据从窗口小部件传递到启动器时似乎存在一些非常严格的限制,所以我需要使用setimageVIEwUri而不是setimageVIEwBitmap.
谢谢.
解决方法:
这是您的问题的解决方案. Solution
我也有同样的问题,在挖掘并阅读AndroID的源代码后,我得到了它.现在可能已经很晚了(对你来说),但无论如何它都在这里.
public inputStream getBitmapFromUri(String rawContactID) throws fileNotFoundException { final Uri photoUri = Uri.withAppendedpath( ContentUris.withAppendedID(RawContacts.CONTENT_URI, Long.valueOf(rawContactID)), RawContacts.displayPhoto.CONTENT_DIRECTORY); final inputStream imagestream = contentResolver.openinputStream(photoUri); return imagestream;}
总结 以上是内存溢出为你收集整理的获取Android中RawContact照片的URI全部内容,希望文章能够帮你解决获取Android中RawContact照片的URI所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)