Merge "Update FrontendStatusReadiness APIs."
This commit is contained in:
committed by
Android (Google) Code Review
commit
806d7fb113
@@ -6456,7 +6456,7 @@ package android.media.tv.tuner {
|
||||
method @Nullable public android.media.tv.tuner.DemuxCapabilities getDemuxCapabilities();
|
||||
method @Nullable public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo();
|
||||
method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]);
|
||||
method @Nullable public android.media.tv.tuner.frontend.FrontendStatusReadiness[] getFrontendStatusReadiness(@NonNull int[]);
|
||||
method @NonNull public java.util.List<android.media.tv.tuner.frontend.FrontendStatusReadiness> getFrontendStatusReadiness(@NonNull int[]);
|
||||
method @IntRange(from=0xffffffff) public int getMaxNumberOfFrontends(int);
|
||||
method @RequiresPermission("android.permission.TUNER_RESOURCE_ACCESS") public boolean hasUnusedFrontend(int);
|
||||
method public boolean isLowestPriority(int);
|
||||
@@ -7701,7 +7701,7 @@ package android.media.tv.tuner.frontend {
|
||||
method public boolean isLocked();
|
||||
}
|
||||
|
||||
public class FrontendStatusReadiness {
|
||||
public final class FrontendStatusReadiness {
|
||||
method public int getStatusReadiness();
|
||||
method public int getStatusType();
|
||||
field public static final int FRONTEND_STATUS_READINESS_STABLE = 3; // 0x3
|
||||
|
||||
@@ -68,6 +68,7 @@ import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
@@ -1602,25 +1603,27 @@ public class Tuner implements AutoCloseable {
|
||||
*
|
||||
* @param statusTypes an array of status types.
|
||||
*
|
||||
* @return an array of current readiness states. {@code null} if the operation failed or
|
||||
* unsupported versions.
|
||||
* @return a list of current readiness states. It is empty if the operation fails or unsupported
|
||||
* versions.
|
||||
* @throws IllegalStateException if there is no active frontend currently.
|
||||
*/
|
||||
@Nullable
|
||||
@SuppressLint("ArrayReturn")
|
||||
@SuppressWarnings("NullableCollection")
|
||||
public FrontendStatusReadiness[] getFrontendStatusReadiness(
|
||||
@NonNull
|
||||
public List<FrontendStatusReadiness> getFrontendStatusReadiness(
|
||||
@NonNull @FrontendStatusType int[] statusTypes) {
|
||||
mFrontendLock.lock();
|
||||
try {
|
||||
if (!TunerVersionChecker.checkHigherOrEqualVersionTo(
|
||||
TunerVersionChecker.TUNER_VERSION_2_0, "Remove output PID")) {
|
||||
return null;
|
||||
TunerVersionChecker.TUNER_VERSION_2_0, "Get fronted status readiness")) {
|
||||
return Collections.EMPTY_LIST;
|
||||
}
|
||||
if (mFrontend == null) {
|
||||
throw new IllegalStateException("frontend is not initialized");
|
||||
}
|
||||
return nativeGetFrontendStatusReadiness(statusTypes);
|
||||
FrontendStatusReadiness[] readiness = nativeGetFrontendStatusReadiness(statusTypes);
|
||||
if (readiness == null) {
|
||||
return Collections.EMPTY_LIST;
|
||||
}
|
||||
return Arrays.asList(readiness);
|
||||
} finally {
|
||||
mFrontendLock.unlock();
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ import java.lang.annotation.RetentionPolicy;
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
public class FrontendStatusReadiness {
|
||||
public final class FrontendStatusReadiness {
|
||||
/** @hide */
|
||||
@IntDef({FRONTEND_STATUS_READINESS_UNDEFINED, FRONTEND_STATUS_READINESS_UNAVAILABLE,
|
||||
FRONTEND_STATUS_READINESS_UNSTABLE, FRONTEND_STATUS_READINESS_STABLE,
|
||||
|
||||
Reference in New Issue
Block a user