diff options
| -rw-r--r-- | core/java/android/hardware/radio/RadioModule.java | 5 | ||||
| -rw-r--r-- | core/java/android/hardware/radio/RadioTuner.java | 17 |
2 files changed, 22 insertions, 0 deletions
diff --git a/core/java/android/hardware/radio/RadioModule.java b/core/java/android/hardware/radio/RadioModule.java index fc7d0d2afbd4..89648931fd53 100644 --- a/core/java/android/hardware/radio/RadioModule.java +++ b/core/java/android/hardware/radio/RadioModule.java @@ -16,6 +16,8 @@ package android.hardware.radio; +import android.annotation.NonNull; +import android.annotation.Nullable; import android.annotation.SystemApi; import android.content.Context; import android.content.Intent; @@ -23,6 +25,7 @@ import android.os.Handler; import android.os.Looper; import android.os.Message; import java.lang.ref.WeakReference; +import java.util.List; import java.util.UUID; /** @@ -76,6 +79,8 @@ public class RadioModule extends RadioTuner { public native int getProgramInformation(RadioManager.ProgramInfo[] info); + public native @NonNull List<RadioManager.ProgramInfo> getProgramList(@Nullable String filter); + public native boolean isAntennaConnected(); public native boolean hasControl(); diff --git a/core/java/android/hardware/radio/RadioTuner.java b/core/java/android/hardware/radio/RadioTuner.java index 5c82555663de..c8034eb94992 100644 --- a/core/java/android/hardware/radio/RadioTuner.java +++ b/core/java/android/hardware/radio/RadioTuner.java @@ -16,6 +16,8 @@ package android.hardware.radio; +import android.annotation.NonNull; +import android.annotation.Nullable; import android.annotation.SystemApi; import android.content.Context; import android.content.Intent; @@ -23,6 +25,7 @@ import android.os.Handler; import android.os.Looper; import android.os.Message; import java.lang.ref.WeakReference; +import java.util.List; import java.util.UUID; /** @@ -209,6 +212,20 @@ public abstract class RadioTuner { public abstract int getProgramInformation(RadioManager.ProgramInfo[] info); /** + * Get the list of discovered radio stations. + * + * To get the full list, set filter to null or empty string. Otherwise, client application + * must verify vendor product/name before setting this parameter to anything else. + * + * @param filter vendor-specific selector for radio stations. + * @return a list of radio stations. + * @throws IllegalStateException if the scan is in progress or has not been started. + * @throws IllegalArgumentException if the filter argument is not valid. + * @hide FutureFeature + */ + public abstract @NonNull List<RadioManager.ProgramInfo> getProgramList(@Nullable String filter); + + /** * Get current antenna connection state for current configuration. * Only valid if a configuration has been applied. * @return {@code true} if the antenna is connected, {@code false} otherwise. |