📜  如何从 Android 中的 URL 播放视频?(1)

📅  最后修改于: 2023-12-03 14:51:44.867000             🧑  作者: Mango

如何从 Android 中的 URL 播放视频?

在 Android 应用程序中,可以使用 Android 的播放器组件来从 URL 播放视频。以下是一些在 Android 中实现该功能的常见步骤:

步骤 1:在 AndroidManifest.xml 中添加权限

首先,在 AndroidManifest.xml 文件中添加必要的权限,以便应用程序可以从 Internet 加载视频。

<uses-permission android:name="android.permission.INTERNET" />
步骤 2:添加 VideoView 组件到布局文件

在你的布局文件中添加 VideoView 组件,用于展示视频内容。

<VideoView
    android:id="@+id/videoView"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />
步骤 3:在 Activity 中设置 VideoView

在你的 Activity 类中,通过获取布局文件中的 VideoView 对象,然后设置要播放的视频 URL。

import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;

public class MainActivity extends AppCompatActivity {
    private VideoView videoView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        videoView = findViewById(R.id.videoView);

        // 设置媒体控制器
        MediaController mediaController = new MediaController(this);
        mediaController.setAnchorView(videoView);
        videoView.setMediaController(mediaController);

        // 设置要播放的视频 URL
        Uri videoUri = Uri.parse("https://example.com/video.mp4");
        videoView.setVideoURI(videoUri);

        // 开始播放视频
        videoView.start();
    }
}
步骤 4:处理播放器事件

在你的 Activity 类中,你可能还想处理一些播放器事件,例如视频播放完成或出现错误时的处理。

videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
    @Override
    public void onCompletion(MediaPlayer mediaPlayer) {
        // 视频播放完成时的处理
        // TODO: Add your code here
    }
});

videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
    @Override
    public boolean onError(MediaPlayer mediaPlayer, int what, int extra) {
        // 播放器错误处理
        // TODO: Add your code here
        return false; // 返回 false 会调用 OnCompletionListener
    }
});

以上是从 Android 中的 URL 播放视频的基本步骤。你可以根据需要进行更多的自定义,例如处理播放进度、暂停和恢复等操作。