MediaMetadata.getString java.lang.RuntimeException:无法从包blob读取位图
调用MediaMetadata.getString,在报告中出现以下崩溃,但并不总是重新启动:MediaMetadata.getString java.lang.RuntimeException:无法从包blob读取位图,java,android,bitmap,android-music-player,Java,Android,Bitmap,Android Music Player,调用MediaMetadata.getString,在报告中出现以下崩溃,但并不总是重新启动: java.lang.RuntimeException: Could not read bitmap from parcel blob. at android.graphics.Bitmap.nativeCreateFromParcel(Native Method) at android.graphics.Bitmap.access$000(Bitmap.java:32) at
java.lang.RuntimeException: Could not read bitmap from parcel blob.
at android.graphics.Bitmap.nativeCreateFromParcel(Native Method)
at android.graphics.Bitmap.access$000(Bitmap.java:32)
at android.graphics.Bitmap$1.createFromParcel(Bitmap.java:1477)
at android.graphics.Bitmap$1.createFromParcel(Bitmap.java:1469)
at android.os.Parcel.readParcelable(Parcel.java:2246)
at android.os.Parcel.readValue(Parcel.java:2146)
at android.os.Parcel.readArrayMapInternal(Parcel.java:2479)
at android.os.BaseBundle.unparcel(BaseBundle.java:221)
at android.os.BaseBundle.getCharSequence(BaseBundle.java:953)
at android.os.Bundle.getCharSequence(Bundle.java:716)
at android.media.MediaMetadata.getText(MediaMetadata.java:334)
at android.media.MediaMetadata.getString(MediaMetadata.java:347)
代码如下所示,MediaMetadata元来自api MediaSessionManager.OnActiveSessionsChangedListener的控制器,应由第三方音乐应用程序创建
meta.getString(MediaMetadata.METADATA_KEY_ALBUM_ARTIST);
meta.getString(MediaMetadata.METADATA_KEY_ARTIST);
meta.getString(MediaMetadata.METADATA_KEY_AUTHOR);
meta.getBitmap(MediaMetadata.METADATA_KEY_ART);
meta.getBitmap(MediaMetadata.METADATA_KEY_ALBUM_ART);
meta.getString(MediaMetadata.METADATA_KEY_ALBUM);
meta.getString(MediaMetadata.METADATA_KEY_TITLE);
为什么getString会解析位图?发生这种情况时,内存是否可能已用完?我认为,当您使用
.putbimat(MediaMetadataCompat.METADATA\u KEY\u DISPLAY\u ICON,ICON)
将大位图放入MediaMetaData
对象时,会发生这种情况。此位图用于MediaDescription
,因此序列化后应该非常小。实际上,每次对元数据调用getString
,它都会被反序列化
因此,这个问题的解决方案是只对
元数据\u KEY\u DISPLAY\u ICON
使用小位图,或者尽可能不使用它。你在读什么字段/你如何构建MediaMetadata
?添加细节@ianhanniballake有什么新闻吗?@SarahMa你能修复它吗?我也有同样的问题。