2013-12-04 3 views
2

Я использую следующий код для запуска нескольких видео за раз. ОБНОВЛЕНО КОДОдновременное воспроизведение нескольких видеороликов

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

    video1=(VideoView)findViewById(R.id.myvideoview); 
    video1.setVideoURI(Uri.parse("android.resource://" +getPackageName()+ "/"+R.raw.sample)); 
    video1.setMediaController(new MediaController(this)); 
    video1.requestFocus(); 

    video2=(VideoView)findViewById(R.id.myvideview); 
    video2.setVideoURI(Uri.parse("android.resource://" +getPackageName()+ "/"+R.raw.sample1)); 
    video2.setMediaController(new MediaController(this)); 
    video2.requestFocus(); 

    Thread view1=new Thread(new Runnable() { 

     @Override 
     public void run() { 
      // TODO Auto-generated method stub 
      android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_DISPLAY); 
      video1.start(); 
     } 
    }); 

    Thread view2=new Thread(new Runnable() { 

     @Override 
     public void run() { 
      // TODO Auto-generated method stub 
      android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_DISPLAY); 
      video2.start(); 
     } 
    }); 

    view1.start(); 
    view2.start(); 
} 

И это дает мне ошибки и появляется и показывает, что не может играть видео

Любой suggesion

mediaPlayer error (1, -110) 

И вдруг диалоговое окно ??

+1

Пожалуйста, сообщите ваши ошибки в logcat. –

+0

Почему вы создаете объект видеоизображения внутри потока и почему вы не запускаете оба видео на отдельной теме? –

+0

Я пробовал это раньше .. Но он даже не играл в одно видео. Поэтому я пробовал это. Если вы можете помочь мне таким образом, вы тоже всегда будете рады. – Rohit

ответ

0

Вы не можете выполнять операции, связанные с пользовательским интерфейсом, на фоне потоков. Android выполняет все операции пользовательского интерфейса в основном потоке. Вот почему сообщение об ошибке говорит: «Только исходный поток, создавший иерархию представлений, может коснуться его представлений».

+0

Так вы можете предложить мне любой другой способ? – Rohit

+0

Вы можете использовать метод post. http://developer.android.com/reference/android/view/View.html#post(java.lang.Runnable) – Shashika

+0

Простой пример можно найти в https://pastee.org/t67pa – Shashika

0

Я получил решение ....

Над кода вывешен меня работает, но это зависит от ч/б ускорителя. Если он поддерживает multi- video view в то время, тогда он будет работать в отличном состоянии, это даст вам ошибку This media can not be played

Смежные вопросы