Computer >> 컴퓨터 >  >> 프로그램 작성 >> Android

Kotlin을 사용하여 Android 애플리케이션에서 YouTube 동영상을 재생하는 방법은 무엇입니까?

<시간/>

이 예는 Kotlin을 사용하여 내 Android 애플리케이션에서 YouTube 동영상을 재생하는 방법을 보여줍니다.

1단계 − Android Studio에서 새 프로젝트를 생성하고 파일 ⇒ 새 프로젝트로 이동하여 필요한 모든 세부 정보를 입력하여 새 프로젝트를 생성합니다.

2단계 − res/layout/activity_main.xml에 다음 코드를 추가합니다.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
   xmlns:tools="https://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:padding="2dp"
   tools:context=".MainActivity">
   <androidx.recyclerview.widget.RecyclerView
      android:id="@+id/recyclerView"
      android:layout_width="match_parent"
      android:layout_height="match_parent" />
</RelativeLayout>

3단계 − src/MainActivity.kt에 다음 코드 추가

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import java.util.*
class MainActivity : AppCompatActivity() {
   private lateinit var recyclerView:RecyclerView
   private var youtubeVideos = Vector<youTubeVideos>()
   override fun onCreate(savedInstanceState: Bundle?) {
      super.onCreate(savedInstanceState)
      setContentView(R.layout.activity_main)
      title = "KotlinApp"
      recyclerView = findViewById(R.id.recyclerView)
      recyclerView.setHasFixedSize(true)
      recyclerView.layoutManager = LinearLayoutManager(this)
      youtubeVideos.add(youTubeVideos("<iframe width=\"100%\" height=\"100%\" src=\"https://www" +
      ".youtube.com/embed/X7SiuQxhAjg\" frameborder=\"0\" allowfullscreen></iframe>"))
      youtubeVideos.add(youTubeVideos("<iframe width=\"100%\" height=\"100%\" src=\"https://www" +
      ".youtube.com/embed/KyJ71G2UxTQ\" frameborder=\"0\" allowfullscreen></iframe>"))
      youtubeVideos.add(youTubeVideos("<iframe width=\"100%\" height=\"100%\" src=\"https://www" +
      ".youtube.com/embed/y8Rr39jKFKU\" frameborder=\"0\" allowfullscreen>lt;/iframe>"))
      youtubeVideos.add(youTubeVideos("<iframe width=\"100%\" height=\"100%\" src=\"https://www" +
     ".youtube.com/embed/8Hg1tqIwIfI\" frameborder=\"0\" allowfullscreen></iframe>"))
      youtubeVideos.add(youTubeVideos("<iframe width=\"100%\" height=\"100%\" src=\"https://www" +
      ".youtube.com/embed/uhQ7mh_o_cM\" frameborder=\"0\" allowfullscreen></iframe>"))
      val videoAdapter = VideoAdapter(youtubeVideos)
      recyclerView.adapter = videoAdapter
   }
}

4단계 − Java 클래스 VideoAdapter.java 및 다음 코드 생성

import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.webkit.WebChromeClient
import android.webkit.WebView
import androidx.recyclerview.widget.RecyclerView
class VideoAdapter internal constructor(private val youtubeVideoList: List<youTubeVideos>) :
RecyclerView.Adapter<VideoAdapter.VideoViewHolder>() {
   override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): VideoViewHolder {
      val view = LayoutInflater.from(parent.context).inflate(R.layout.video_view, parent, false)
      return VideoViewHolder(view)
   }
   override fun onBindViewHolder(holder: VideoViewHolder, position: Int) {
      holder.videoWeb.loadData(youtubeVideoList[position].videoUrl!!, "text/html", "utf-8")
   }
   inner class VideoViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
      var videoWeb: WebView = itemView.findViewById(R.id.webView)
      init {
         videoWeb.settings.javaScriptEnabled = true
         videoWeb.webChromeClient = object : WebChromeClient() {
         }
      }
   }
   override fun getItemCount(): Int {
      return youtubeVideoList.size
   }
}

5단계 − 자바 클래스 youTubeVideos.java 및 다음 코드 생성 −

class youTubeVideos(var videoUrl: String?) {
}

6단계 − 레이아웃 리소스 파일(Video_view.xml)을 생성하고 다음 코드를 추가합니다.

<?xml version="1.0" encoding="utf-8"?>
<WebView xmlns:android="https://schemas.android.com/apk/res/android"
   android:id="@+id/webView"
   android:layout_width="match_parent"
   android:layout_height="180dp">
</WebView>

7단계 − androidManifest.xml에 다음 코드 추가

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
   package="com.example.q11">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:roundIcon="@mipmap/ic_launcher_round"
      android:supportsRtl="true"
      android:theme="@style/AppTheme">
      <activity android:name=".MainActivity">
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
      </activity>
   </application>
</manifest>

응용 프로그램을 실행해 보겠습니다. 실제 Android 모바일 장치를 컴퓨터에 연결했다고 가정합니다. Android 스튜디오에서 앱을 실행하려면 프로젝트의 활동 파일 중 하나를 열고 실행을 클릭합니다. 툴바에서 Kotlin을 사용하여 Android 애플리케이션에서 YouTube 동영상을 재생하는 방법은 무엇입니까? 아이콘. 모바일 장치를 옵션으로 선택한 다음 기본 화면을 표시할 모바일 장치를 확인하십시오.

Kotlin을 사용하여 Android 애플리케이션에서 YouTube 동영상을 재생하는 방법은 무엇입니까?