从联系人处阅读照片

时间:2015-09-05 09:58:47

标签: android

我试图将联系人照片读入图片按钮,但我遇到了尝试这样做的安全权限异常。从logcat开始,这需要授予global_search权限(仅限系统应用程序)或使用granturipermission(),我无法找到解释如何使用它的有用示例。 到目前为止,这是我的代码: -

            Cursor phone = null;
            Uri result = data.getData();
            String contactId = result.getLastPathSegment();
            ContentResolver cr = getContentResolver();

            Uri contactUri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, Long.parseLong(contactId));
            InputStream photoIS = ContactsContract.Contacts.openContactPhotoInputStream(cr, contactUri);
            try {
                if (photoIS != null) {
                    contactBtn.setImageBitmap(BitmapFactory.decodeStream(photoIS));
                    contactBtn.setVisibility(View.VISIBLE);
                    photoIS.close();
                    selPhoto = contactUri;
                }
            } catch (Exception e) {
                e.printStackTrace();
           }

此行引发了安全性异常: - InputStream photoIS = ContactsContract.Contacts.openContactPhotoInputStream(cr, contactUri); 还尝试了官方android solution,但仍然抛出异常。有什么方法可以解决这个问题吗?

0 个答案:

没有答案