【发布时间】:2018-06-01 09:59:09
【问题描述】:
我将用户的图像 uri 作为字符串保存在我的 RoomDatabase 中。 这就是我所知道的我不知道如何克服这个错误并将图像显示到 RecyclerView,我已经阅读了一些关于位图等的内容,但无法理解或用它们编码。
RecyclerAdapter.java
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
Student current = students.get(position);
holder.nameItemView.setText(current.getName());
holder.numberItemView.setText(current.getNumber());
///here!
Uri uri = Uri.parse(current.getImagePath());
holder.studImage.setImageURI(uri);
}
在 listView 上它不显示图像。 我检查了调试器并看到了这个错误:
ava.lang.SecurityException: Permission Denial: opening provider com.android.providers.media.MediaDocumentsProvider from ProcessRecord{5ca0d63 20181:com.example.android.studmanagedbtrain/u0a92} (pid=20181, uid=10092) requires that you obtain access using ACTION_OPEN_DOCUMENT or related APIs
at android.os.Parcel.readException(Parcel.java:2004)
W/ImageView: Unable to open content: content:/com.android.providers.media.documents/document/image%3A42
java.io.FileNotFoundException: No content provider: content:/com.android.providers.media.documents/document/image%3A42
at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1396)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1247)
at android.content.ContentResolver.openInputStream(ContentResolver.java:967)
at android.widget.ImageView.getDrawableFromUri(ImageView.java:951)
at android.widget.ImageView.resolveUri(ImageView.java:922)
at android.widget.ImageView.setImageURI(ImageView.java:531)
at .
etc.
etc.
.
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
resolveUri failed on bad bitmap uri: content:/com.android.providers.media.documents/document/image%3A42
【问题讨论】:
标签: android imageview android-recyclerview android-room