Add human-readable state int to PlaybackState

Bug: 205124386
Test: adb shell dumpsys media_session
Change-Id: Ie583876260cb0311162b219235a4eb2a672ffc5a
This commit is contained in:
Santiago Seifert
2022-09-23 11:11:34 +00:00
parent 4f31d4f95d
commit 9321a87577

View File

@@ -333,7 +333,11 @@ public final class PlaybackState implements Parcelable {
@Override
public String toString() {
StringBuilder bob = new StringBuilder("PlaybackState {");
bob.append("state=").append(mState);
bob.append("state=")
.append(getStringForStateInt(mState))
.append("(")
.append(mState)
.append(")");
bob.append(", position=").append(mPosition);
bob.append(", buffered position=").append(mBufferedPosition);
bob.append(", speed=").append(mSpeed);
@@ -533,6 +537,38 @@ public final class PlaybackState implements Parcelable {
}
};
/** Returns a human readable string representation of the given int {@code state} */
private static String getStringForStateInt(int state) {
switch (state) {
case STATE_NONE:
return "NONE";
case STATE_STOPPED:
return "STOPPED";
case STATE_PAUSED:
return "PAUSED";
case STATE_PLAYING:
return "PLAYING";
case STATE_FAST_FORWARDING:
return "FAST_FORWARDING";
case STATE_REWINDING:
return "REWINDING";
case STATE_BUFFERING:
return "BUFFERING";
case STATE_ERROR:
return "ERROR";
case STATE_CONNECTING:
return "CONNECTING";
case STATE_SKIPPING_TO_PREVIOUS:
return "SKIPPING_TO_PREVIOUS";
case STATE_SKIPPING_TO_NEXT:
return "SKIPPING_TO_NEXT";
case STATE_SKIPPING_TO_QUEUE_ITEM:
return "SKIPPING_TO_QUEUE_ITEM";
default:
return "UNKNOWN";
}
}
/**
* {@link PlaybackState.CustomAction CustomActions} can be used to extend the capabilities of
* the standard transport controls by exposing app specific actions to