如何在安卓上编写一个简单的视频播放器?

11

我有一段用于Android平台的简单音频播放器代码,但是不能用于视频。请指导我编写一个简单的视频播放器。

音频播放器的代码如下:

package com.example.helloplayer;

public class HelloPlayer extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        MediaPlayer mp = MediaPlayer.create(this, R.raw.file); 
        mp.start();
   }
}

2
Google(安卓开发者,不是“谷歌一下” :))已经为您完成了这项工作:http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/VideoViewDemo.html - MByD
嗨,谢谢你的回复。问题是,这个项目太大了,它给出了数百个警告,我无法运行该项目。它还出现了一些错误。所以我想要一个最简单的程序来运行视频。 - Gpathy
好的,下面的答案似乎是你想要的。祝你好运! - MByD
1个回答

28

要制作一个视频播放器,您需要使用视频视图。以下是一个示例:

布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<VideoView android:id="@+id/videoView"
android:layout_height="fill_parent"
android:layout_width="fill_parent"/>
</LinearLayout>

我正在播放存储在“resource/raw”文件夹中的视频,“one”是视频文件的名称,您可以将其替换为您的视频文件的名称。还请确保您要播放的视频格式受到Android支持。

VideoplayerActivitvity

import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.Toast;
import android.widget.VideoView;

public class VideoplayerActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    VideoView videoView =(VideoView)findViewById(R.id.videoView);
    MediaController mediaController= new MediaController(this);
    mediaController.setAnchorView(videoView);        
    Uri uri=Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.one);        
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(uri);        
    videoView.requestFocus();

    videoView.start();


    }
    }   

我需要将一个文件添加到哪个位置?如何在布局文件中定义它? - sr01853
@sr01853,我现在不开发Android应用程序了。如果我没记错的话,视频是添加到项目中的“resource/raw”文件夹中的。不知道Eclipse是否仍在使用相同的旧项目结构。 - Sandeep

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接