Older Releases

Release 1.0.4970-2513 - 13 Feb 2023, 13:06

Release notes

  • Platform Upgrade:
    • Android Gradle Plugin updated from 7.3.1 to 7.4.1.
  • Platform upgrade:
    • Updated Kotlin version from 1.7.21 to 1.8.10
Release 1.0.4957-2505 - 09 Feb 2023, 14:52

Release notes

  • Fix notification panel re-attachment after an Android configuration change. This fixes a crash when the RecyclerView item view is reused for another notification later.
  • Communications: Non-alphabetic contact names are now shown as part of the last section of the contacts list.
  • applicationContext field is added to FrontendContext.
  • Renaming testing API PlaylistPanelInteractions to CollectionPanelInteractions:
    • thatIsPlaylistContainer to thatIsCollectionContainer
    • thatIsPlaylistPanelTogglePlayButton to thatIsCollectionPanelTogglePlayButton
    • tapPlaylistPanelTogglePlay to tapCollectionPanelTogglePlay
    • waitForDisplayedPlaylistPanel to waitForDisplayedCollectionPanel
    • waitForPlaylistPanelPlaybackControl to waitForCollectionPanelPlaybackControl
  • Fixed the problem when rotating the screen leads to contacts not being shown.
  • Add support for play/pause collection button configuration. It is now possible to show an icon or a text using useTextForCollectionPlayPauseButtonConfigKey.
  • Contacts which only have the company name provided are not part of the non-alphabetic section in the contact list, but are now shown in the correct section.
  • Communications: Add new Favorites tab, showing only the favorites. Favorites show as regular contacts in the Contacts tab.
Release 1.0.4890-2462 - 31 Jan 2023, 06:48

Release notes

  • Update to Android Compile SDK 33 (Android 13)
Release 1.0.4866-2431 - 27 Jan 2023, 06:38

Release notes

  • Media API changes:
    • IsPlaylistItemPolicy is replaced by CollectionPolicy.
    • PolicyProvider.isPlaylistPolicy is replaced by collectionPolicy, new DefaultCollectionPolicy is used as a default value.
Release 1.0.4854-2421 - 26 Jan 2023, 12:02

Release notes

  • Exclude the debug and test build-time configuration groups in the release build by default.
    • The Gradle plugins API IviDefaultsGroupsSelectionConfigurator.includeDefaultGroups is marked as deprecated.
    • Usages can be replaced with two approaches. Use:
    • IviDefaultsGroupsSelectionConfigurator.includeDefaultPlatformGroups and IviDefaultsGroupsSelectionConfigurator.includeDefaultAppsuiteGroups.
    • Or use IviDefaultsGroupsSelectionConfigurator.includeDefaultPlatformGroups and explicitly opt-in to all desired app suite groups with IviDefaultsGroupsSelectionConfigurator.include.
    • Please note that the debug configuration group is not included by default in release builds.
    • More information can be found in this tutorial.
  • The list ttButtonViewModels has been replaced by two dedicated viewModels, ttPrimaryButtonViewModel and ttSecondaryButtonViewModel. Where ttPrimaryButtonViewModel replaces the first index of the old list.
  • Platform update:
    • Upgraded Kotlin Version from 1.7.10 to 1.7.21
  • API changes:
    • CallDetails::subtitle renamed to CallDetails::state;
    • CallDetails::description added.
  • Improved the stability of the Alexa Privacy Mode feature.
    • Enabling/disabling Alexa Privacy Mode works faster.
    • Functionalities that include Alexa voice (e.g. audio instructions during navigation, reading of messages) now work while in Privacy Mode.
  • The media source that was active last in the previous session (e.g. before a reboot) will be active again in the current session.
Release 1.0.4806-2388 - 19 Jan 2023, 14:23

Release notes

  • Add support for the media browser actions:
    • Added BrowserAction and BrowserActionResult.
    • Added coLaunchBrowserAction to SourceClient, RootSourceClient, ItemSourceClient, and SearchSourceClient.
  • Fix crash when system UI is restored with a panel stack of more than two panels and the panels were added at once.
  • Fixed a crash if the system UI is restored while a destroyed panel was animating out.
  • Improved the error message when restoring a view hierarchy and a panel container is missing in the system UI layout.
  • Communications Frontend: Show unhold call button in process panel when there is only a single call which is on hold.
  • Communications frontend: Improve scrolling performance on large number of contacts.
  • Platform update:
    • Upgraded Gradle version from 7.5.1 to 7.6.
  • Fix Media controls are tinted with incorrect colors.
Release 1.0.4773-2372 - 13 Jan 2023, 13:15

