[英]force close an activity in kitkat & lollipop but work in jellybean?
[英]setLooping(true) is not working in jellybean and kitkat
我正在開發一個從URL播放視頻的應用程序,以控制視頻,我還添加了mediacontroller。
我希望視頻以無休止的循環播放,所以我在媒體播放器中添加了以下代碼
`mp.setLooping(true);`
內部videoview.setOnPreparedListener
方法
但是setLoop(true)
方法在豆形軟糖和kitkat設備中不起作用。 它適用於Android M及更高版本。 我沒有在android L中調試,因為我還沒有模擬器。
我還瀏覽了MediaPlayer文檔,他們提到在API 1中添加了setLooping(true)
,但在android K和J中不起作用
幫助我解決以上問題
下面是我的完整代碼
public void videoStup(final ProgressBar pb, final VideoView videoview)
{
pb.setVisibility(View.VISIBLE);
try
{
MediaController mediacontroller = new MediaController(this);
mediacontroller.setAnchorView(this.videoview);
mediacontroller.setBackgroundResource(R.color.white);
//mediacontroller.setVisibility(View.GONE);
Uri video = Uri.parse(VideoURL);
videoview.setMediaController(mediacontroller);
videoview.setVideoURI(video);
videoview.seekTo(100);
} catch (Exception e)
{
Log.e(TAG, "error = "+e.getMessage());
//e.printStackTrace();
}
videoview.requestFocus();
videoview.setOnPreparedListener(new OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
mp.setLooping(true);
pb.setVisibility(View.GONE);
videoview.start();
}
});
}
我通過以下代碼解決了我的問題,現在它也可以在Android jellybean和Android Kitkat中使用
我唯一需要做的就是在視頻播放完成后調用恢復方法。
這是我的代碼
videoview.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp)
{
Log.d(TAG,"onCompletion");
videoview.resume();
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.