Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android VideoView图像在20秒后锁定_Android_Video Streaming_Android Videoview - Fatal编程技术网

Android VideoView图像在20秒后锁定

Android VideoView图像在20秒后锁定,android,video-streaming,android-videoview,Android,Video Streaming,Android Videoview,我有一个新问题,有点奇怪。 我试过videoview 4设备。20秒后,它会阻挡图像。声音响了。我试图添加“setLayerType(View.LAYER_TYPE_SOFTWARE,null);”但没有帮助,相反,图像显示完全没有黑色。 它能解决吗 import android.app.ProgressDialog; import android.graphics.PixelFormat; import android.media.MediaPlayer; import android

我有一个新问题,有点奇怪。 我试过videoview 4设备。20秒后,它会阻挡图像。声音响了。我试图添加“setLayerType(View.LAYER_TYPE_SOFTWARE,null);”但没有帮助,相反,图像显示完全没有黑色。 它能解决吗

    import android.app.ProgressDialog;
import android.graphics.PixelFormat;
import android.media.MediaPlayer;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import android.view.View;
import android.widget.MediaController;
import android.widget.VideoView;


public class Player extends AppCompatActivity {

    private static ProgressDialog progressDialog;

    String videourl = "http://xxxxxxxx/playlist.m3u8";
    VideoView videoView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_player);

        videoView = (VideoView) findViewById(R.id.myVideoView);

        progressDialog = ProgressDialog.show(Player.this, "", "Buffering video...", true);
        progressDialog.setCancelable(false);

        PlayVideo();
    }

    private void PlayVideo() {
        try {
            getWindow().setFormat(PixelFormat.TRANSLUCENT);

            MediaController mediaController = new MediaController(Player.this);
            mediaController.setAnchorView(videoView);

            Uri video = Uri.parse(videourl);
            videoView.setMediaController(mediaController);
            videoView.setVideoURI(video);
            videoView.requestFocus();
            videoView.setVisibility(View.VISIBLE);

            videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {

                public void onPrepared(MediaPlayer mp) {
                    progressDialog.dismiss();
                    videoView.start();

                }
            });

        } catch (Exception e) {
            progressDialog.dismiss();
            System.out.println("Video Play Error :" + e.toString());
            finish();
        }

    }

}

嗯,我也经历过同样的情况,
.m3u8
格式文件在android中不完全受支持,事实上有些设备会播放视频,而另一些设备会在某个时候停止播放

如果您必须只播放
.m3u8
文件,我建议您尝试使用其他播放器,例如:

事实上,
.m3u8
格式未列为Android操作系统支持的格式:

检查我的另一个答案:

我个人认为真正的问题是硬件。在Snapdragon CPU 805(nexus6)中,向右移动。在英特尔cpu nexus player中,请勿使用。华硕英特尔cpu zenfone2只是黑屏。在英伟达盾这里作为黑屏电视。但在9月份,nexus cpu nvidia k1进展顺利。因此,我的观点是一个只影响某些处理器的问题。