gpt4 book ai didi

Android - Kitkat 中的奇怪联系人图片问题

转载 作者:太空宇宙 更新时间:2023-11-03 11:11:52 27 4
gpt4 key购买 nike

因此,在我正在构建的应用程序中,我获取手机中的所有联系人并将其显示在 ListView 中。一切正常,直到我将手机 (HTC One) 从 4.1.2 升级到 4.4.2。我不再获取联系人的图像/个人资料照片,而是抛出 FileNotFoundException。这也只发生在少数联系人身上,而不是全部。我能够从几个联系人那里得到照片,但有几个失败了。同一段代码在运行 4.4.2 的 Nexus 5 上工作得非常好。

这是我用来查询联系人的代码:

 ContentResolver cr = getActivity().getContentResolver();

String[] projection = new String[] {ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER, ContactsContract.CommonDataKinds.Phone.PHOTO_URI,
ContactsContract.CommonDataKinds.Phone.PHOTO_THUMBNAIL_URI, ContactsContract.CommonDataKinds.Phone.CONTACT_ID};

String SELECTION =
(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME_PRIMARY) +
"<>''" + " AND " + Contacts.IN_VISIBLE_GROUP + "=1";

String sortBy = ContactsContract.Contacts.DISPLAY_NAME
+ " COLLATE LOCALIZED ASC";

Cursor people = cr.query(uri, projection, SELECTION + " AND " + ContactsContract.CommonDataKinds.Phone.HAS_PHONE_NUMBER
+ "=1", null, sortBy);

我得到的 logcat 错误是:

System.out(17898): resolveUri failed on bad bitmap uri: content://com.android.contacts/contacts/289/photo
ImageView(17898): Unable to open content: content://com.android.contacts/contacts/289/photo
ImageView(17898): java.io.FileNotFoundException: content://com.android.contacts/contacts/289/photo?restricted=true
ImageView(17898): at android.database.DatabaseUtils.readExceptionWithFileNotFoundExceptionFromParcel(DatabaseUtils.java:146)
ImageView(17898): at android.content.ContentProviderProxy.openTypedAssetFile(ContentProviderNative.java:737)

关于可能是什么问题的任何想法?有什么建议吗?

提前致谢

编辑:我构建了一个名为 Contact 的自定义对象,其中包含所有详细信息,并将其设置为自定义适配器。这是我在 ImageView 中设置照片的代码,但我认为这不相关:

 if(contact != null){
viewHolder.contactName.setText(contact.getName());
if(contact.getThumbUri() != null){
viewHolder.contactThumb.setImageURI(Uri.parse(contact.getThumbUri()));
}else{
viewHolder.contactThumb.setImageResource(R.drawable.ic_launcher);
}
if(contact.isTlknUser()){
isTlkn[position] = true;
}
}

最佳答案

我想这是一个特定的构建问题,因为一旦我刷新了一个不同的 ROM,这个问题就自动解决了。仍然不知道问题出在哪里,但是是的,因为它在另一个 ROM 上运行良好,我假设它只是受此影响的 Kitkat 或其他 OEM 的特定版本。

关于Android - Kitkat 中的奇怪联系人图片问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23053978/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com