Release notes

  • Fix artwork blinks when metadata is updated.
  • A panel may now be attached multiple times at the same time. This allows for system UI transitions where a panel is moved from one panel container to another. This allows the removal of ignoreUntilDetached in custom SystemUiViewModel classes.
  • StockRecentCallsService: Improve loading time on large number of recent calls.
  • AddResetFrontendOnMenuItemClickFrontendCoordinationRule: a FrontendCoordinationRule to reset a frontend's state when the active frontend is selected again from the menu. This rule needs to be added to the list of FrontendCoordinationRules: it is a parameter of the FrontendCoordinator, set when creating the System UI ViewModel.
  • Added support for communications frontend customization.
    • The communications frontend can now be configured by providing a CommunicationsPolicyFrontendExtension that defines the behavior for a specific phone account ID by assigning to it a CallDetailsPolicy. Such policies offer a way to customize the user interface, like adjusting the call icon, call title, etc.
    • See CommunicationsFrontendConfiguration API reference for more information.
Release 1.0.4735-2353 - 07 Jan 2023, 05:54

Release notes

  • Communications frontend: Add the swap calls button to process panel.
Release 1.0.4729-2347 - 06 Jan 2023, 08:05

Release notes

  • Telecom: Added phoneAccountId property to the Call class. The phoneAccountId property identifies the phone account from which the call originates, and can be used by service clients to differentiate between standard phone calls and other (e.g. VoIP) call types.
Release 1.0.4711-2334 - 04 Jan 2023, 14:07

Release notes

  • Fix for a race condition which can cause a "Unable to start activity" crash after a configuration change due to a corrupt fragment manager state.
  • Add collation support for contacts search ( Élisé can be found by Elise).
  • ContactDataSourceQuery: add groupBy parameter to group the results.
    • ContactDataSourceQuery: remove selection parameter, this was always All.
  • The back button is not shown for the media source root panel if the dashboard shortcut button is present. See the recently added hasDashboardButtonConfigKey.
  • ContactsDataSourceQuery: add support to combine multiple filters.
  • Fix for showing a native android dialog when the phone number used for dialing is empty.
  • Implementation of Alexa Preview Mode feature.
    • This mode gives users access to a restricted set of Alexa features without requiring a login with an Amazon account.
    • To be able to use this, AlexaPreviewModeService must be implemented by the OEM. This service is responsible for handling communication with AVS (Alexa Voice Service) to enable or disable Alexa Preview Mode using the InstantDeviceRegistration API.
    • This mode can be enabled by passing the ANONYMOUS authentication type to the VpaMediatorService.logIn function.
Release 1.0.4680-2328 - 27 Dec 2022, 14:43

Release notes

  • ContactsDataSourceQuery: Remove the map lambda. This is replaced by map in mapPagingData
  • Changes following Android Gradle Plugin update to 7.3.1:
    • Logic change to support setting package name from build.gradle namespace attribute.
    • See here for Android documentation
Release 1.0.4668-2320 - 23 Dec 2022, 06:03

Release notes

  • Added standalone testing application to generate recent calls.
  • When browsing to a media source that has paused content, that source will now be made active, and thus usable in the media process panel. This does not happen if another source is playing.
Release 1.0.4665-2317 - 22 Dec 2022, 06:01

Release notes

  • ContactsDataSourceQuery: Selection of contacts are separated from filtering.
Release 1.0.4651-2302 - 17 Dec 2022, 05:55

Release notes

  • Communications API changes:
    • Split PlatformContactsHelper into PlatformHelperContacts and PlatformHelperRecentCalls.
    • Add PlatformHelperRecentCalls to platform_recentcalls_api_common_debug.
  • Fixed ContactsSettingsService crash during the service startup.
Release 1.0.4648-2299 - 16 Dec 2022, 05:56

Release notes

  • Fixed a crash which happened during a connection/disconnection when having more then one phone paired.
  • Removed automatically starting to play playlists, albums, podcasts while browsing in the Media UI when not already playing any music.
  • Fix to show toast message for media playback state errors.
    • IviPlaybackState enum type is changed to a sealed class.
Release 1.0.4616-2281 - 13 Dec 2022, 05:50

Release notes

  • Media API changes:
    • Added backToDashboard to MediaFrontendContext.Panel.
    • Removed clearStack parameter from MediaFrontendContext.Panel.openMediaTaskPanel.
    • A new button was added to media panels allowing a quick return to the media dashboard panel. Use the new hasDashboardButtonConfigKey to disable it if needed.
Release 1.0.4603-2274 - 10 Dec 2022, 05:58

Release notes

  • Prevent crash when a recent call with a future time is present in the recent calls.
  • TelecomService API: Changed setMute() to mute() and unmute()
    • TelecomService API: Changed setCallOnHold() to hold() and unhold()
    • Call: Replaced canChangeHoldState by Call.capabilities
  • Add new APIs to BluetoothConnectivityService:
    • turnBluetoothOn: Turns on the Bluetooth adapter.
    • turnBluetoothOff: Turns off the Bluetooth adapter.
    • bluetoothState: Indicates the current state of Bluetooth allowing the client to determine whether the Bluetooth is on.
