2016-11-12 5 views
0

SzenarioVideoview nicht in Applikation für Android spielen

Ich habe eine Android App, die eine Master/Detail-Layout verwendet. Wenn ich also im linken Bereich auf "Videos" klicke, navigiert es zu einem neuen Fenster, auf dem der Videoname und der Link heruntergeladen werden. Wenn Sie dann einen Titel auswählen, wird das linke Fenster ausgeblendet und das Video wird abgespielt.

Problem

Ich habe eine Videoview verwenden, und seltsam, ich kann nicht das Video zu spielen bekommen. Ich bekomme wirklich keinen Fehler, aber der Bildschirm bleibt schwarz, und ich glaube, ich höre den Ton von den ersten paar Sekunden des Videos, gefolgt von dem Bild, das ich hochgeladen habe und kein Bild.

See-Code

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 

    view = inflater.inflate(R.layout.fragment_drone_life3, null); 
    vidView=(VideoView)view.findViewById(R.id.ivEvent); 
    context=this.getActivity(); 
    return view; 
} 
public void onItemClick(AdapterView<?> adapterView, View view, 
            int position, long id) { 
       if (new ConnectionDetector(context).isConnectingToInternet()) { 
//get VidLink variable of item in this location and place in the var videoLink 
        videoLink = eventsDTOs.get(position).getVidLink(); 

        try { 

         MediaController mediaController = new MediaController(getContext()); 
         mediaController.setAnchorView(vidView); 
         Uri video = Uri.parse(videoLink); 
         vidView.setMediaController(mediaController); 
         vidView.setVideoURI(video); 
         vidView.start(); 
         MainActivity.closeSlidingDrawer(); 
        } catch (Exception e) { 
         // TODO: handle exception 
         Toast.makeText(getContext(), "Error connecting", Toast.LENGTH_SHORT).show(); 
        } 


        // new TaskGetEventImage().execute(eventsDTOs.get(position).getId()); 
       } else { 
        Toast.makeText(context, context.getResources().getString(R.string.NETWORK_ERROR),Toast.LENGTH_LONG).show(); 
       } 
      } 

enter image description here

Antwort

1

Für Video von URL

VideoView videoView=(VideoView) findViewById(R.id.myVideo); 
    videoView.setVideoURI(Uri.parse("http://website.com/somevideoname.mp4")); 
    videoView.setMediaController(new MediaController(this)); 
    videoView.requestFocus(); 
    videoView.start(); 

Für Video von SD-Karte oder interner Speicher

MediaController vidControl; 
    String sdPath; 

    VideoView videoView=(VideoView) findViewById(R.id.myVideo); 
    vidControl = new MediaController(this); 
    vidControl.setAnchorView(videoView); 
    videoView.setMediaController(vidControl); 
    videoView.setVideoPath(sdPath); 
    videoView.requestFocus(); 
    videoView.start(); 

ich spielen w spielen Ich schlage vor, zu versuchen, obige Lösung zum Abspielen von Videos zu verwenden.

+0

Entschuldigung nicht die Lösung, nur ein fehlerhaftes Kopieren und Einfügen – Niana

+0

überprüfen Sie die bearbeitete Lösung und diese Lösung funktioniert nicht auf dem Emulator. Sie sollten das echte Mobiltelefon benutzen. ich hoffe, dass es funktionieren wird –

0

Dieser Fehler wurde behoben, der Fehler war, dass mein Server einige Kodierungen ausführte, die das Telefon nicht verarbeiten konnte.

Verwandte Themen