0

画面上で2つのビデオを同時に再生する必要があるアプリケーションを作成する必要があります。これが私のコードですが、ビデオは再生されません。どこでも間違っていますか?:(

    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    VideoView myVideoView = (VideoView)findViewById(R.id.myvideoview);
    myVideoView.setVideoURI(Uri.parse(SrcPath));
    myVideoView.setMediaController(new MediaController(this));
    myVideoView.requestFocus();
    myVideoView.start();
    VideoView myVideoView2 = (VideoView)findViewById(R.id.myvideoview2);
    myVideoView2.setVideoURI(Uri.parse(SrcPath2));

    myVideoView2.setMediaController(new MediaController(this));
    myVideoView2.requestFocus();
    myVideoView2.start();
    }
4

1 に答える 1

3

2つのビデオを再生するには、2つの別々のスレッドが必要だと思います。IO操作がブロックされているため...ビデオプレーヤーの1つがCPUを使い果たしている可能性があります...2つの別々のスレッドでstart()を呼び出します....お役に立てば幸いです!!!

EDIT は、最初にonCreate()からstart()呼び出しを削除します。2つの別々のスレッドを作成します。

    Thread view1Thrad = new Thread(new Runnable(){
    @Override
    public void run(){
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_DISPLAY);
    myVideoView.start();
    });
    Thread view2Thrad = new Thread(new Runnable(){
        @Override
        public void run(){
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_DISPLAY);
        myVideoView2.start();
        });

これらのスレッドを1つずつ開始します...

view1Thread.start(); //starts first video
view2Thread.start(); //starts second video

お役に立てば幸いです!!!

于 2012-04-05T06:51:39.533 に答える