Dear AppLink Partner,
We just released a new version of the SmartDeviceLink Library for iOS.
## Benefits of updating:
- SDLScreenManager which will allow easier handling of the current view on the headunit. You can find a guide here.
- More enhancements in the Changelog
- Many Bugfixes and improvements.
To download the library, you can:
- [recommended] Update your podfile (please note that we changed the podspec from “SmartDeviceLink-iOS” to “SmartDeviceLink” in order to be ready for future improvements).
- Download the Library from here.
Pre 5.0.0 users:
5.0.0 introduced some breaking changes and required a major version bump. If you are already use the new manager you can use this guide to upgrade to 5.0.0. If you are a long time user of the library and are still using the proxy directly, please also check out this guide.
This release adds a new
SDLScreenManager which enables easier use of (so far) text, graphics, and soft buttons. Access it through the
screenManager property on
- Add a screen manager which currently handles text, graphics, and soft buttons [SDL-0134] #862
- Add soft button object and states, which allow for declaratively designing soft buttons with multiple states
- You can now create an
SDLArtworkwithout a name and a name will be generated based on a hash of the data. You can also now upload an artwork through
SDLFileManagerand have uploaded artwork names passed back to you [SDL-0124] #865
- You can now batch send RPCs either as a batch, or sequentially, waiting for the previous RPC request to respond before sending the next one. This may be useful for batch sending
addCommands or for sending a
performInteractionimmediately after the
createInteractionfinishes [SDL-0087] #723
- There is now a change registration manager for managing language [SDL-0054] #617
- (Navigation / Projection Apps) Fix single taps often being recognized as a pan; there is now a customizable threshold at which pans will be registered; it defaults to 8px #884
- Fixed crash when using log files #872
SDLUploadFileOperationnot finishing on error #860
- Work around a module
ListFilesbug on previous SDL Core versions #827
This release is made up of 188 commits.
This release makes significant feature additions around video and audio streaming for
PROJECTION applications. There are additional fixes and additions for all applications.
- Log unsuccessful RPC responses automatically.
- IAP Transport reconnection optimizations.
SDLAudioStreamManagerthat does on-the-fly transcoding of audio files to an SDL compatible PCM format and can send that audio to be played. This is for
- CarWindow automated ViewController based streaming.
SDLSliderinitializer infinite recursion.
- Fix crash if disconnected while setting up the app icon.
This release is made up of 736 commits.
SDLProxy.streamingMediaManageris now removed. If you wish to use a streaming media manager, you must use
SDLManager.streamingMediaManager. The streaming media manager has been entirely redesigned and now takes into account both phone and head unit app lifecycles SDL-0033. There is now a streaming media configuration added to
SDLJingleconstants have been removed #7.
- Public files
SDLEncoder.hhave been removed #8.
SDLSiphonServerhas been removed; if something similar is needed, it may be custom built and inserted into the
- RPC array and dictionary properties are now immutable #152.
SDLOnWaypointChange, a misspelling of
SDLOnWayPointChangehas been removed #489.
SDLRPCStructand all RPC subclasses now take an immutable dictionary to decode #122SDL-0005, SDL-0005.
- SDL enums are now all stringly typed in Objective-C, and swift enums in Swift #20 SDL-0006.
- iOS 6 and iOS 7 are no longer supported SDL-0008 SDL-0024.
- Use nullability annotations throughout the project #73 SDL-0018.
SDLRPCRequestFactory, initializers now exist on most RPC classes SDL-0020.
SDLTTSChunkFactorywas removed, use the initializers on
- Handler events now provide better parameters instead of generic ones SDL-0027.
- Most properties are now nonatomic, which should speed up the library significantly #49.
SDLLockScreenViewControllernow uses template images, reducing the size of the library #450.
- RPC classes now conform to
- Added convenience methods for pulling out SDL notifications from
SDLTouchManagernow supports gesture cancellation #673.
SDLStreamingMediaManagernow supports automatic
pcmCapabilitiesnot being exposed #714.
- Generics have been added for collections throughout the library SDL-0007.
SDLFileManagerwill not stream from a file on disk if possible SDL-0025.
SDLFileManageradded methods for sending multiple files in one call SDL-0029.
- Added additional
SDLManagerdelegate methods for all
onHMIStatusstate changes SDL-0032.
- Added a handler to
SDLStreamingMediaManagernow supports H.264 + RTP SDL-0048.
- Added SDL Remote Control baseline SDL-0071.
- Focusable items can now be sent (to Core 4.4+) and a manager exists that will automatically handle finding and sending those rects if a
UIWindowis set in the
SDLStreamingMediaConfiguration. They will also be passed back to the developer through the
SDLTouchManagerDelegateSDL-0075 SDL-0081 SDL-0090.
- Services are now properly ended with hash ids #661.
- Constants are now unified into one style #711.
- Fix streaming media manager always assumed 30fps streaming; it can now be custom set by developers in the video encoding dictionary #717.
- Fix a possible crash if the List Files request from the FileManager fails due to disconnection or unregistration #789.
- SDL constants are now constants instead of
- Some protocol property and enum names were incorrect but now fixed #275.
- Internal getters and setters on RPC classes no longer repeat code everywhere #493.
SDLOnLockScreenStatusdoes not use constants for property keys #497.
- Removed deprecated methods #679.