我尝试使用videoview在互联网上播放视频:
<tr>
<td>description</td>
<td contenteditable='true' (input)="onRowClick($event, 'description', i)">{{ row.description }}</td>
<td>{{row.description}}</td> <<==== default value must not change when editing the first one
</tr>
我怎么知道视频资源可以播放(处理异常),到目前为止我尝试过:
String path1="http://someserverhere.com
Uri uri=Uri.parse(path1);
VideoView video=(VideoView)findViewById(R.id.VideoView01);
video.setVideoURI(uri);
video.start();
但是这段代码 - 媒体播放器挂了我的屏幕。 有什么建议吗? Tks很多。
答案 0 :(得分:0)
也许您可以检查文件是否与标题请求一起存在
GestureOverlayView
答案 1 :(得分:0)
您可以使用以下代码检查视频的宽度和高度来检查。
MediaMetadataRetriever mRetriever = new MediaMetadataRetriever();
mRetriever.setDataSource(context, uri);
Bitmap frame = mRetriever.getFrameAtTime();
int width = frame.getWidth();
int height = frame.getHeight();
答案 2 :(得分:0)
从网络完整代码播放视频。
注意:在清单中添加Internet权限。
<uses-permission android:name="android.permission.INTERNET" />
public class MainActivity extends Activity {
ProgressDialog pDialog;
VideoView videoview;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String VideoURL = "http://clips.vorwaerts-gmbh.de/VfE_html5.mp4";
videoview = (VideoView) findViewById(R.id.videoView);
pDialog = new ProgressDialog(this);
pDialog.setTitle("Android Video Streaming Demo");
pDialog.setMessage("Buffering...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(false);
pDialog.show();
try {
// Start the MediaController
MediaController mediacontroller = new MediaController(this);
mediacontroller.setAnchorView(videoview);
// Get the URL from String VideoURL
Uri video = Uri.parse(VideoURL);
videoview.setMediaController(mediacontroller);
videoview.setVideoURI(video);
} catch (Exception e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
videoview.requestFocus();
videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
// Close the progress bar and play the video
public void onPrepared(MediaPlayer mp) {
pDialog.dismiss();
videoview.start();
}
});
}
}