Loading api/system-current.txt +10 −8 Original line number Diff line number Diff line Loading @@ -4826,7 +4826,7 @@ package android.media.tv.tuner { method public int getAudioFilterCount(); method public int getDemuxCount(); method public int getFilterCapabilities(); method @Nullable @Size(5) public int[] getLinkCapabilities(); method @NonNull @Size(5) public int[] getLinkCapabilities(); method public int getPcrFilterCount(); method public int getPesFilterCount(); method public int getPlaybackCount(); Loading @@ -4842,7 +4842,7 @@ package android.media.tv.tuner { method public int addPid(int, int, @Nullable android.media.tv.tuner.filter.Filter); method public void close(); method public int removePid(int, int, @Nullable android.media.tv.tuner.filter.Filter); method public int setKeyToken(@Nullable byte[]); method public int setKeyToken(@NonNull byte[]); field public static final int PID_TYPE_MMTP = 2; // 0x2 field public static final int PID_TYPE_T = 1; // 0x1 } Loading Loading @@ -4879,10 +4879,11 @@ package android.media.tv.tuner { } public class Tuner implements java.lang.AutoCloseable { ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @NonNull String, int, @Nullable android.media.tv.tuner.Tuner.OnResourceLostListener); ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @Nullable String, int); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int cancelScanning(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int cancelTuning(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void clearOnTuneEventListener(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void clearResourceLostListener(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void close(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int connectCiCam(int); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int disconnectCiCam(); Loading @@ -4892,15 +4893,16 @@ package android.media.tv.tuner { method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo(); method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_DESCRAMBLER) public android.media.tv.tuner.Descrambler openDescrambler(); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.dvr.OnRecordStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnRecordStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.filter.Filter openFilter(int, int, long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.filter.FilterCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnb(@Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.LnbCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnbByName(@Nullable String, @Nullable java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnb(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnbByName(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); method @Nullable public android.media.tv.tuner.filter.TimeFilter openTimeFilter(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int scan(@NonNull android.media.tv.tuner.frontend.FrontendSettings, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.ScanCallback); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int setLna(boolean); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int setLnaEnabled(boolean); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void setOnTuneEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.OnTuneEventListener); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void setResourceLostListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.Tuner.OnResourceLostListener); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void shareFrontendFromTuner(@NonNull android.media.tv.tuner.Tuner); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int tune(@NonNull android.media.tv.tuner.frontend.FrontendSettings); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void updateResourcePriority(int, int); Loading media/java/android/media/tv/tuner/DemuxCapabilities.java +2 −2 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ package android.media.tv.tuner; import android.annotation.BytesLong; import android.annotation.IntDef; import android.annotation.Nullable; import android.annotation.NonNull; import android.annotation.Size; import android.annotation.SystemApi; import android.media.tv.tuner.filter.Filter; Loading Loading @@ -159,7 +159,7 @@ public class DemuxCapabilities { * {@link FilterConfiguration}. * <p>The ith element represents the filter's capability as the source for the ith type. */ @Nullable @NonNull @Size(5) public int[] getLinkCapabilities() { return mLinkCaps; Loading media/java/android/media/tv/tuner/Descrambler.java +8 −1 Original line number Diff line number Diff line Loading @@ -17,12 +17,15 @@ package android.media.tv.tuner; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.SystemApi; import android.media.tv.tuner.TunerConstants.Result; import android.media.tv.tuner.filter.Filter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.Objects; /** * This class is used to interact with descramblers. Loading Loading @@ -75,6 +78,7 @@ public class Descrambler implements AutoCloseable { * @param filter an optional filter instance to identify upper stream. * @return result status of the operation. */ @Result public int addPid(@PidType int pidType, int pid, @Nullable Filter filter) { return nativeAddPid(pidType, pid, filter); } Loading @@ -89,6 +93,7 @@ public class Descrambler implements AutoCloseable { * @param filter an optional filter instance to identify upper stream. * @return result status of the operation. */ @Result public int removePid(@PidType int pidType, int pid, @Nullable Filter filter) { return nativeRemovePid(pidType, pid, filter); } Loading @@ -102,7 +107,9 @@ public class Descrambler implements AutoCloseable { * @param keyToken the token to be used to link the key slot. * @return result status of the operation. */ public int setKeyToken(@Nullable byte[] keyToken) { @Result public int setKeyToken(@NonNull byte[] keyToken) { Objects.requireNonNull(keyToken, "key token must not be null"); return nativeSetKeyToken(keyToken); } Loading media/java/android/media/tv/tuner/Tuner.java +54 −13 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ import android.media.tv.tuner.frontend.Atsc3PlpInfo; import android.media.tv.tuner.frontend.FrontendInfo; import android.media.tv.tuner.frontend.FrontendSettings; import android.media.tv.tuner.frontend.FrontendStatus; import android.media.tv.tuner.frontend.FrontendStatus.FrontendStatusType; import android.media.tv.tuner.frontend.OnTuneEventListener; import android.media.tv.tuner.frontend.ScanCallback; import android.os.Handler; Loading @@ -45,6 +46,7 @@ import android.os.Looper; import android.os.Message; import java.util.List; import java.util.Objects; import java.util.concurrent.Executor; /** Loading Loading @@ -88,6 +90,10 @@ public class Tuner implements AutoCloseable { private ScanCallback mScanCallback; @Nullable private Executor mScanCallbackExecutor; @Nullable private OnResourceLostListener mOnResourceLostListener; @Nullable private Executor mOnResourceLostListenerExecutor; /** * Constructs a Tuner instance. Loading @@ -97,13 +103,36 @@ public class Tuner implements AutoCloseable { * @param useCase the use case of this Tuner instance. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull Context context, @NonNull String tvInputSessionId, @TvInputService.PriorityHintUseCaseType int useCase, @Nullable OnResourceLostListener listener) { public Tuner(@NonNull Context context, @Nullable String tvInputSessionId, @TvInputService.PriorityHintUseCaseType int useCase) { nativeSetup(); mContext = context; } /** * Sets the listener for resource lost. * * @param executor the executor on which the listener should be invoked. * @param listener the listener that will be run. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void setResourceLostListener(@NonNull @CallbackExecutor Executor executor, @NonNull OnResourceLostListener listener) { Objects.requireNonNull(executor, "OnResourceLostListener must not be null"); Objects.requireNonNull(listener, "executor must not be null"); mOnResourceLostListener = listener; mOnResourceLostListenerExecutor = executor; } /** * Removes the listener for resource lost. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void clearResourceLostListener() { mOnResourceLostListener = null; mOnResourceLostListenerExecutor = null; } /** * Shares the frontend resource with another Tuner instance * Loading Loading @@ -387,7 +416,7 @@ public class Tuner implements AutoCloseable { */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Result public int setLna(boolean enable) { public int setLnaEnabled(boolean enable) { TunerUtils.checkTunerPermission(mContext); return nativeSetLna(enable); } Loading @@ -398,10 +427,10 @@ public class Tuner implements AutoCloseable { * <p>This retrieve the statuses of the frontend for given status types. * * @param statusTypes an array of status types which the caller requests. * @return statuses which response the caller's requests. * @return statuses which response the caller's requests. {@code null} if the operation failed. */ @Nullable public FrontendStatus getFrontendStatus(@NonNull int[] statusTypes) { public FrontendStatus getFrontendStatus(@NonNull @FrontendStatusType int[] statusTypes) { return nativeGetFrontendStatus(statusTypes); } Loading Loading @@ -482,6 +511,10 @@ public class Tuner implements AutoCloseable { /** * Gets Demux capabilities. * * @param context the context of the caller. * @return A {@link DemuxCapabilities} instance that represents the demux capabilities. * {@code null} if the operation failed. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Nullable Loading Loading @@ -637,13 +670,15 @@ public class Tuner implements AutoCloseable { */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Nullable public Lnb openLnb(@CallbackExecutor @Nullable Executor executor, @Nullable LnbCallback cb) { public Lnb openLnb(@CallbackExecutor @NonNull Executor executor, @NonNull LnbCallback cb) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(cb, "LnbCallback must not be null"); TunerUtils.checkTunerPermission(mContext); return openLnbByName(null, executor, cb); } /** * Opens an LNB (low-noise block downconverter) object. * Opens an LNB (low-noise block downconverter) object specified by the give name. * * @param name the LNB name. * @param executor the executor on which callback will be invoked. The default event handler Loading @@ -653,8 +688,10 @@ public class Tuner implements AutoCloseable { */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Nullable public Lnb openLnbByName(@Nullable String name, @CallbackExecutor @Nullable Executor executor, public Lnb openLnbByName(@NonNull String name, @CallbackExecutor @NonNull Executor executor, @NonNull LnbCallback cb) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(cb, "LnbCallback must not be null"); TunerUtils.checkTunerPermission(mContext); // TODO: use resource manager to get LNB ID. return new Lnb(0); Loading Loading @@ -718,8 +755,10 @@ public class Tuner implements AutoCloseable { @Nullable public DvrRecorder openDvrRecorder( @BytesLong long bufferSize, @CallbackExecutor @Nullable Executor executor, @Nullable OnRecordStatusChangedListener l) { @CallbackExecutor @NonNull Executor executor, @NonNull OnRecordStatusChangedListener l) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(l, "OnRecordStatusChangedListener must not be null"); TunerUtils.checkTunerPermission(mContext); DvrRecorder dvr = nativeOpenDvrRecorder(bufferSize); return dvr; Loading @@ -739,8 +778,10 @@ public class Tuner implements AutoCloseable { @Nullable public DvrPlayback openDvrPlayback( @BytesLong long bufferSize, @CallbackExecutor @Nullable Executor executor, @Nullable OnPlaybackStatusChangedListener l) { @CallbackExecutor @NonNull Executor executor, @NonNull OnPlaybackStatusChangedListener l) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(l, "OnPlaybackStatusChangedListener must not be null"); TunerUtils.checkTunerPermission(mContext); DvrPlayback dvr = nativeOpenDvrPlayback(bufferSize); return dvr; Loading media/java/android/media/tv/tuner/frontend/ScanCallback.java +1 −1 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ public interface ScanCallback { void onInputStreamIds(@NonNull int[] inputStreamIds); /** Locked signal standard for DVBS. */ void onDvbsStandard(@DvbsFrontendSettings.Standard int dvbsStandandard); void onDvbsStandard(@DvbsFrontendSettings.Standard int dvbsStandard); /** Locked signal standard. for DVBT */ void onDvbtStandard(@DvbtFrontendSettings.Standard int dvbtStandard); Loading Loading
api/system-current.txt +10 −8 Original line number Diff line number Diff line Loading @@ -4826,7 +4826,7 @@ package android.media.tv.tuner { method public int getAudioFilterCount(); method public int getDemuxCount(); method public int getFilterCapabilities(); method @Nullable @Size(5) public int[] getLinkCapabilities(); method @NonNull @Size(5) public int[] getLinkCapabilities(); method public int getPcrFilterCount(); method public int getPesFilterCount(); method public int getPlaybackCount(); Loading @@ -4842,7 +4842,7 @@ package android.media.tv.tuner { method public int addPid(int, int, @Nullable android.media.tv.tuner.filter.Filter); method public void close(); method public int removePid(int, int, @Nullable android.media.tv.tuner.filter.Filter); method public int setKeyToken(@Nullable byte[]); method public int setKeyToken(@NonNull byte[]); field public static final int PID_TYPE_MMTP = 2; // 0x2 field public static final int PID_TYPE_T = 1; // 0x1 } Loading Loading @@ -4879,10 +4879,11 @@ package android.media.tv.tuner { } public class Tuner implements java.lang.AutoCloseable { ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @NonNull String, int, @Nullable android.media.tv.tuner.Tuner.OnResourceLostListener); ctor @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull android.content.Context, @Nullable String, int); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int cancelScanning(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int cancelTuning(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void clearOnTuneEventListener(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void clearResourceLostListener(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void close(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int connectCiCam(int); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int disconnectCiCam(); Loading @@ -4892,15 +4893,16 @@ package android.media.tv.tuner { method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.frontend.FrontendInfo getFrontendInfo(); method @Nullable public android.media.tv.tuner.frontend.FrontendStatus getFrontendStatus(@NonNull int[]); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_DESCRAMBLER) public android.media.tv.tuner.Descrambler openDescrambler(); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.dvr.OnRecordStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrPlayback openDvrPlayback(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnPlaybackStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.dvr.DvrRecorder openDvrRecorder(long, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.dvr.OnRecordStatusChangedListener); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.filter.Filter openFilter(int, int, long, @Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.filter.FilterCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnb(@Nullable java.util.concurrent.Executor, @Nullable android.media.tv.tuner.LnbCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnbByName(@Nullable String, @Nullable java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnb(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public android.media.tv.tuner.Lnb openLnbByName(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.LnbCallback); method @Nullable public android.media.tv.tuner.filter.TimeFilter openTimeFilter(); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int scan(@NonNull android.media.tv.tuner.frontend.FrontendSettings, int, @NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.ScanCallback); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int setLna(boolean); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int setLnaEnabled(boolean); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void setOnTuneEventListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.frontend.OnTuneEventListener); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void setResourceLostListener(@NonNull java.util.concurrent.Executor, @NonNull android.media.tv.tuner.Tuner.OnResourceLostListener); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void shareFrontendFromTuner(@NonNull android.media.tv.tuner.Tuner); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public int tune(@NonNull android.media.tv.tuner.frontend.FrontendSettings); method @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void updateResourcePriority(int, int); Loading
media/java/android/media/tv/tuner/DemuxCapabilities.java +2 −2 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ package android.media.tv.tuner; import android.annotation.BytesLong; import android.annotation.IntDef; import android.annotation.Nullable; import android.annotation.NonNull; import android.annotation.Size; import android.annotation.SystemApi; import android.media.tv.tuner.filter.Filter; Loading Loading @@ -159,7 +159,7 @@ public class DemuxCapabilities { * {@link FilterConfiguration}. * <p>The ith element represents the filter's capability as the source for the ith type. */ @Nullable @NonNull @Size(5) public int[] getLinkCapabilities() { return mLinkCaps; Loading
media/java/android/media/tv/tuner/Descrambler.java +8 −1 Original line number Diff line number Diff line Loading @@ -17,12 +17,15 @@ package android.media.tv.tuner; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.SystemApi; import android.media.tv.tuner.TunerConstants.Result; import android.media.tv.tuner.filter.Filter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.Objects; /** * This class is used to interact with descramblers. Loading Loading @@ -75,6 +78,7 @@ public class Descrambler implements AutoCloseable { * @param filter an optional filter instance to identify upper stream. * @return result status of the operation. */ @Result public int addPid(@PidType int pidType, int pid, @Nullable Filter filter) { return nativeAddPid(pidType, pid, filter); } Loading @@ -89,6 +93,7 @@ public class Descrambler implements AutoCloseable { * @param filter an optional filter instance to identify upper stream. * @return result status of the operation. */ @Result public int removePid(@PidType int pidType, int pid, @Nullable Filter filter) { return nativeRemovePid(pidType, pid, filter); } Loading @@ -102,7 +107,9 @@ public class Descrambler implements AutoCloseable { * @param keyToken the token to be used to link the key slot. * @return result status of the operation. */ public int setKeyToken(@Nullable byte[] keyToken) { @Result public int setKeyToken(@NonNull byte[] keyToken) { Objects.requireNonNull(keyToken, "key token must not be null"); return nativeSetKeyToken(keyToken); } Loading
media/java/android/media/tv/tuner/Tuner.java +54 −13 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ import android.media.tv.tuner.frontend.Atsc3PlpInfo; import android.media.tv.tuner.frontend.FrontendInfo; import android.media.tv.tuner.frontend.FrontendSettings; import android.media.tv.tuner.frontend.FrontendStatus; import android.media.tv.tuner.frontend.FrontendStatus.FrontendStatusType; import android.media.tv.tuner.frontend.OnTuneEventListener; import android.media.tv.tuner.frontend.ScanCallback; import android.os.Handler; Loading @@ -45,6 +46,7 @@ import android.os.Looper; import android.os.Message; import java.util.List; import java.util.Objects; import java.util.concurrent.Executor; /** Loading Loading @@ -88,6 +90,10 @@ public class Tuner implements AutoCloseable { private ScanCallback mScanCallback; @Nullable private Executor mScanCallbackExecutor; @Nullable private OnResourceLostListener mOnResourceLostListener; @Nullable private Executor mOnResourceLostListenerExecutor; /** * Constructs a Tuner instance. Loading @@ -97,13 +103,36 @@ public class Tuner implements AutoCloseable { * @param useCase the use case of this Tuner instance. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public Tuner(@NonNull Context context, @NonNull String tvInputSessionId, @TvInputService.PriorityHintUseCaseType int useCase, @Nullable OnResourceLostListener listener) { public Tuner(@NonNull Context context, @Nullable String tvInputSessionId, @TvInputService.PriorityHintUseCaseType int useCase) { nativeSetup(); mContext = context; } /** * Sets the listener for resource lost. * * @param executor the executor on which the listener should be invoked. * @param listener the listener that will be run. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void setResourceLostListener(@NonNull @CallbackExecutor Executor executor, @NonNull OnResourceLostListener listener) { Objects.requireNonNull(executor, "OnResourceLostListener must not be null"); Objects.requireNonNull(listener, "executor must not be null"); mOnResourceLostListener = listener; mOnResourceLostListenerExecutor = executor; } /** * Removes the listener for resource lost. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) public void clearResourceLostListener() { mOnResourceLostListener = null; mOnResourceLostListenerExecutor = null; } /** * Shares the frontend resource with another Tuner instance * Loading Loading @@ -387,7 +416,7 @@ public class Tuner implements AutoCloseable { */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Result public int setLna(boolean enable) { public int setLnaEnabled(boolean enable) { TunerUtils.checkTunerPermission(mContext); return nativeSetLna(enable); } Loading @@ -398,10 +427,10 @@ public class Tuner implements AutoCloseable { * <p>This retrieve the statuses of the frontend for given status types. * * @param statusTypes an array of status types which the caller requests. * @return statuses which response the caller's requests. * @return statuses which response the caller's requests. {@code null} if the operation failed. */ @Nullable public FrontendStatus getFrontendStatus(@NonNull int[] statusTypes) { public FrontendStatus getFrontendStatus(@NonNull @FrontendStatusType int[] statusTypes) { return nativeGetFrontendStatus(statusTypes); } Loading Loading @@ -482,6 +511,10 @@ public class Tuner implements AutoCloseable { /** * Gets Demux capabilities. * * @param context the context of the caller. * @return A {@link DemuxCapabilities} instance that represents the demux capabilities. * {@code null} if the operation failed. */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Nullable Loading Loading @@ -637,13 +670,15 @@ public class Tuner implements AutoCloseable { */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Nullable public Lnb openLnb(@CallbackExecutor @Nullable Executor executor, @Nullable LnbCallback cb) { public Lnb openLnb(@CallbackExecutor @NonNull Executor executor, @NonNull LnbCallback cb) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(cb, "LnbCallback must not be null"); TunerUtils.checkTunerPermission(mContext); return openLnbByName(null, executor, cb); } /** * Opens an LNB (low-noise block downconverter) object. * Opens an LNB (low-noise block downconverter) object specified by the give name. * * @param name the LNB name. * @param executor the executor on which callback will be invoked. The default event handler Loading @@ -653,8 +688,10 @@ public class Tuner implements AutoCloseable { */ @RequiresPermission(android.Manifest.permission.ACCESS_TV_TUNER) @Nullable public Lnb openLnbByName(@Nullable String name, @CallbackExecutor @Nullable Executor executor, public Lnb openLnbByName(@NonNull String name, @CallbackExecutor @NonNull Executor executor, @NonNull LnbCallback cb) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(cb, "LnbCallback must not be null"); TunerUtils.checkTunerPermission(mContext); // TODO: use resource manager to get LNB ID. return new Lnb(0); Loading Loading @@ -718,8 +755,10 @@ public class Tuner implements AutoCloseable { @Nullable public DvrRecorder openDvrRecorder( @BytesLong long bufferSize, @CallbackExecutor @Nullable Executor executor, @Nullable OnRecordStatusChangedListener l) { @CallbackExecutor @NonNull Executor executor, @NonNull OnRecordStatusChangedListener l) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(l, "OnRecordStatusChangedListener must not be null"); TunerUtils.checkTunerPermission(mContext); DvrRecorder dvr = nativeOpenDvrRecorder(bufferSize); return dvr; Loading @@ -739,8 +778,10 @@ public class Tuner implements AutoCloseable { @Nullable public DvrPlayback openDvrPlayback( @BytesLong long bufferSize, @CallbackExecutor @Nullable Executor executor, @Nullable OnPlaybackStatusChangedListener l) { @CallbackExecutor @NonNull Executor executor, @NonNull OnPlaybackStatusChangedListener l) { Objects.requireNonNull(executor, "executor must not be null"); Objects.requireNonNull(l, "OnPlaybackStatusChangedListener must not be null"); TunerUtils.checkTunerPermission(mContext); DvrPlayback dvr = nativeOpenDvrPlayback(bufferSize); return dvr; Loading
media/java/android/media/tv/tuner/frontend/ScanCallback.java +1 −1 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ public interface ScanCallback { void onInputStreamIds(@NonNull int[] inputStreamIds); /** Locked signal standard for DVBS. */ void onDvbsStandard(@DvbsFrontendSettings.Standard int dvbsStandandard); void onDvbsStandard(@DvbsFrontendSettings.Standard int dvbsStandard); /** Locked signal standard. for DVBT */ void onDvbtStandard(@DvbtFrontendSettings.Standard int dvbtStandard); Loading