Release 1.0.4568-2253 - 07 Dec 2022, 05:58

Release notes

  • Localization API:
    • Implemented an API for changing between 12-hour and 24-hour clock time format in Android
Release 1.0.4558-2244 - 02 Dec 2022, 06:07

Release notes

  • Communications: Fix duplicate favorite contacts
Release 1.0.4531-2229 - 30 Nov 2022, 13:47

Release notes

  • The dial pad button animation background color now matches the surface subdued color.
  • Communications API change: Removed queryAllContacts(order: ContactItemOrder) from ContactUtil.
Release 1.0.4520-2219 - 29 Nov 2022, 05:59

Release notes

  • Fixed an issue where previous discovered Bluetooth devices where not shown after re-opening the discovery modal panel.
  • Pressing the dial pad button on the process panel will select the dial pad when communications panel is opened.
Release 1.0.4509-2211 - 26 Nov 2022, 05:56

Release notes

  • Various improvements of Developer Portal content.
  • Fix visual glitch that the tab bar indicator is still moving after opening the communications frontend
  • Communications frontend transition animation is from main menu when opening from main process panel.
Release 1.0.4508-2210 - 25 Nov 2022, 13:03

Release notes

  • Reverted the build logic in repositories.gradle.kts to fix a build error in the dependency resolution.
Release 1.0.4499-2200 - 24 Nov 2022, 10:29

Release notes

  • Localization API:
    • Implemented an API for changing System Language Setting in Android.
  • MediaContentView and MediaGroupItem are not part of public API anymore.
Release 1.0.4491-2189 - 22 Nov 2022, 05:55

Release notes

  • Replying using a conversation quick reply now marks the conversation as read.
  • Move module platform.messaging.api.service.messagingapp to appsuite
Release 1.0.4485-2184 - 21 Nov 2022, 12:43

Release notes

  • Newer version of the Android Gradle Plugin 7.3.1 is integrated. See release notes: https://developer.android.com/studio/releases/gradle-plugin#7-3-0
    • Change in published version catalog: plugin implementation reference gradlePluginNavuiEmulators is replaced with gradlePluginNavappEmulators.
    • Plugin com.tomtom.navui.emulators-plugin is superseded with com.tomtom.navapp.emulators-plugin.
    • Android Gradle Plugin 7.3.1 require Android Studio Dolphin | 2021.3.1 or newer.
  • Dial pad height restricted to provide better user experience on vertical screens.
  • Dial pad initial number entry does not cause layout change.
Release 1.0.4472-2174 - 18 Nov 2022, 05:55

Release notes

  • Communication with Alexa is disabled when a user is not logged in.
    • The corresponding frontend should accompany this rule by disabling the push-to-talk/tap-to-talk button, as well as the possibility for users to change the wake-up word setting if a user is not logged in.
Release 1.0.4460-2169 - 16 Nov 2022, 15:06

Release notes

  • When VehicleElectricEngineService::batteryChargeLevel.max is null, it will no longer automatically be converted to 0. Instead, for electric vehicle functionality, only a non-null value will be considered.
  • Add standalone testing tool to generate contacts
  • Apply the assigned font family to the text on TtSwitch UI control
  • Remove ContactId from Contact
    • Remove FindContactByContactId from ContactsDataSourceQuery
Release 1.0.4451-2166 - 15 Nov 2022, 16:12

Release notes

  • Changes to Bluetooth Connectivity:
    • Improved the BluetoothConnectivityService.deviceInformation updates when forgetting a Bluetooth device.
    • API change: Renamed BluetoothConnectivityService.forgetPairedDevice to BluetoothConnectivityService.removeBond.
Release 1.0.4443-2159 - 15 Nov 2022, 05:52

Release notes

  • Settings Panel launch crash fix
  • Set Contact.image to null for contacts with no image
  • When allowing/disallowing a Bluetooth profile, the Bluetooth profile must connect/disconnect.
  • Integrated Alexa Auto SDK 4.1.1 Hotfix #1.
  • Naming convention change:
    • Changed all instances of Copilot to Front Passenger in codebase going forward.
Release 1.0.4428-2155 - 10 Nov 2022, 09:54

Release notes

  • Fixed BluetoothConnectivityStatus.lastBondStateChangeReason being set to null right after a bond state change occurred. This resulted into the problem that the pairing retry panel was not always shown.
  • Fix iHeartRadio low resolution thumbnails.
Release 1.0.4404-2137 - 05 Nov 2022, 05:45

Release notes

  • Logging of SettingsManagementService is disabled.
Release 1.0.4395-2126 - 04 Nov 2022, 05:47

Release notes

Release 1.0.4384-2117 - 02 Nov 2022, 05:48

