diff --git a/api/system-current.txt b/api/system-current.txt index ce71533963a84..1bca7c917d3ba 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -4517,9 +4517,13 @@ package android.media.tv.tuner { public final class Tuner implements java.lang.AutoCloseable { ctor public Tuner(@NonNull android.content.Context); + method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Tuner.Descrambler openDescrambler(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int tune(@NonNull android.media.tv.tuner.FrontendSettings); } + public class Tuner.Descrambler { + } + } package android.metrics { diff --git a/media/java/android/media/tv/tuner/Tuner.java b/media/java/android/media/tv/tuner/Tuner.java index a41974416d096..4947700f6952a 100644 --- a/media/java/android/media/tv/tuner/Tuner.java +++ b/media/java/android/media/tv/tuner/Tuner.java @@ -380,7 +380,14 @@ public final class Tuner implements AutoCloseable { } } - /** @hide */ + /** + * This class is used to interact with descramblers. + * + *

Descrambler is a hardware component used to descramble data. + * + *

This class controls the TIS interaction with Tuner HAL. + * + */ public class Descrambler { private long mNativeContext; @@ -389,19 +396,28 @@ public final class Tuner implements AutoCloseable { private Descrambler() {} - private boolean addPid(@DemuxPidType int pidType, int pid, Filter filter) { + /** @hide */ + public boolean addPid(@DemuxPidType int pidType, int pid, Filter filter) { return nativeAddPid(pidType, pid, filter); } - private boolean removePid(@DemuxPidType int pidType, int pid, Filter filter) { + /** @hide */ + public boolean removePid(@DemuxPidType int pidType, int pid, Filter filter) { return nativeRemovePid(pidType, pid, filter); } } - private Descrambler openDescrambler() { - Descrambler descrambler = nativeOpenDescrambler(); - return descrambler; + /** + * Opens a Descrambler in tuner. + * + * @return a {@link Descrambler} object. + */ + @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) + @Nullable + public Descrambler openDescrambler() { + checkPermission(); + return nativeOpenDescrambler(); } // TODO: consider splitting Dvr to Playback and Recording