Android-Pfad zur Ressource im Paket
Ich versuchte, Sie ein video hinzufügen Pfad zu einem Android sample project - MediaPlayerDemo
Kann ich das video Abspielen, wenn es in sdcard gespeichert, der Pfad ist
"file:///sdcard/dcim/.m4v"
Aber ich kann nicht das video Abspielen, wenn es gespeichert in res/drawable. der Weg ist
"android.resource://" +.getPackageName () + "/" + R. drawable.ein
Lese ich die id des video in den debug-Modus, aber kann nicht nur das video wiedergeben.
Wie es zu lösen?
UPDATES
Danke für die Antwort, bisher habe ich versucht:
- legte das video in assets, setzen Sie den Pfad auf "file:///android_asset/ein.m4v".
- legte das video in raw, setzen Sie den Pfad auf
("android.resource://" +.getPackageName () + "/" + R. raw.a) oder ("android.resource://" +.getPackageName () + "/raw/a)
aber keiner von Ihnen kann die Wiedergabe von video.
Mein video ist 1,8 Mb, spielt es eine Rolle?
nutzen Sie diesen Weg 'Uri myUri = Uri.parse("android.resource://" + getPackageName() + "/" + R. drawable.a); videoHolder.setVideoURI(myUri);'
aber richtige Weg, um Ihr video in Vermögenswerte oder raw Ordner wie Mayani ans.
Ich habe versucht, viele Methoden, aber immer noch ein setDataSourceFD Fehler: status=0x80000000
ok, dann poste deinen code und log?
aber richtige Weg, um Ihr video in Vermögenswerte oder raw Ordner wie Mayani ans.
Ich habe versucht, viele Methoden, aber immer noch ein setDataSourceFD Fehler: status=0x80000000
ok, dann poste deinen code und log?
InformationsquelleAutor user1297295 | 2012-03-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Erstellen Sie einen neuen Ordner mit dem Namen raw in res - Ordner, falls schon erstellt, lass es sein. Kopieren Sie Ihre abspielbare video-Datei (z.B., myvideo.mp4) raw Ordner. Verwenden Sie untenstehenden code in Ihre app.
Ich getestet, seine Arbeit für mich. Wenn das video abspielbar ist from sdcard dann nur spielen Sie aus raw-Ordner, sonst zeigt es ein Dialogfeld, sagt kann Nicht spielen video.
versuchen Sie es und lassen Sie mich wissen, was passiert ist.
ich konnte endlich zur Wiedergabe von meinem lokalen video! Thks aber vergessen Sie nicht, entfernen Sie die Dateiendung in Ihre uri-Pfad, weiß nicht warum, aber es funktionierte nicht, bis ich entfernt .mp4-Erweiterung
InformationsquelleAutor Yugandhar Babu
FYI, drawable ist zum speichern von Symbolen, Bildern, drawables für die Anwendung. So können Sie die gleichen video-entweder in
assets
oder inraw
Ordner.danke. aber ich kann immer noch nicht die Wiedergabe von video in diese beiden Ordner.
InformationsquelleAutor Paresh Mayani
Habe ich die Lösung gefunden, aber nicht geradlinig.
Ersten, die Datei wurde nicht gefunden " problem ist nicht in der path-problem, es ist, weil die Erlaubnis problem.
Lösen, dass viele Leute schlagen kopieren Sie die Datei in den FileInputStream. Aber immer noch Datei wurde nicht gefunden " problem.
Aber die Datei kann geschrieben werden Inputstream. Allerdings setDataSource() von Mediaplayer-Klasse nicht acccept InpuStream. Daher schreiben müssen, den Inputstream an einen temp-Datei BufferedOutputStream.
schließlich setDataSource(tempfile_path) ohne Fehler.
Benutzen Sie bitte den link "Bearbeiten" button unter deinem Beitrag weitere Informationen hinzufügen, um es, statt mit dem Kommentar-Abschnitt. Es ist viel schwerer zu Lesen.
InformationsquelleAutor user1297295
Diese Frage ist ziemlich alt und immer noch nicht die Fragen gut beantwortet, so dass ich hier eine Antwort.
Zunächst nicht videos in den Ordner "assets". Es ist eine schlechte Praxis. Erstellen Sie einen anderen Ordner (am besten einen namens raw).
Die zweite Sache ist, dass bitte verwenden Sie keine m4v-format. Verwenden Sie ein mp4-video.
Hier ist der code zum einfügen video:
Hoffe, das klärt Ihre Zweifel!
InformationsquelleAutor Mukund Madhav