Release notes

  • Added the IEC_62196_TYPE_1_OUTLET and IEC_62196_TYPE_3_CONNECTOR_CABLE_ATTACHED plug types in VehicleEvChargingConnector.ChargingStationConnectorType.
  • Alexa Media: use 30s icon for skip backward/forward controls.
Release 1.0.4373-2104 - 01 Nov 2022, 13:46

Release notes

  • Fix a crashing bug in release 1.0.4333-2078, where a exception is thrown with the message: "Current charge has not been set".
  • Use high resolution photos of contacts in communications app.
  • Retrieve the contact's photo when opening non-favorite contact details
  • Fix media login flow for Android 8.1.
Release 1.0.4333-2078 - 21 Oct 2022, 17:18

Release notes

  • Improves the Navkit2 configuration providers, so that integration with TomTom online services is made easier.
  • Fix progress bar tint color in the media ExpandedProcessPanel.
Release 1.0.4306-2049 - 19 Oct 2022, 09:56

Release notes

  • Breaking code change:
    • Rename UX strings libraries names to com.tomtom.uxstrings:ivi-xxx.
    • Rename UX strings library reference in exported version catalog to tomtomUxStringsIviXxx.
  • Add new flag: SourceAttributionFormat.preferPresentation: Boolean. The stock Media app dashboard will use it to retrieve a logo for the source selection panel: support for this flag should be added at least in fun MediaSourceAttributionPolicy.getLogo().
    • Add new resources:
    • @drawable/ttivi_media_amazonmusic_logo_presentation
    • @drawable/ttivi_media_bluetooth_logo_presentation
    • @drawable/ttivi_media_iheartradio_logo_presentation
    • @drawable/ttivi_media_spotify_logo_presentation
    • @drawable/ttivi_media_tunein_logo_presentation
    • These can all be overridden to change the appearance of the icons representing these media sources when the logo is prominently presented along with others of the same type: that is the source selection screen in the stock Media application.
Release 1.0.4286-2022 - 13 Oct 2022, 16:16

Release notes

  • Fix a crash in the Alexa TTS service.
  • Allow for VpaMediatorSettingsSevice.updateDefaultVpa() to accept null as parameter, to indicate that no VPA is the default VPA.
Release 1.0.4269-1995 - 12 Oct 2022, 18:53

Release notes

  • Fix for pairing pin codes which are less then 6 characters where not padded with leading zero.
  • Fix alignment of header items in recent calls tab.
  • In ContactServiceApi replace the contact property by an IviDataSource to support larger contact list.
Release 1.0.4247-1978 - 04 Oct 2022, 17:20

Release notes

  • Contacts are sorted alphabetically within a section.
  • Add activeQueueItemIndex field to MediaService, tracking the current index in a music queue.
  • Add support for map zoom in/out with Alexa.
    • It's now possible to say: "Alexa, zoom in / out the map"
  • Fixed received SMS is not shown again after reconnecting the specific Bluetooth phone.
  • Contact details shows all phone numbers and all addresses associated to a contact. It is possible to scroll to see all loaded data.
  • Added empty state to dial pad when no phone is connected.
  • Ensure that contacts and messages are only uploaded to Alexa if they are originating from a phone that was allowed for upload by the user.
Release 1.0.4221-1956 - 30 Sep 2022, 09:05

Release notes

  • New map Settings Panel introduced
Release 1.0.4213-1952 - 28 Sep 2022, 18:13

Release notes

  • Fixes paired phones briefly shown in discovery panel after being forgotten.
  • Fix the incorrect scrollbar handle dimension when switching between views.
  • Added clarification in documentation on how to call service methods from frontends in order to handle service unavailability.
Release 1.0.4192-1921 - 21 Sep 2022, 21:37

Release notes

  • The TomTom Digital Cockpit SDK is now published on GitHub (follow the link above).
    • The publication to Nexus is deprecated, but will remain for a few months.
Release 1.0.4173-1902 - 16 Sep 2022, 13:25

Release notes

  • Add static configuration key ignoredMediaBrowserPackageListConfigKey, of type string list.
    • This lets customers hide unwanted media applications from the media app. To add a new exclusion, create an XML resource with:
    • <string-array name="ignoredMediaBrowserPackageListConfigKey">
    • <item>first.android.package.name.to.ignore</item>
    • <item>another.android.package.name.to.ignore</item>
    • </string-array>
  • Added SourceDefinitionPolicy, a new media policy to define generic traits of a media source. The first of such traits is allowing to define whether a media source requires an internet connection or not.
    • This allows, for example, to improve error reporting to the user when something goes wrong.
  • Add to media policy SourceDefinitionPolicy a string resolver to allow customizing the safety lock message when attempting to login to a media source while driving.
Release 1.0.4146-1883 - 13 Sep 2022, 12:49

Release notes

  • Mini-map implementation.
Release 1.0.4144-1882 - 12 Sep 2022, 18:58

Release notes

  • Fix media playlist crash for Android 8.1.
  • Fix for showing an empty state view merged with contacts entries.
