2012-04-05 6 views
0

Ich muss eine Anwendung machen, wo ich zwei Videos simultan auf dem Bildschirm spielen muss. hier ist mein Code.aber die Video-Dosis nicht play.am mache ich irgendwo falsch? :(Wie kann ich zwei Videos auf einem Bildschirm wiedergeben?

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(); 
    } 
+0

können Sie mit dem Fragment gehen. – Akram

+0

Welches Layout verwenden Sie? Wie werden myVideoView und myVideoView2 auf dem Bildschirm angezeigt? Bitte geben Sie weitere Informationen .... – aProgrammer

+0

Bitte geben Sie weitere nützliche Informationen, so dass wir eine Lösung finden können – harry

Antwort

3

Ich glaube, Sie benötigen zwei separate Threads für zwei Videos. Da IO-Operationen blockiert werden ... Einer der Video-Player für CPU verhungern ... Call() in zwei separate Threads starten. ... Ich hoffe, das hilft !!!

EDIT zuerst den Start() Anrufe von onCreate() entfernen .. erstellen Sie zwei separate Threads

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(); 
     }); 

jetzt diese Fäden einzeln starten ..

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

Hoffe, dass hilft !!!

+0

wie kann ich anschließe und wo Notwendigkeit thread.show me bitte –

+0

das bearbeiten ... – aProgrammer

+0

thanx viel hilft mir, das zu beheben :) –