bitmap.com press on null对象引用



因此,基本上我正在尝试生成缩略图图像并将其上传到服务器。所以这是我的代码

 Bitmap thumbnail = ThumbnailUtils.createVideoThumbnail(intent.getStringExtra("uri"), MediaStore.Video.Thumbnails.MINI_KIND);
 ByteArrayOutputStream baos = new ByteArrayOutputStream();
 thumbnail.compress(Bitmap.CompressFormat.JPEG, 100, baos);
 byte[] data = baos.toByteArray();

这是我的URI,我从以前的活动中获得了URI。而且不是零。

content://com.android.providers.media.documents/document/video%3A28682

但是,当我运行此代码时,它将在thumnail.compress方法上显示nullpointerexception。

错误日志..

java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.graphics.Bitmap.compress(android.graphics.Bitmap$CompressFormat, int, java.io.OutputStream)' on a null object reference
                                                                              at com.buckydroid.app.Utils.FirebaseStorage$2.onSuccess(Unknown Source)
                                                                              at com.buckydroid..Utils.FirebaseStorage$2.onSuccess(Unknown Source)
                                                                              at com.google.firebase.storage.StorageTask$1.zza(Unknown Source)
                                                                              at com.google.firebase.storage.StorageTask$1.zzk(Unknown Source)
                                                                              at com.google.firebase.storage.zze$2.run(Unknown Source)
                                                                              at android.os.Handler.handleCallback(Handler.java:751)
                                                                              at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                              at android.os.Looper.loop(Looper.java:154)
                                                                              at android.app.ActivityThread.main(ActivityThread.java:6126)
                                                                              at java.lang.reflect.Method.invoke(Native Method)
                                                                              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
                                                                              at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

所以我做错了什么?

您的错误消息表示缩略图为null。

从thumbnailutils.createvideothumbnail的文档中,"如果视频损坏或不支持格式,则可能返回null。"

因此,您需要检查该调用null的结果,并适当处理。

最新更新