Release 1.0.4117-1864 - 08 Sep 2022, 11:10

Release notes

  • Fix issue where it was not possible to reply to an SMS message on some hardware platforms.
  • Fix issue where SMS message notifications were not being displayed on some hardware platforms.
  • Adds new ttHeaderListItemViewLayout view property to TtListRecyclerView which allows a custom list header layout to be specified.
Release 1.0.4116-1863 - 07 Sep 2022, 10:38

Release notes

  • VpaMediatorService has been extended with a new field, alerts, that contains all known VPA alerts, and with two functions:
    • removeAllAlerts() which clears all active and pending alerts.
    • stopActiveAlerts() which stops all the active alerts.
  • Fix for not showing information on progress panel about a phone call which is on hold.
  • These changes introduce a renaming for the ProcessPanel and the ProcessPanel template classes:
    • Panel renaming:
    • ProcessPanelto MainProcessPanel
    • Template classes renaming:
    • ProcessViewModelBase to CompactProcessViewModel
    • ProcessViewModel to MainCompactProcessViewModel
    • ProcessFragment to MainCompactProcessFragment
    • ProcessFragmentBase to CompactProcessFragment
    • TaskProcessFragment to TaskCompactProcessFragment
    • TaskProcessViewModel to TaskCompactProcessViewModel
    • ProcessBindingAdapters to CompactProcessBindingAdapters
    • ProcessControlList to CompactProcessControlList
    • ProcessControlViewModel to CompactProcessControlViewModel
    • ProcessMetadataViewModel to CompactProcessMetadataViewModel
  • Integration of the Alexa Auto SDK version 4.1.1.
    • Starting from version 4.1.0, Alexa LVC (Local Voice Control) APK is deprecated in favor of a new library that can be directly used in the app.
Release 1.0.4103-1849 - 31 Aug 2022, 07:38

Release notes

  • Fix for showing the correct initial Bluetooth panel after forgetting all paired devices.
Release 1.0.4100-1847 - 30 Aug 2022, 09:08

Release notes

  • Fix for Android 12 Bluetooth devices getting stuck while pairing.
  • Extended messaging service API to include the source (e.g. the phone from where the messages were downloaded) of a conversation:
    • Added ConversationSource abstract class;
    • Added BluetoothDeviceConversationSource class;
    • Conversation is extended with a property of type ConversationSource;
    • ConversationCache::withUpdatedConversation() updates Conversation::source as well;
    • MessagingService::getOrCreateConversationId() includes the source parameter;
    • MessagingProviderHelper::findConversation() includes the source parameter;
    • MessagingProviderHelper::findOrCreateConversation() includes the source parameter;
Release 1.0.4085-1834 - 25 Aug 2022, 11:29

Release notes

  • Reattempt to pair a Bluetooth device after canceling the previous Bluetooth pairing request is fixed
Release 1.0.4081-1830 - 24 Aug 2022, 12:24

Release notes

  • Fixed for unpaired devices which where still being shown in the paired device list of the Bluetooth modal panel after the device was unpaired by using the forget functionality.
  • Fixed dismissing SMS notification after 10 seconds timeout when paired phone gets his Bluetooth connection disconnected and then reconnected.
  • Removed the function useDefaults for iviInstance and service within the ivi block in the build.gradle.kts. The more robust alternative applyGroups in combination with includeDefaultGroups should be used instead. In addition, within the applyGroups opt-in plugin groups can be added with include and default plugin groups can be removed with exclude.
  • Media API changes:
    • Add isExplicit field to IviMediaItem and corresponding withIsExplicit method to IviMediaItemBuilder.
    • Remove EXTRA_CONTENT_IS_EXPLICIT from MediaBundleExtras.
Release 1.0.4033-1779 - 11 Aug 2022, 13:44

Release notes

  • Removed MediaPlaybackViewModel.artUri in favor of MediaPlaybackViewModel.art.
  • Changes:
    • UserFlowActionPolicy and MediaTaskPanelPolicy have been merged into UserFlowPolicy.
    • IsSearchItemPolicy removed.
  • Flickering of the recent calls list is fixed. When a new recents are added the list entries are inserted instead of adding and redrawing all items.
Release 1.0.4013-1755 - 04 Aug 2022, 12:31

Release notes

  • Moves the navigation panel to a GuidancePanel in a separate frontend. This provides more modular control over the navigation experience and lets the system UI manage the container of the navigation panel.
  • Upgraded Kotlin to version "1.6.21". Kotlin Symbol Processing and kotlinx.serialization were also upgraded to the compatible versions with Kotlin "1.6.21".
  • Added API LiveData<ProcessPanel?>.takeIfPriorityIsAtLeast(minimumPriority: ProcessPanel.Priority) to module platform_systemui_api_common_frontendcoordinator, allowing a custom system UI implementation to not display any ProcessPanels under a minimum set priority level.
