Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 无法加载联系人照片_Android_Photo_Android Contacts - Fatal编程技术网

Android 无法加载联系人照片

Android 无法加载联系人照片,android,photo,android-contacts,Android,Photo,Android Contacts,听起来很奇怪,但我无法从android联系人加载联系人照片。我已经尝试了很多代码,但都不起作用。我的清单正常,权限已添加。厌倦了很多代码,包括来自Android.com的这段代码。它也不起作用: Cursor managedCursor = context.getContentResolver().query( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, n

听起来很奇怪,但我无法从android联系人加载联系人照片。我已经尝试了很多代码,但都不起作用。我的清单正常,权限已添加。厌倦了很多代码,包括来自Android.com的这段代码。它也不起作用:

Cursor managedCursor = context.getContentResolver().query(
                    ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
                    new String[] { ContactsContract.Contacts._ID,
                            Phone.DISPLAY_NAME, Phone.NUMBER, Phone.PHOTO_ID },
                    null, null, Phone.DISPLAY_NAME + " ASC");
            Uri contactUri = ContentUris.withAppendedId(Contacts.CONTENT_URI,
                    contactId);
            Uri photoUri = Uri.withAppendedPath(contactUri,
                    Contacts.Photo.CONTENT_DIRECTORY);

            Cursor cursor = getContentResolver()
                    .query(photoUri,new String[] { acts.Photo.PH.CommonDataKinds.Photo.PHOTO },
                        null, null, null);
        if (cursor == null) {
            return null;
 }
        try {
            return getContentResolver().openInputStream(photoUri);
            // if (cursor.moveToFirst()) {
            // byte[] data = cursor.getBlob(0);
            // if (data != null) {
            // return new ByteArrayInputStream(data);
            // }
            // }
        } catch (Exception ex) {
            ex.printStackTrace();
        }

我正在用Kitkat在Google Nexus 4中进行测试。有人能帮忙吗

使用
Contacts.Contacts.CONTENT\u URI
而不是
Contacts.CONTENT\u URI
来获取联系人URI。据此,
Contacts.CONTENT\u URI
已被弃用

此外,请查看以下内容:


是否引发任何异常?logcat输出?inputstream返回null。如果您对iv.setImageUri(uri)使用uri,它总是说找不到文件。您尝试过我在下面指出的解决方案吗?谢谢Sanjeev。它起作用了,例1。我正在使用:Contacts contract.Contacts.\u ID;而不是contacts contract.commondatatypes.Phone.CONTACT\u ID;