Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 679b24c6 authored by Hongguang's avatar Hongguang
Browse files

Update FrontendStatusReadiness APIs.

Bug: 216640182
Fix: 216640182
Test: atest android.media.tv.tuner.cts
Change-Id: I54abc1014bab2a2cb6128e33a381aabbe571dc58
parent 33b42f50
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -6459,7 +6459,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);
@@ -7704,7 +7704,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
+12 −9
Original line number Diff line number Diff line
@@ -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();
        }
+1 −1
Original line number Diff line number Diff line
@@ -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,