android VideView 播放几段视频卡死

joice5201112 2012-10-29 11:23:10
求教!!
我用videoview 来播放几段视频,会出现CPU占用过高 不能释放的情况,求帮忙。问题背景是:有10段视频,用户可以根

据自己的喜欢来播放任意一段视频。我的设计是 有两个activity,第一个是提供给用户选择视频;第二个播放用户选择的视频。视

频播完后回到第一个界面

下面是我播放视频操作的详细情况:(拜托了)

①布局就不详细说了 relativeLayout里面 一个 videoview;

② 把要播放了10段视频uri地址存在数组uris里面
uris = new Uri[10];
uris[1] = Uri.parse("android.resource://"+ getPackageName() +"/"+ R.raw.q1);
。。。。

③播放视频
m_videoWindow = (VideoView) findViewById(R.id.VideoView01);
//播放结束监听
m_videoWindow.setOnCompletionListener(this);
m_videoWindow.setVideoURI(uris[videoNo]);
m_videoWindow.setMediaController(new MediaController(IntroActivity.this););
m_videoWindow.requestFocus();

m_videoWindow.start();

④视频播放结束处理
public void onCompletion(MediaPlayer arg0) {
try{
arg0.stop();
// arg0.release(); //注释 因为 argo0 已经Stop 再release会导致异常
arg0.reset();
arg0 = null;
}catch(IllegalStateException e){
e.printStackTrace();
}
finally{
m_videoWindow.stopPlayback();
m_videoWindow.setVideoURI(null);
m_videoWindow.setMediaController(null);
this.finish();
}
}


这是播放视频出现的情况:



...全文
857 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
joice5201112 2012-10-29
  • 打赏
  • 举报
回复
额 图片显示不了..

MediaPlayer getMetadata
D/dalvikvm(9676): GC_EXPLICIT freed 3116K, 18% free 26355K/32007K, paused 2ms+3ms
GC_FOR_ALLOC freed 11114k, 53% free 15252k/32007k, paused 10ms
I/dalvikvm-heap(9676): Grow heap (frag case) to 17.971MB for 3145744-byte allocation
D/dalvikvm(9676): GC_CONCURRENT freed <1K, 43% free 18324K/32007K, paused 1ms+1ms
GC_FOR_ALLOC freed 0, 43% free 18324k/32007k, paused 10ms
I/dalvikvm-heap(9676): Grow heap (frag case) to 23.303MB for 5591056-byte allocation

dalvikvm GC_CONCURRENT free 0 k ,9% free 29285k/32007k,paused 0ms+2ms
dalvikvm threadid = 3: reacting to signal 3
dalvikvm wrote stactk traces to '/data/anr/traces.txt'
dalvikvm threadid = 3: reacting to signal 3
dalvikvm wrote stactk traces to '/data/anr/traces.txt'
dalvikvm threadid = 3: reacting to signal 3
dalvikvm wrote stactk traces to '/data/anr/traces.txt'
dalvikvm threadid = 3: reacting to signal 3
dalvikvm wrote stactk traces to '/data/anr/traces.txt'
dalvikvm threadid = 3: reacting to signal 3
dalvikvm wrote stactk traces to '/data/anr/traces.txt'
dalvikvm threadid = 3: reacting to signal 3
dalvikvm wrote stactk traces to '/data/anr/traces.txt'
dalvikvm threadid = 3: reacting to signal 3
dalvikvm wrote stactk traces to '/data/anr/traces.txt'
...


D/dalvikvm(9676): GC_CONCURRENT freed <1K, 26% free 23825K/32007K, paused 1ms+2ms
I/dalvikvm-heap(9676): Grow heap (frag case) to 23.303MB for 5591056-byte allocation

I/dalvikvm-heap(9676): Grow heap (frag case) to 28.674MB for 5591056-byte allocation

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