VideoView spielt Videos vom Internal Storage nicht (IOException)

  • Antworten:0
Mathias Lin
  • Forum-Beiträge: 20

04.08.2010, 19:40:40 via Website

In meiner Anwendung habe ich eine VideoView, die bislang Videos und Images von der SDCard anzeigt. Aus Sicherheitsgruenden habe ich die Medien nun in den Internal Storage verschoben (z.B. /data/data/com.myapp/some/folders/video.mp4), und zwar per Routine im Code meiner App. Auf diese Files sollte die App also alle Rechte haben.
In meiner App habe ich nun den Pfad zu den Bildern und Videos geaendert, urspr. /sdcard/, nun zum Internal Storage wie oben angegeben. Mit den Anzeigen der Bilder funktioniert auch alles soweit, aber Videos werden nicht abgespielt, die Datei ist definitiv vorhanden, Rechte sind auch vorhanden, es wird folgende IOException geworfen, beim prepare() des Mediaplayers::

java.io.IOException: Prepare failed.: status=0xFFFFFFFC

Meine Frage also: kann die VideoView keine Videos vom internal storage abspiegeln?


V/MediaPlayer(18060): message received msg=100, ext1=-4, ext2=-4
E/MediaPlayer(18060): SISO TEST MEDIA_ERROR
E/MediaPlayer(18060): error (-4, -4)
V/MediaPlayer(18060): signal application thread
V/MediaPlayer(18060): callback application
V/MediaPlayer(18060): back from callback
V/MediaPlayer(18060): prepare complete - status=-4
E/MyApp(18060): vp Exception in btnVideoPause prep
E/MyApp(18060): java.io.IOException: Prepare failed.: status=0xFFFFFFFC
E/MyApp(18060): at android.media.MediaPlayer.prepare(Native Method)
E/MyApp(18060): at com.myapp.android.activity.videoplayer.VideoPlayer.playVideo(VideoPlayer.java:302)
E/MyApp(18060): at com.myapp.android.activity.videoplayer.VideoPlayer.surfaceCreated(VideoPlayer.java:432)


E/MyApp(18060): at android.view.SurfaceView.updateWindow(SurfaceView.java:532)
E/MyApp(18060): at android.view.SurfaceView.dispatchDraw(SurfaceView.java:339)
E/MyApp(18060): at android.view.ViewGroup.drawChild(ViewGroup.java:1638)
E/MyApp(18060): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1367)
E/MyApp(18060): at android.view.ViewGroup.drawChild(ViewGroup.java:1638)
E/MyApp(18060): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1367)
E/MyApp(18060): at android.view.View.draw(View.java:6796)
E/MyApp(18060): at android.widget.FrameLayout.draw(FrameLayout.java:352)
E/MyApp(18060): at android.view.ViewGroup.drawChild(ViewGroup.java:1640)
E/MyApp(18060): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1367)
E/MyApp(18060): at android.view.View.draw(View.java:6796)
E/MyApp(18060): at android.widget.FrameLayout.draw(FrameLayout.java:352)
E/MyApp(18060): at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1901)
E/MyApp(18060): at android.view.ViewRoot.draw(ViewRoot.java:1407)
E/MyApp(18060): at android.view.ViewRoot.performTraversals(ViewRoot.java:1163)
E/MyApp(18060): at android.view.ViewRoot.handleMessage(ViewRoot.java:1727)
E/MyApp(18060): at android.os.Handler.dispatchMessage(Handler.java:99)
E/MyApp(18060): at android.os.Looper.loop(Looper.java:123)
E/MyApp(18060): at android.app.ActivityThread.main(ActivityThread.java:4627)
E/MyApp(18060): at java.lang.reflect.Method.invokeNative(Native Method)
E/MyApp(18060): at java.lang.reflect.Method.invoke(Method.java:521)
E/MyApp(18060): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:871)
E/MyApp(18060): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:629)
E/MyApp(18060): at dalvik.system.NativeStart.main(Native Method)
I/MediaPlayer(18060): Info (1,26)

Antworten