如何从 Android 中的 URL 播放视频?
在本文中,您将了解如何在 Android 上播放来自 URL 的视频。为了在我们的 android 应用程序中显示视频,我们将使用 VideoView 小部件。 VideoView 小部件能够播放媒体文件,VideoView 支持的格式为 3gp 和 MP4。通过使用 VideoView,您可以播放本地存储和 Internet 中的媒体文件。下面给出了一个示例 GIF,以了解我们将在本文中做什么。请注意,我们将使用Java语言来实现这个项目。
现在让我们看看 gif 中显示的上述应用程序的逐步实现。
分步实施
第 1 步:创建一个新项目
因此,第一步是创建一个新项目,在 Android Studio 的欢迎屏幕上,单击Create New Project ,如果您已经打开了一个项目,请转到File > New > New Project 。然后选择一个 Project Template 窗口,选择Empty Activity并单击Next 。在名称字段中输入您的应用程序名称,然后从语言下拉菜单中选择Java 。
第 2 步:添加 Internet 权限
导航到app > manifest > AndroidManifest.xml和该文件的 Internet 权限,如下所示。
第 3 步:使用 activity_main.xml
导航到app > res > layout > activity_main.xml并将以下代码添加到该文件中。下面是activity_main.xml文件的代码。
XML
Java
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
// Your Video URL
String videoUrl = "https://media.geeksforgeeks.org/wp-content/uploads/20201217192146/Screenrecorder-2020-12-17-19-17-36-828.mp4?_=1";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// finding videoview by its id
VideoView videoView = findViewById(R.id.videoView);
// Uri object to refer the
// resource from the videoUrl
Uri uri = Uri.parse(videoUrl);
// sets the resource from the
// videoUrl to the videoView
videoView.setVideoURI(uri);
// creating object of
// media controller class
MediaController mediaController = new MediaController(this);
// sets the anchor view
// anchor view for the videoView
mediaController.setAnchorView(videoView);
// sets the media player to the videoView
mediaController.setMediaPlayer(videoView);
// sets the media controller to the videoView
videoView.setMediaController(mediaController);
// starts the video
videoView.start();
}
}
第 4 步:使用 MainActivity。Java
转到主活动。 Java文件,参考如下代码。下面是MainActivity的代码。 Java文件。代码中添加了注释以更详细地理解代码。
Java
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
// Your Video URL
String videoUrl = "https://media.geeksforgeeks.org/wp-content/uploads/20201217192146/Screenrecorder-2020-12-17-19-17-36-828.mp4?_=1";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// finding videoview by its id
VideoView videoView = findViewById(R.id.videoView);
// Uri object to refer the
// resource from the videoUrl
Uri uri = Uri.parse(videoUrl);
// sets the resource from the
// videoUrl to the videoView
videoView.setVideoURI(uri);
// creating object of
// media controller class
MediaController mediaController = new MediaController(this);
// sets the anchor view
// anchor view for the videoView
mediaController.setAnchorView(videoView);
// sets the media player to the videoView
mediaController.setMediaPlayer(videoView);
// sets the media controller to the videoView
videoView.setMediaController(mediaController);
// starts the video
videoView.start();
}
}
输出: