Visualizzare un video in un VideoView da Firebase URL in Android

Quando eseguo la mia applicazione, sto avendo questi problemi.

  • Uno schermo nero lampeggia per 2 secondi e visualizza l'intento reale della mia applicazione.
  • Il video viene avviato e quando scorri su / giù, il VideoView diventa bianco e continua a suonare. Non in grado di vedere il video, ma gioca in background.
  • Dopo che il gioco è fatto, per qualche secondo ho ottenuto questo dialogo "imansible riprodurre questo video".

Questo è l'estratto del mio codice dell'adattatore :

  • NullPointerException da getExtras ()
  • Come creare la richiesta SOAP tramite ksoap2
  • La cartella Android SDK richiede molto spazio su disco. Abbiamo bisogno di mantenere tutte le immagini di sistema?
  • Imansible visualizzare il puntino e il cerchio blu nelle mappe di Mylocation
  • Rimuovi gli elementi di ListView in Android
  • phonegap eseguire android - creare Comando non riuscito con il codice di output 8 - linux
  •  public class MessageAdapter extends ArrayAdapter<Message> { private static class ViewHolder { TextView authorTextView, timeStamp, messageTitle, messageTextView; VideoView videoView; ImageView photoImageView; } public View getView(int position, View convertView, ViewGroup parent) { // Gets the message that we are displaying at a position Message message = getItem(position); ... boolean isPhoto = message.getPhotoUrl() != null; boolean isVideo = message.getVideoUrl() != null; if (isPhoto) { // Photo Present } else if (isVideo) { // Video present Log.d(TAG, "Video present !"); viewHolder.messageTextView.setVisibility(View.GONE); viewHolder.photoImageView.setVisibility(View.GONE); viewHolder.timeStamp.setVisibility(View.VISIBLE); viewHolder.videoView.setVisibility(View.VISIBLE); viewHolder.videoView.setVideoPath(message.getVideoUrl()); viewHolder.videoView.start(); Log.d(TAG, "Video URL : "+message.getVideoUrl()); } else { // Photo and video both absent } return convertView; } } 

    Sto ottenendo questo su LogCat :

    Dopo aver visualizzato le informazioni registrate, viene visualizzato un avviso come segue

     D: Video present ! D: Video URL : https://firebasestorage.googleapis.com/v0/b/xxx.appspot.com/o/photos%2Fvideo%3A34334?alt=media&token=05xf6c2f-6abc-4ab9-b696-32153fa3d0aa W: Couldn't open https://firebasestorage.googleapis.com/v0/b/xxx.appspot.com/o/photos%2Fvideo%3A34334?alt=media&token=05cf6c2f-6abc-4ab9-b696-32153fa3d0aa: java.io.FileNotFoundException: No content provider: https://firebasestorage.googleapis.com/v0/b/xxx.appspot.com/o/photos%2Fvideo%3A34334?alt=media&token=05cx6c2f-6abc-4ab9-b696-32153fa3d0aa I: proxyName: 0.0.0.0 0 W: finishComposingText on inactive InputConnection D: getMetadata I: proxyName: 0.0.0.0 0 W: info/warning (703, 0) I: proxyName: 0.0.0.0 0 V: Inactivity, disconnecting from the service I: proxyName: 0.0.0.0 0 I: proxyName: 0.0.0.0 0 E: error (1, -2147483648) 

    Questo è il mio layout VideoView :

     <VideoView android:id = "@+id/admin_video_view" android:layout_width = "300dp" android:layout_height = "200dp" android:layout_weight = "1" android:layout_marginLeft = "10dp" android:paddingTop = "5dp" android:scaleType = "centerCrop" /> 

  • Come si può utilizzare l'aggiornamento sqlite tramite ContentValues ​​quando si desidera aggiornare dipende dal valore corrente e come è ansible recuperare il risultato?
  • Android traduce l'animation - sposta definitivamente la vista in una nuova posizione utilizzando AnimationListener
  • Eclipse si blocca in DDMS post-create init
  • Utilizzando onSaveInstanceState con frammenti in backstack?
  • Perché viene visualizzato errore in Android durante l'inserimento dei dati utilizzando gli endpoint di Google App Engile?
  • Come passare la string html a webview su android
  • One Solution collect form web for “Visualizzare un video in un VideoView da Firebase URL in Android”

    Il colpevole qui è android.widget.VideoView che estende SurfaceView .

    Questo blog dice:

    La riproduzione di un video utilizzando un VideoView all'interno di una row di un ListView sembra funzionare all'inizio, finché l'utente non tenta di scorrere l'elenco. Non appena l'elenco comincia a scorrere, il video diventa nero (a volte viene visualizzato bianco). Continua a suonare in background ma non puoi più vederlo perché rende il resto del video come casella nera.

    Ho scritto la mia class VideoView che estende TextureView con l'aiuto di questo repository di github . Anche se ha alcuni problemi come è stato scritto 3 anni fa sono riuscito a risolvere i miei. Molto presto aggiornerò questa risposta con il mio repository personalizzato Optimized VideoView github (solo con poche modifiche). Fino ad allora, il collegamento che ho fornito ti aiuterà.

    Con il VideoView ottimizzato personalizzato, i video suoneranno sullo scorrimento nel ListView proprio come il nostro Instagram, Facebook, Twitter. Possiamo fare i video su / pausa impostando setOnTouchListener() su VideoView nella nostra attività e può personalizzarla a modo nostro.

    Ora, il nostro VideoView nei Layouts sarebbe:

     <your.packagename.VideoView android:id="@+id/admin_video_view" android:layout_width="300dp" android:layout_height="300dp" /> 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.