Release 1.0.3999-1740 - 01 Aug 2022, 14:33

Release notes

  • Add getStyle in MediaSourceAttributionPolicy giving the possibility to override source accent color.
    • Adding accent color theme attribute for each MediaPolicyFrontendExtension to override the source accent color if needed:
    • ttivi_media_amazonmusic_accent_color
    • ttivi_media_spotify_accent_color
    • ttivi_media_iheartradio_accent_color
    • ttivi_media_tunein_accent_color
    • Note that the source accent color is only visible in the play button of the Spotify playlist view in the stock media frontend implementation.
  • Fixes Android 8 PAN and PBAN related crashes.
  • Contacts API: Add the source property to the Contact class. This property identifies the device or service from which the contact originates. For example, if the contact originates from a paired phone, source will identify the phone from which the contact was synchronized.
Release 1.0.3982-1720 - 27 Jul 2022, 08:52

Release notes

  • Add IviActivityTestCase.extendUiDeviceForEmbeddedActivities() to help access embedded 3rd-party activities in integration tests.
  • Added support for the Alexa TrafficDetailsTemplate, which is a display card with helpful travel information such as distance and time to some POI (Point Of Interest). The display card can be triggered by asking Alexa something like: "Alexa, how long will it take me to get to Paris?".
  • Added the ability to specify the priority in which a frontend is created, by splitting FrontendCreationPolicy.CREATE_AT_STARTUP into CREATE_AT_STARTUP and CREATE_AFTER_STARTUP.
  • Add Frontend.isReady, a way for a frontend to define whether it is ready to be presented to the user. It's one of the building blocks of the upcoming splash screen.
  • Added support for ProcessPanel to change their ProcessPanel.Priority at runtime when the priority of a process changes.
    • The ProcessPanel.priority field was changed to a LiveData of a UniquePriority (a Comparable type).
    • This type contains a ProcessPanel.Priority and an unique progressive ID to determine priority unambiguously, even with panels with the same priority.
    • Process panels can now call ProcessPanel.setPriority() to change their process priority.
  • Update of the ProcessMetadataViewModel class:
    • Rename primaryTextArea and secondaryTextArea properties to primaryText, secondaryText and convert them to a LiveData<StringResolver?>.
    • Add a logo property (LiveData<DrawableResolver?>).
  • Add Media API UserFlowActionPolicy for a media source's PolicyProvider a to customize what happens when the user selects a source which needs to be logged in to, and what happens when the a source's settings must be shown.
  • Added a new type of panel ExpandedProcessPanel.
Release 1.0.3934-1671 - 15 Jul 2022, 15:55

Release notes

  • Fix for not being able to connect and disconnect Bluetooth devices when running on an Android 8.1 platform.
Release 1.0.3930-1663 - 15 Jul 2022, 08:41

Release notes

  • A new query called FindContactsByDisplayNames is added to find contacts based on display names.
Release 1.0.3897-1637 - 11 Jul 2022, 14:45

Release notes

  • Added support for sending NavApp navigation favorites to Alexa. This allows the user to say: "Alexa, navigate to Work / Home / Favorite name".
    • Favorites are only sent to Alexa if the user has provided his consent ("Sync Vehicle Navigation Favorites" toggle in Alexa debug tab).
    • Known issues: this currently only works when offline due to issues with the Alexa SDK.
Release 1.0.3894-1635 - 11 Jul 2022, 11:00

Release notes

  • Fix for crash in libmapdisplay-clientlib during rotation.
  • Fixed a crash which happens when (dis)connecting the HID Bluetooth device profile.
  • Reworked the media domain testing API. All ViewInteractions, ViewMatchers and waiters are now grouped inside multiple kotlin objects, to group them by the type of panel in the stock media frontend they belong with.
    • The objects are:
    • BrowsingInteractions
    • DashboardInteractions
    • ExpandedProcessPanelInteractions
    • MediaFrontendInteractions
    • PlaylistPanelInteractions
    • ProcessPanelInteractions
    • SearchPanelInteractions
    • TaskProcessPanelInteractions
    • Multiple API calls were removed due to being not relevant for customer testing, and some new useful ones were added.
Release 1.0.3880-1630 - 06 Jul 2022, 13:24

Release notes

  • Extended Alexa example app to show addition and usage of Car Control custom assets.
  • Add a new contacts query that allows frontend to find a contact based on a ContactId.
  • Media API changes:
    • Removed MediaItemDataExtractionPolicy and MediaItemData.
    • Added MediaItemMappingPolicy.
    • In PolicyProvider: MediaItemDataExtractionPolicy is renamed to MediaItemMappingPolicy, PolicyProvider::extractItemDataPolicy is renamed to PolicyProvider::itemMappingPolicy.
    • MediaEntryGroupItem uses IviMediaItem instead of MediaItemData, and MediaEntryGroupItem::itemData is renamed to MediaEntryGroupItem::item.
    • Secondary constructor added to IviMediaItemBuilder to copy and modify an existing IviMediaItem.
  • Added to media domain testing API the MediaControl testing helper classes: SingleActionMediaControlVerifier, MultipleActionMediaControlVerifier, ToggleActionMediaControlVerifier.
    • Add to media domain testing API the frontend panel testing helper classes FakeMediaControlContext, createMediaConfiguration,  and FakeSourceInfo.
