# 所有程序包的分层结构

程序包分层结构:

- com.aliyun.downloader,
- com.aliyun.player,
- com.aliyun.player.bean,
- com.aliyun.player.nativeclass,
- com.aliyun.player.source,
- com.aliyun.player.videoview,
- com.aliyun.private_service,
- com.aliyun.thumbnail,
- com.cicada.player.utils

## 类分层结构

- java.lang.Object
  - com.aliyun.downloader.AliDownloaderFactory
  - com.aliyun.downloader.AliMediaDownloader
  - com.aliyun.player.AliPlayerFactory
  - com.aliyun.player.AliPlayerFactory.DeviceInfo
  - com.aliyun.player.AliPlayerGlobalSettings
  - com.aliyun.player.nativeclass.CacheConfig
  - com.aliyun.downloader.DownloaderConfig
  - com.aliyun.player.bean.ErrorInfo
  - com.aliyun.player.bean.InfoBean
  - com.aliyun.player.IPlayer.Option
  - com.aliyun.player.IPlayer.RenderFrameCallbackConfig
  - com.aliyun.player.source.LiveShift
  - com.cicada.player.utils.Logger
  - com.aliyun.player.nativeclass.MediaInfo
  - com.aliyun.player.nativeclass.PlayerConfig
  - com.aliyun.private_service.PrivateService
  - com.aliyun.player.source.SourceBase
    - com.aliyun.player.source.UrlSource
    - com.aliyun.player.source.VidSourceBase
      - com.aliyun.player.source.VidAuth
      - com.aliyun.player.source.VidMps
      - com.aliyun.player.source.VidSts
  - com.aliyun.player.source.StsInfo
  - com.aliyun.player.nativeclass.Thumbnail
  - com.aliyun.thumbnail.ThumbnailBitmapInfo
  - com.aliyun.thumbnail.ThumbnailHelper
  - com.aliyun.player.nativeclass.TrackInfo
  - com.aliyun.player.VidPlayerConfigGen
  - android.view.View (implements android.view.accessibility.AccessibilityEventSource, android.graphics.drawable.Drawable.Callback, android.view.KeyEvent.Callback)
    - android.view.ViewGroup (implements android.view.ViewManager, android.view.ViewParent)
      - android.widget.FrameLayout
        - com.aliyun.player.videoview.AliDisplayView

## 接口分层结构

- com.aliyun.player.videoview.AliDisplayView.OnViewStatusListener
- com.aliyun.player.AliLiveShiftPlayer.OnSeekLiveCompletionListener
- com.aliyun.player.AliLiveShiftPlayer.OnTimeShiftUpdaterListener
- com.aliyun.downloader.AliMediaDownloader.ConvertURLCallback
- com.aliyun.downloader.AliMediaDownloader.OnCompletionListener
- com.aliyun.downloader.AliMediaDownloader.OnErrorListener
- com.aliyun.downloader.AliMediaDownloader.OnPreparedListener
- com.aliyun.downloader.AliMediaDownloader.OnProgressListener
- com.aliyun.player.AliPlayer
  - com.aliyun.player.AliListPlayer
- com.aliyun.player.AliPlayer.OnVerifyTimeExpireCallback
- com.aliyun.player.AliPlayerGlobalSettings.OnGetUrlHashCallback
- com.aliyun.player.AliPlayerGlobalSettings.OnNetworkCallback
- com.aliyun.player.IPlayer
  - com.aliyun.player.AliLiveShiftPlayer
- com.aliyun.player.IPlayer.ConvertURLCallback
- com.aliyun.player.IPlayer.OnChooseTrackIndexListener
- com.aliyun.player.IPlayer.OnCompletionListener
- com.aliyun.player.IPlayer.OnErrorListener
- com.aliyun.player.IPlayer.OnInfoListener
- com.aliyun.player.IPlayer.OnLoadingStatusListener
- com.aliyun.player.IPlayer.OnPreparedListener
- com.aliyun.player.IPlayer.OnPreRenderFrameCallback
- com.aliyun.player.IPlayer.OnRenderFrameCallback
- com.aliyun.player.IPlayer.OnRenderingStartListener
- com.aliyun.player.IPlayer.OnReportEventListener
- com.aliyun.player.IPlayer.OnSeekCompleteListener
- com.aliyun.player.IPlayer.OnSeiDataListener
- com.aliyun.player.IPlayer.OnSnapShotListener
- com.aliyun.player.IPlayer.OnStateChangedListener
- com.aliyun.player.IPlayer.OnSubtitleDisplayListener
- com.aliyun.player.IPlayer.OnThumbnailListener
- com.aliyun.player.IPlayer.OnTrackChangedListener
- com.aliyun.player.IPlayer.OnTrackReadyListener
- com.aliyun.player.IPlayer.OnVideoRenderedListener
- com.aliyun.player.IPlayer.OnVideoSizeChangedListener
- com.cicada.player.utils.Logger.OnLogCallback
- com.aliyun.thumbnail.ThumbnailHelper.OnPrepareListener
- com.aliyun.thumbnail.ThumbnailHelper.OnThumbnailGetListener

## 枚举分层结构

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - com.aliyun.player.IPlayer.OutputAudioChannel
    - com.aliyun.player.IPlayer.MirrorMode
    - com.aliyun.player.IPlayer.RotateMode
    - com.aliyun.player.IPlayer.ScaleMode
    - com.aliyun.player.IPlayer.SeekMode
    - com.aliyun.player.IPlayer.PropertyKey
    - com.aliyun.player.IPlayer.IPResolveType
    - com.aliyun.player.AliPlayer.Status
    - com.aliyun.player.videoview.AliDisplayView.DisplayViewType
    - com.aliyun.player.VidPlayerConfigGen.EncryptType
    - com.aliyun.player.AliPlayerFactory.BlackType
    - com.aliyun.player.AliPlayerFactory.SupportFeatureType
    - com.aliyun.player.AliPlayerGlobalSettings.StreamType
    - com.cicada.player.utils.Logger.LogLevel
    - com.aliyun.player.bean.InfoCode
    - com.aliyun.player.bean.ErrorCode
    - com.aliyun.player.source.MediaFormat
    - com.aliyun.player.source.VidSourceBase.ResultType
    - com.aliyun.player.source.VidSourceBase.StreamType
    - com.aliyun.player.source.VidSourceBase.OutputType
    - com.aliyun.player.nativeclass.TrackInfo.VideoHDRType
    - com.aliyun.player.nativeclass.TrackInfo.Type