在android videoview中播放mp4文件

时间:2013-12-16 11:28:53

标签: android video-streaming android-videoview android-video-player

我正在尝试在我简单的Android视频中播放mp4视频。这是我的代码

VideoView videoView;
videoView = (VideoView) findViewById(R.id.videoViewa);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
//URI either from net
Uri video = Uri.parse("http://www.fieldandrurallife.tv/videos/Benltey%20Mulsanne.mp4");
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.start();

我的布局看起来像

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

<VideoView
    android:id="@+id/videoViewa"
    android:layout_width="match_parent"
    android:layout_gravity="center"
    android:layout_height="match_parent" />


</RelativeLayout>

Manifest看起来像

    android:targetSdkVersion="18" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

尝试启动应用程序时出现以下错误

Couldn't open file on client side, trying server side
error (1, -1004)

有没有人面对同样的事情?

请帮忙 提前致谢

1 个答案:

答案 0 :(得分:0)

您的代码似乎很好,我认为问题来自服务器端。我不知道你是如何使用你的服务器的。但尝试使用自己的服务器。 请设置Apache Web服务器以测试您的本地视频。设置Apache的教程是here

如果您不想使用自己的服务器,请使用在线mp4链接here,这是我正在使用的测试文件。

测试此链接的最简单方法是使用Web浏览器打开链接以检查文件是否可访问,只需将URL粘贴到浏览器即可。

如果您已经拥有&#34; adb&#34;,您还可以在Android端测试该链接。使用命令:

adb shell am start -a android.intent.action.VIEW -d http://169.228.179.91/username/abc.mp4