0

我附加了层次结构图像、清单、xml、java

我的内部存储器中有图像和视频。在我的应用程序的 1 个活动中,我显示图像。有用。在另一项活动中,我展示了视频。我得到的只是“抱歉,无法播放此视频”并返回:

10-11 12:58:50.889: E/MediaPlayer(23497): Error (1,-2147483648)

似乎这可能是一个权限问题,就好像视频在 /mnt/sdcard/.. 它会完全按照它被告知的那样做。这些视频不得更改,因此有人决定将它们放入位于 /data/data/.... 的内部存储中。

我认为这可能是由于我引用图像的方式,但不应调用此问题,因为它是同一个应用程序。是否有我需要的特殊 Manifestflag 或从 /data/data/... 读取视频的东西?

应用布局:

                 -----------------------------------------
                 |            Application                |
                 |           _/         \_               |
                 |   ImageActivity     Video Activity    |
                 -----------------------------------------

显现:

<supports-screens
    android:anyDensity="true"
    android:xlargeScreens="true"
    android:largeScreens="true"
    android:normalScreens="true"
    android:resizeable="true"
    android:smallScreens="true" />

<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.READ_LOGS" />

<uses-feature android:name="android.hardware.camera" android:required="true" />
<uses-feature android:name="android.hardware.microphone" android:required="true" />
<uses-feature android:name="android.hardware.wifi" android:required="true" />
<application
    android:hardwareAccelerated="true"
    android:debuggable="true"
    android:icon="@drawable/pl_launcher"
    android:label="@string/app_name" >
    <activity
        android:name="com.bentley.cordova.plugins.MediaPlaybackActivity" 
        android:launchMode="standard"
        android:configChanges="orientation"
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
    </activity>
</application>

XML:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
    <VideoView
        android:id="@+id/video"
        android:layout_width="wrap_content"
        android:layout_height="match_parent" />
</LinearLayout>

爪哇:

path = this.getIntent().getStringExtra("path_name"); 
//path looks like:   /data/data/com.XXXXX.viewer/folder/video.mp4
setContentView(R.layout.media_playback_video);
VideoView vv = (VideoView)findViewById(R.id.video);
vv.setMediaController(new MediaController(this));
vv.setVideoURI(Uri.parse(path));
vv.requestFocus();
vv.start();
4

1 回答 1

0

使用什么编解码器对这些视频进行编码非常重要,尝试使用其他视频,看看这是否是问题所在。默认情况下,android video view 不能播放任何类型的视频。

于 2012-10-11T19:23:39.680 回答