Release 1.0.3863-1614 - 01 Jul 2022, 05:37

Release notes

  • Adds functionality to install/uninstall Android apps from the App Store debug menu.
Release 1.0.3860-1612 - 30 Jun 2022, 08:24

Release notes

  • Changes:
    • Removed MediaSettingsService from public API.
    • Improved Media API documentation.
Release 1.0.3855-1607 - 29 Jun 2022, 05:35

Release notes

  • Alexa Notification Indicator showed as a badge on top of the Alexa Hands-free indicator when there are available Alexa notifications.
    • VpaMediatorService API extended with hasPendingNotifications property.
Release 1.0.3849-1603 - 28 Jun 2022, 05:36

Release notes

  • Incoming calls are using new Contacts DataSource API: resolving a phone number is based on a query applied to the contacts data source.
Release 1.0.3845-1596 - 24 Jun 2022, 15:17

Release notes

  • MediaPlaybackViewModel.iconArtUri: LiveData<Uri?> has been replaced with MediaPlaybackViewModel.iconArt: LiveData<RemoteDrawableResolver>
  • Refactored global tokens and introduced generic attributes for size, spacing, radius and icon size categories.
    • The mentioned categories use a baseline attribute which is identified as tt_category_1.
    • The postfix value indicates the multiplication factor, e.g. when tt_size_1 is 8dp then tt_size_4 becomes 32dp.
Release 1.0.3841-1590 - 23 Jun 2022, 12:48

Release notes

  • The active media source will stay active, even on error, to prevent the UI changing between sources unpredictably.
Release 1.0.3836-1585 - 23 Jun 2022, 05:34

Release notes

  • All Media domain API were changed to use java.time.Duration whenever a time duration is involved. This helps the media domain API be more uniform and in line with the rest of the platform, makes unit conversions much easier, and simplifies using the API.
Release 1.0.3832-1584 - 22 Jun 2022, 05:37

Release notes

  • Media process panel use process panel adaptive layout.
    • Remove open now playing button from media process panel.
Release 1.0.3830-1580 - 21 Jun 2022, 05:34

Release notes

  • Privacy Mode feature for Alexa:
    • Introduce a new API, enablePrivacyMode, as part of the VpaMediatorSettingsService.
    • When enabled, a user cannot invoke Alexa and Alexa will not proactively start a conversation or send any notifications to the user.
    • This can be used in restricted modes such as valet or for guest drivers.
    • When enabled, all Alexa functionalities are completely disabled as well as all functionalities that include Alexa voice (e.g. audio instructions during navigation, reading of messages).
Release 1.0.3828-1579 - 20 Jun 2022, 13:54

Release notes

  • Since the adaptive behavior of the process panel was introduced, the process bar panel was not always a bar any more, so that part of the name was removed.
    • The following has been renamed:
    • Renamed ProcessBarPanel to ProcessPanel.
    • Renamed TaskProcessBarPanel to Process.
    • Renamed platform_frontend_api_fragment_processbar to platform_frontend_api_template_processpanel.
    • Renamed platform_frontend_api_fragment_modal to platform_frontend_api_template_modalpanel.
    • Renamed platform_frontend_api_fragment_notification to platform_frontend_api_template_notificationpanel.
    • Renamed platform_frontend_api_testing_processbar to platform_frontend_api_testing_processpanel.
    • Renamed platform_frontend_api_testing_modal to platform_frontend_api_testing_modalpanel.
  • The dial pad can be opened from the process panel.
    • The dial pad will be the default tab when opening the communication frontend if there is an ongoing call.
  • Add a Dial Pad tab to the communication frontend. With the dial pad a phone number can be manually entered to be called. And it can be used to send DTMF tones during a call to navigate menus.
Release 1.0.3810-1559 - 16 Jun 2022, 05:33

Release notes

  • Adds a switch to the App Store tab of the debug menu allowing display of Android apps to be toggled on and off.
  • Add the list of countries supported by a VPA to the VpaProperties, exposed by the VpaMediatorService.
  • Added Android 8.1 compatibility for BluetoothProfile.getConnectionPolicy.
  • Changes:
    • Recent calls is using IviDataSource: Finding call log contacts based on phone number query.
    • Process bar is using IviDataSource: Showing contacts details on the process bar based on phone number query.
Release 1.0.3806-1554 - 15 Jun 2022, 05:41

