【发布时间】:2017-06-09 01:13:51
【问题描述】:
当我运行我的应用程序时,我遇到了这些问题。
- 黑屏闪烁 2 秒,然后显示我的应用的实际意图。
- 视频开始播放,当我向上/向下滚动时,
VideoView变为白色并继续播放。无法观看视频,但在后台播放。 - 播放完成后,几秒钟后,我收到“无法播放此视频”对话框。
这是我的适配器代码的摘录:
public class MessageAdapter extends ArrayAdapter<Message> {
private static class ViewHolder {
TextView authorTextView, timeStamp, messageTitle, messageTextView;
VideoView videoView;
ImageView photoImageView;
}
public View getView(int position, View convertView, ViewGroup parent) {
// Gets the message that we are displaying at a position
Message message = getItem(position);
...
boolean isPhoto = message.getPhotoUrl() != null;
boolean isVideo = message.getVideoUrl() != null;
if (isPhoto) {
// Photo Present
} else if (isVideo) {
// Video present
Log.d(TAG, "Video present !");
viewHolder.messageTextView.setVisibility(View.GONE);
viewHolder.photoImageView.setVisibility(View.GONE);
viewHolder.timeStamp.setVisibility(View.VISIBLE);
viewHolder.videoView.setVisibility(View.VISIBLE);
viewHolder.videoView.setVideoPath(message.getVideoUrl());
viewHolder.videoView.start();
Log.d(TAG, "Video URL : "+message.getVideoUrl());
} else {
// Photo and video both absent
}
return convertView;
}
}
我在LogCat:
显示 Logged 信息后,会出现如下警告,如下所示
D: Video present !
D: Video URL : https://firebasestorage.googleapis.com/v0/b/xxx.appspot.com/o/photos%2Fvideo%3A34334?alt=media&token=05xf6c2f-6abc-4ab9-b696-32153fa3d0aa
W: Couldn't open https://firebasestorage.googleapis.com/v0/b/xxx.appspot.com/o/photos%2Fvideo%3A34334?alt=media&token=05cf6c2f-6abc-4ab9-b696-32153fa3d0aa: java.io.FileNotFoundException: No content provider: https://firebasestorage.googleapis.com/v0/b/xxx.appspot.com/o/photos%2Fvideo%3A34334?alt=media&token=05cx6c2f-6abc-4ab9-b696-32153fa3d0aa
I: proxyName: 0.0.0.0 0
W: finishComposingText on inactive InputConnection
D: getMetadata
I: proxyName: 0.0.0.0 0
W: info/warning (703, 0)
I: proxyName: 0.0.0.0 0
V: Inactivity, disconnecting from the service
I: proxyName: 0.0.0.0 0
I: proxyName: 0.0.0.0 0
E: error (1, -2147483648)
这是我的VideoView 布局:
<VideoView
android:id = "@+id/admin_video_view"
android:layout_width = "300dp"
android:layout_height = "200dp"
android:layout_weight = "1"
android:layout_marginLeft = "10dp"
android:paddingTop = "5dp"
android:scaleType = "centerCrop" />
【问题讨论】:
-
Firebase 在哪里?您是否在其他设备或模拟器中启动过此应用?
-
@CoolMind 这在我的 MainActivity 中。刚刚更新了我的问题。请参见上文。
-
现在我已经从 Firebase 存储本地下载到我的移动存储。从here 得到提示。现在的问题是,我在哪里设置
MessageAdapter中的视频路径?或MainActivity?你能指导我吗? @CoolMind -
如果您尝试使用本地资源(如存储在
raw文件夹中的.mp4电影),效果是否良好? -
@PC。你能避免写 cmets 来回答不相关的问题,其唯一目的是链接到这个问题吗?
标签: android android-arrayadapter android-videoview