Android 2.3.3 Eclipse Version: 3.7.0 LogCat emulator-5554
虚拟机,采用VideoView 播放视频。
弹出错误提示:无法播放视频。很抱歉,无法播放此视频。
?
?LogCat 报错信息:
02-09 17:57:08.470: INFO/StagefrightPlayer(34): setDataSource('sdcard/video/taobao.3gp') 02-09 17:57:08.501: ERROR/MediaPlayer(6606): error (1, -2147483648) 02-09 17:57:08.609: ERROR/MediaPlayer(6606): Error (1,-2147483648) 02-09 17:57:08.609: DEBUG/VideoView(6606): Error: 1,-2147483648 02-09 17:57:24.489: ERROR/MediaPlayer(6606): stop called in state 0 02-09 17:57:24.489: ERROR/MediaPlayer(6606): error (-38, 0) 02-09 17:57:24.600: WARN/MediaPlayer(6606): mediaplayer went away with unhandled events
发生错误原因分析:将视频文件类型由AVI文件类型更改为3GP文件类型,可以播放。但即使播放3GP类型文件,在找不到此文件时,也报错。
?
因此,至少有两种原因会引起此错误:
1、播放文件不存在;
2、硬件不支持此播放文件;
解决办法:
?在Activity中添加视频错误监听器,监听视频播放过程产生的错误,并作相应处理。
public OnErrorListener videoErrorListener = new OnErrorListener() { @Override public boolean onError(MediaPlayer mp, int what, int extra) { // 播放出错处理 …… return true; } };
?
在播放部分设置此监听器。
VideoView htcVideoView = (VideoView) findViewById(R.id.htcVideoView);
htcVideoView.setOnErrorListener(videoErrorListener);
?