Release notes

  • Changes:
    • Add progress bar to process panel template
    • Renaming ttivi_media_player_progressbar_height to ttivi_processpanel_progressbar_height.
  • Alexa's search and navigation capabilities have been extended to the offline use case.
    • It is now possible to ask similar questions as in the online case:
    • "Alexa, show me nearby Asian restaurants"
    • "Alexa, take me to Starbucks"
    • "Alexa, what's the address of Chase Bank in San Francisco?"
    • "Alexa, what's the best way to 2795 Augustine Drive?"
    • "Alexa, give me directions to Seattle"
    • This feature is only available if the application is configured to use onboard map visualization.
Release 1.0.3791-1534 - 09 Jun 2022, 05:40

Release notes

  • Process panel template could be now reused in task process panel:
    • ProcessBarFragment is renamed to ProcessFragmentBase and offers two abstract classes to implement: ProcessFragment and TaskProcessFragment.
    • ProcessBarViewModel is renamed to ProcessViewModelBase and offers two abstract classed to implement: ProcessViewModelBase and TaskProcessViewModel.
    • Choose suitable variant depending on the panel.
  • Add a safety lock static configuration in module platform_safetylock_api_common_configuration
  • Improve performance of trace events.
  • New media domain API SetRatingAction. This type of standard action allows giving a rating to the currently played media.
Release 1.0.3770-1513 - 01 Jun 2022, 12:44

Release notes

  • Reduce vertical padding within the main menu overflow panel.
  • Fix issue during media playback where the seeking controls could be incorrectly enabled.
    • The media API TouchTrackViewModel was changed to clarify its usage:
      • Constructor parameter TouchTrackViewModel.isSeekActionSupported: LiveData<Boolean> is not a public value anymore but just a parameter.
      • Public value TouchTrackViewModel.isSeekingAvailable: LiveData<Boolean> has been introduced.
  • Dismiss login and settings panels if the safety lock is activated.
    • API change: MediaFrontendContext.Panels.openActivityPanel: onFinishedCallback is always called if the activity panel is dismissed by any reason.
  • When there are several quick replies available to the user, only the selected one is shown as sent.
  • The AppTileView UI control has been promoted from being internal to being public and IviExperimental.
Release 1.0.3712-1453 - 13 May 2022, 12:40

Release notes

  • Changes in media API:
    • The MediaPolicyFrontendExtension constructor takes a package name and an optional class name instead of a SourceId. This allows policies to be applied to the entire media source package.
    • The constructor and fields of MediaConfiguration are no longer public. The asMediaConfiguration function is now public and is intended to create MediaConfiguration objects. Use the existing getPolicyProvider method to access policy providers.
  • TomTom Digital Cockpit now uses type-safe properties for quantities in its APIs to expose physical units such as time duration, distance, energy, power, etc. Property names no longer have an unit suffix, for example, batteryChargeLevelKwh became batteryChargeLevel.
  • Introduce a new contacts API that supports paging. The MirrorableMap contacts API will be marked as deprecated and then removed.
    • The new contacts API uses IviDataSource, that expose a page of contacts without requiring the full data set to be loaded in memory. It also allows querying and sorting contacts.
Release 1.0.3699-1437 - 09 May 2022, 15:51

Release notes

  • Modifications to MenuService API so it no longer exposes a map combining menu items and state (ordering and selected state) but instead exposes an ordered list of menu items and a separate property indicating the selected menu item (or null if no item is selected).
    • Also, the menu item registration APIs have been removed from the MenuService API as menu item registration is now the responsibility of MenuItemProviderService implementations.
  • Add a PanelTransitionDestination parameter in the removeSubContainer method of TaskPanelSubContainerManager. This allows to specify the destination the TaskPanel should transition to when going out of view.
  • Fixed Companion App communication via Bluetooth Low Energy. Some Android phones could not be reconnected when connection is lost.
Release 1.0.3671-1412 - 04 May 2022, 05:39

Release notes

  • Introduce new media domain APIs in MediaSourceAttributionPolicy to allow changing the tab icons shown in the Now Playing View panel.
Release 1.0.3637-1373 - 22 Apr 2022, 19:28

Release notes

  • SourceClient rootMetadata field from media API is now a LiveData.
Release 1.0.3629-1363 - 21 Apr 2022, 12:50

Release notes

  • Allow configuration generator Gradle plugin to be used in combination with build product flavors. Fixes build error: Task with path 'preDebugBuild' not found in project.
  • Fixed an Android Bluetooth phone disconnect problem. Disconnecting a Bluetooth phone triggered from the Digital Cockpit platform, sometimes resulted in the Bluetooth phone not being disconnected.
Release 1.0.3593-1327 - 14 Apr 2022, 13:00

Release notes

  • Let the Alexa Auto Client Service (AACS) handle timezone synchronization from platform to Alexa, and from Alexa to platform.