PlaybackSession
class PlaybackSession : AutoCloseable
kotlin.Any | |
↳ | android.media.metrics.PlaybackSession |
An instance of this class represents a session of media playback used to report playback metrics and events. Create a new instance using MediaMetricsManager#createPlaybackSession
.
Summary
Public methods | |
---|---|
Unit |
close() |
Boolean |
Indicates whether some other object is "equal to" this one. |
LogSessionId |
A session ID is used to identify a unique playback and to tie together lower-level playback components. |
Int |
hashCode() |
Unit |
reportNetworkEvent(event: NetworkEvent) Reports network event. |
Unit |
Reports error event. |
Unit |
reportPlaybackMetrics(metrics: PlaybackMetrics) Reports playback metrics. |
Unit |
Reports playback state event. |
Unit |
Reports track change event. |
Public methods
close
fun close(): Unit
Exceptions | |
---|---|
java.lang.Exception |
if this resource cannot be closed |
equals
fun equals(other: Any?): Boolean
Indicates whether some other object is "equal to" this one.
The equals
method implements an equivalence relation on non-null object references:
- It is reflexive: for any non-null reference value
x
,x.equals(x)
should returntrue
. - It is symmetric: for any non-null reference values
x
andy
,x.equals(y)
should returntrue
if and only ify.equals(x)
returnstrue
. - It is transitive: for any non-null reference values
x
,y
, andz
, ifx.equals(y)
returnstrue
andy.equals(z)
returnstrue
, thenx.equals(z)
should returntrue
. - It is consistent: for any non-null reference values
x
andy
, multiple invocations ofx.equals(y)
consistently returntrue
or consistently returnfalse
, provided no information used inequals
comparisons on the objects is modified. - For any non-null reference value
x
,x.equals(null)
should returnfalse
.
An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.
Parameters | |
---|---|
obj |
the reference object with which to compare. |
o |
This value may be null . |
Return | |
---|---|
Boolean |
true if this object is the same as the obj argument; false otherwise. |
getSessionId
fun getSessionId(): LogSessionId
A session ID is used to identify a unique playback and to tie together lower-level playback components. Associate this session with a MediaCodec by passing the ID into MediaFormat through MediaFormat#LOG_SESSION_ID when creating the MediaCodec. Associate this session with an AudioTrack by calling AudioTrack#setLogSessionId. Associate this session with MediaDrm and MediaCrypto by calling MediaDrm#getPlaybackComponent and then calling PlaybackComponent#setLogSessionId.
Return | |
---|---|
LogSessionId |
This value cannot be null . |
reportNetworkEvent
fun reportNetworkEvent(event: NetworkEvent): Unit
Reports network event.
Parameters | |
---|---|
event |
NetworkEvent: This value cannot be null . |
reportPlaybackErrorEvent
fun reportPlaybackErrorEvent(event: PlaybackErrorEvent): Unit
Reports error event.
Parameters | |
---|---|
event |
PlaybackErrorEvent: This value cannot be null . |
reportPlaybackMetrics
fun reportPlaybackMetrics(metrics: PlaybackMetrics): Unit
Reports playback metrics.
Parameters | |
---|---|
metrics |
PlaybackMetrics: This value cannot be null . |
reportPlaybackStateEvent
fun reportPlaybackStateEvent(event: PlaybackStateEvent): Unit
Reports playback state event.
Parameters | |
---|---|
event |
PlaybackStateEvent: This value cannot be null . |
reportTrackChangeEvent
fun reportTrackChangeEvent(event: TrackChangeEvent): Unit
Reports track change event.
Parameters | |
---|---|
event |
TrackChangeEvent: This value cannot be null . |