重複使用或移除MediaPlayer例項

您可以重設、重複使用或發行您不再需要的MediaPlayer例項。

重設或重複使用MediaPlayer例項

您可以重設MediaPlayer實例,使其返回到MediaPlayerStatus中定義的未初始化的IDLE狀態。 您也可以使用先前載入的媒體資源來取代目前的媒體項目或設定新的媒體項目。

此操作在以下情況下非常有用:

  • 您想要重複使用MediaPlayer例項,但需要載入新的MediaResource(視訊內容)並取代先前的例項。

    重設可讓您重複使用MediaPlayer例項,而不需釋放資源、重新建立MediaPlayer和重新分配資源。 replaceCurrentItem方法會自動為您執行這些步驟。

  • MediaPlayer處於ERROR狀態且需要清除時。

    重要

    這是從ERROR狀態恢復的唯一方法。

  1. 調用MediaPlayer.reset()MediaPlayer實例返回其未初始化狀態:

    reset(); // returns AdobePSDK.PSDKErrorCode.SUCCESS 
             // on successful reset
    
  2. 呼叫MediaPlayer.replaceCurrentItem()以載入另一個MediaResource

    秘訣

    要清除錯誤,請載入相同的MediaResource

  3. 調用prepareToPlay()方法。

    注意

    當您收到MediaPlaybackStatusChangeEvent.STATUS_CHANGED事件且狀態為PREPARED時,可以開始播放。

發行MediaPlayer實例和資源

當您不再需要MediaResource時,應釋放MediaPlayer實例和資源。

以下是發佈MediaPlayer的一些理由:

  • 保留不必要的資源可能會影響效能。

  • 留下不必要的MediaPlayer物件可持續耗用行動裝置的電池。

  • 如果裝置不支援同一視訊codec的多個執行個體,其他應用程式可能會發生播放失敗。

  • 釋放MediaPlayer

    void release()
    
    注意

    MediaPlayer實例發佈後,您無法再使用它。 如果在MediaPlayer介面發佈後調用了任何方法,則會拋出IllegalStateException

本頁內容