|
1 | | -# 4.3.0 Release Notes |
| 1 | +# 4.4.0 Release Notes |
2 | 2 |
|
3 | 3 | ### API New Features & Breaking Changes |
4 | | -* The library has now moved to Android Studio as its default IDE. All files and folders have been moved to align with proper Android Studio project structure. |
5 | | -* The target API level is now `19` instead of `18`. Apps will also need to target this version or higher to continue using this library. |
6 | | -* `Java 7` is now used to compile the library and its features can be used moving forward. |
| 4 | +- Now uses compile version 26 to handle breaking changes in Android Oreo |
| 5 | +- `MOBILE_PROJECTION` added as an app type |
| 6 | +- Gesture cancellation was added as a touch even type |
| 7 | +- More languages were added to the `Language` enum |
| 8 | +- `SystemCapaibilityQuery` was added with a new `SystemCapabilityManager` that can retrieve capabilities |
| 9 | +- `VideoStreamingCapabilities` were added. Includes supported codecs, resolution, etc |
| 10 | +- Added constructed payloads using BSON |
| 11 | +- SDL Remote Control functionality was added. Supports radio and climate controls. |
| 12 | +- Added `MetadataType` to `Show` lines |
| 13 | +- Spatial data for video streaming apps added with `HapticData` |
| 14 | + |
7 | 15 |
|
8 | 16 | ### Enhancements |
9 | | -* Multiplexing bluetooth, legacy bluetooth, and TCP transport has been improved in performance by switching to buffer reads vs single byte read from transport. |
10 | | -* Trusted router service checking feature is now adjustable by developers. |
11 | | -* More unit tests were created. |
12 | | -* Router service will now check to make sure the app that propagated it has permissions to use bluetooth. |
13 | | -* Packet streaming classes will now use the agreed upon MTU instead of the hardcoded 1024 when the stream is not encrypted. |
14 | | -* App IDs sent between the client apps and the router service are now Strings instead of Longs to support longer IDs. |
| 17 | +- Enhanced video streaming APIs |
| 18 | +- Added much more test coverage |
| 19 | +- Updated buffer read in sizes and streaming packetizers to use TLS max record size |
| 20 | +- Consolidated all references to `sdl.router.startservice` string into single constant |
| 21 | +- Refactored RPC classes to consolidate redundant code for retrieving items from underlying data structures |
| 22 | +- `MultiplexBluetoothTransport` is no longer a singleton |
| 23 | +- Improved inline documentation |
| 24 | +- h.264 streaming now includes SPS/PPS NAL units with every I frame to match iOS library |
| 25 | +- Real-time Transport Protocol (RTP) video streaming is now supported |
| 26 | +- Correlation IDs are now set automatically. Can be retrieved or overwritten by developer. |
| 27 | +- Introduced new video streaming callback and deprecated used of pipped streams |
| 28 | +- Added an internal interface for common functions between different managers |
15 | 29 |
|
16 | 30 | ### Bug Fixes |
17 | | -* Fixed issue with AOA transport not clearing old accessory reference after disconnect |
18 | | -* Fixed missing setting of error state in multiplexing bluetooth transport |
19 | | -* Fixed potential OOMs when corrupted packets are recieved in: |
20 | | - * `SdlPsm` |
21 | | - * `WiProProtocol` |
22 | | - * `BinaryFrameHeader` |
23 | | -* Fixed possible NPEs in: |
24 | | - * `SdlRouterService` when checking for correct process |
25 | | - * `MultiplexingBluetoothTransport` during reads and writes |
26 | | - * `SdlConnection` during session registration |
27 | | - * `SdlProxyBase` when clearing RPC response and notification listeners during close |
28 | | - * `TransportBroker` when sending a message to router service |
29 | | - * `SdlBroadcastReceiver` during check for running router service |
30 | | - * `HttpRequestTask` that happens when a server can't be reached |
31 | | - * `SdlSecurityBase` when a security lib would become initialized after the base has been reset. |
32 | | -* Added synchronization to a cancel call in the `MultiplexTransport` |
33 | | -* Refactor code in `SdlBroadcastReceiver` to protect against a potential SecurityException |
34 | | -* Added try/catch around bluetooth system calls that can fail in Android classes |
35 | | -* Added try/catch when attempting to build `LocalRouterService` object from parcel when parcel could be corrupt |
36 | | -* Fixed version checking flow in the router service to be cleaner and correctly synched |
| 31 | +- Fixed potential out of bounds exception in `BinaryFrameHeader` |
| 32 | +- Fixed issues with unit tests and TravisCI |
| 33 | +- Fixed potential NPE in `SdlProxyBase`method, `performBaseCommon()` |
| 34 | +- Fixed potential NPE in `MultiplexTransport` constructor |
| 35 | +- Fixed potential NPE in `SdlRouterService`method, `handleMessaage()` for `AltTransportHandler` |
| 36 | +- Fixed potential NPE in `SdlRouterService`method, `writeBytesToTransport()` |
| 37 | +- Removed hardcoded `androidDebuggable = "true"` from manifest |
| 38 | +- Added fixes to be compatible with Android Oreo (Does not supported target API level 26 yet) |
| 39 | +- Fixed issue where intent from router service was delayed |
| 40 | +- Apps now trust themselves as router service hosts |
| 41 | +- Removed ambiguous validation call in `SdlBroadcastReceiver` and unused intent extra |
| 42 | +- Cleared all warnings from `SdlProxyBase` |
37 | 43 |
|
| 44 | +### Meta |
| 45 | +- Added integration that will deploy to Bintray |
| 46 | +- Issue and pull request templates were added for GitHub |
| 47 | +- Codecov integration was added |
| 48 | +- Updated README links |
0 commit comments