diff options
author | Weilin Xu <xuweilin@google.com> | 2023-11-29 21:31:56 -0800 |
---|---|---|
committer | Weilin Xu <xuweilin@google.com> | 2023-11-30 10:45:50 -0800 |
commit | 9226b99eb4a7baa308f1ced042120afb82e68508 (patch) | |
tree | 5dd9159f0420645543f36c9a3b9bd3d0ed87eb60 | |
parent | 477ccf4a2e0566e5b254304a2f1550bfe1b15d12 (diff) | |
download | systemlibs-9226b99eb4a7baa308f1ced042120afb82e68508.tar.gz |
Fix HD display name in car radio lib
Fixed the issue that subchannel for HD stations is missing in display
name when there is AMFM frequency identifier in the secondary
identifiers of an HD identifier.
Bug: 300157955
Test: See HD station display names in radio KS app
Change-Id: I796c209ea3e4085e60d2ca2ba104b9cf88811894
-rw-r--r-- | car-broadcastradio-support/src/com/android/car/broadcastradio/support/platform/ProgramSelectorExt.java | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/car-broadcastradio-support/src/com/android/car/broadcastradio/support/platform/ProgramSelectorExt.java b/car-broadcastradio-support/src/com/android/car/broadcastradio/support/platform/ProgramSelectorExt.java index 8d597c8..555176d 100644 --- a/car-broadcastradio-support/src/com/android/car/broadcastradio/support/platform/ProgramSelectorExt.java +++ b/car-broadcastradio-support/src/com/android/car/broadcastradio/support/platform/ProgramSelectorExt.java @@ -319,13 +319,13 @@ public class ProgramSelectorExt { if (isAmFmProgram(sel)) { long freq; String hdSuffix = ""; - if (hasId(sel, ProgramSelector.IDENTIFIER_TYPE_AMFM_FREQUENCY)) { - freq = sel.getFirstId(ProgramSelector.IDENTIFIER_TYPE_AMFM_FREQUENCY); - } else if (sel.getPrimaryId().getType() + if (sel.getPrimaryId().getType() == ProgramSelector.IDENTIFIER_TYPE_HD_STATION_ID_EXT) { IdentifierExt.HdPrimary hdIdExt = IdentifierExt.asHdPrimary(sel.getPrimaryId()); freq = hdIdExt.getFrequency(); hdSuffix = "-HD" + (hdIdExt.getSubchannel() + 1); + } else if (hasId(sel, ProgramSelector.IDENTIFIER_TYPE_AMFM_FREQUENCY)) { + freq = sel.getFirstId(ProgramSelector.IDENTIFIER_TYPE_AMFM_FREQUENCY); } else { if (noProgramTypeFallback) return null; // if there is no frequency assigned, let's assume it's a malformed RDS selector |