Просмотр видео в Android

Опубликовано: 10 Января, 2023

VideoView — это виджет пользовательского интерфейса, который используется для отображения видеоконтента пользователям в приложениях Android. Мы можем добавить видео в этот вид видео из разных ресурсов, таких как видео, хранящееся на пользовательском устройстве, или видео с сервера. В этой статье мы рассмотрим, как использовать просмотр видео в приложении для Android. Пример видео приведен ниже, чтобы получить представление о том, что мы собираемся делать в этой статье.

Note: This Android article covered in both Java and Kotlin languages. 

Пошаговая реализация

Шаг 1. Создайте новый проект в Android Studio.

Чтобы создать новый проект в Android Studio, обратитесь к разделу «Как создать/запустить новый проект в Android Studio ».

Шаг 2: Работа с файлом activity_main.xml

Перейдите к app > res > layout > activity_main.xml и добавьте приведенный ниже код. В код добавлены комментарии для более подробного ознакомления.

XML




<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/idRLContainer"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">
  
    <!--on below line we are creating a simple text view-->
    <TextView
        android:id="@+id/idTVHeading"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="20dp"
        android:gravity="center"
        android:padding="10dp"
        android:text="Video View in Android"
        android:textAlignment="center"
        android:textColor="@color/black"
        android:textSize="20sp"
        android:textStyle="bold" />
  
    <!-- adding VideoView to the layout -->
    <VideoView
        android:id="@+id/idVideoView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/idTVHeading"
        android:layout_centerInParent="true" />
      
</RelativeLayout>

Шаг 3: Работа с файлом MainActivity

Перейдите к приложению > java > имени пакета вашего приложения > файлу MainActivity и добавьте в него приведенный ниже код. В код добавлены комментарии для более подробного ознакомления.

Kotlin




package com.gtappdevelopers.kotlingfgproject
  
import android.net.Uri
import android.os.Bundle
import android.widget.MediaController
import android.widget.VideoView
import androidx.appcompat.app.AppCompatActivity
  
class MainActivity : AppCompatActivity() {
  
    // on below line we are creating a variable.
    lateinit var videoView: VideoView
    val videoUrl = "Paste Your Video URL Here"
      
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        // on below line we are initializing our variables.
        videoView = findViewById(R.id.idVideoView)
  
        // Uri object to refer the
        // resource from the videoUrl
        val uri = Uri.parse(videoUrl)
  
        // sets the resource from the
        // videoUrl to the videoView
        videoView.setVideoURI(uri)
  
        // creating object of
        // media controller class
        val mediaController = 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();
  
    }
}

Java




package com.gtappdevelopers.kotlingfgproject;
  
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 {
  
    // on below line we are creating variables.
    private VideoView videoView;
     
    // Your Video URL
    String videoUrl = "Paste Your Video URL Here";
  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
  
        // on below line we are initializing our variables.
        videoView = findViewById(R.id.idVideoView);
  
        // 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();
  
    }
}

Теперь запустите ваше приложение, чтобы увидеть результат.

Выход: