在 Android 應用中使用 VideoView 播放視頻的示例
這段代碼片段是在 Android 應用中使用 VideoView 播放視頻的示例。下面是對代碼的詳細解析:
代碼解析
findViewById<VideoView>(R.id.vv).apply {
setVideoURI("${baseURL}VideoSrc/${o.getString("Src")}".toUri())
start()
}
-
查找 ?
VideoView? 控件:findViewById<VideoView>(R.id.vv)- 使用
findViewById方法查找布局中 ID 為vv的VideoView控件。R.id.vv是在 XML 布局文件中定義的VideoView的 ID。
- 使用
-
使用 ?
apply? 擴展函數:.apply { ... }apply是 Kotlin 的一個擴展函數,它允許我們在一個對象上執行一系列操作,并返回該對象本身。在這里,它用于對找到的VideoView進行配置。
-
設置視頻 URI:
setVideoURI("${baseURL}VideoSrc/${o.getString("Src")}".toUri())setVideoURI方法用于設置要播放的視頻的 URI。baseURL是一個字符串,表示視頻的基本 URL。o.getString("Src")從某個 JSON 對象o中獲取視頻源的字符串(假設o是一個JSONObject)。- 使用字符串模板
${...}將baseURL和視頻源拼接成完整的 URL。 toUri()是一個擴展函數,用于將字符串轉換為Uri對象,確保setVideoURI方法接受正確的參數類型。
-
開始播放視頻:
start()start()方法用于開始播放設置好的視頻。
總結
這段代碼的功能是:
- 查找布局中的
VideoView控件。 - 設置視頻的 URI,構建完整的 URL,并從 JSON 對象中提取視頻源。
- 開始播放視頻。
注意事項
- 確保在調用
start()方法之前,視頻 URI 已經正確設置,并且視頻文件可訪問。 - 在實際應用中,可能需要處理視頻加載失敗的情況,例如使用
setOnErrorListener來捕獲播放錯誤。 - 在 AndroidManifest.xml 中,需要添加相應的權限(如網絡訪問權限)以確保可以訪問網絡視頻。
- 確保在合適的生命周期方法中管理
VideoView,例如在onPause()中暫停視頻播放,避免資源浪費。

浙公網安備 33010602011771號