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
xandy,x.equals(y)should returntrueif and only ify.equals(x)returnstrue. - It is transitive: for any non-null reference values
x,y, andz, ifx.equals(y)returnstrueandy.equals(z)returnstrue, thenx.equals(z)should returntrue. - It is consistent: for any non-null reference values
xandy, multiple invocations ofx.equals(y)consistently returntrueor consistently returnfalse, provided no information used inequalscomparisons 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. |