blob: 387e19d5ed92ffde22766c8f0b6f7bbae1a4f119 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
# 4.0.0 Release Notes
### API New Features & Breaking Changes
* Updated to v4.0 RPCs and enums.
* Enums updated:
* LayoutMode (Add and deprecate)
* AppInterfaceUnregisteredReason
* TextFieldName
* ImageFieldName
* VehicleDataResultCode
* KeyboardEvent
* RequestType
* RPCs updated
* TouchEvent - Changed timestamp (ts) to use Long instead of Integers
* HMICapabilities (new)
* RegisterAppInterface (response)
* PutFile (request) - Changed offset and length to use Long instead of Integers
* DialNumber (new - request, response)
* OnSystemRequest (notification) (Changed offset and length to use Long instead of Integers)
* Removed unused classes StringEnumer, Base64, and utl/Mime
* Removed unused methods including these public/protected methods:
* `com/smartDeviceLink/streaming/AbstractPacketizer`
* printBuffer(byte[],int,int)
* `com/smartDeviceLink/trace/Mime`
* base64Decode(String)
* `com/smartDeviceLink/trace/SdlTrace`
* setTracingEnable(Boolean)
* Moved TransportType enum to new package which will contain all new enums for the transport package, `com/smartDeviceLink/transport/enums`
* Removed unused enums
* GearShiftAdviceStatus
* LightSwitchStatus
* MaintenanceModeStatus
* MessageType
* PermissionStatus
* TirePressureTellTale
* VehicleDataActiveStatus
* Video/Audio streaming are now enabled. *[(See spec for more detail)](https://github.com/smartdevicelink/protocol_spec)*
* Changed the USB metadata information to use SDL as the manufacturer and Core as the model
### Enhancements
* Modified generics to follow Java convention
* Made FunctionID an enum rather than class with constants
* Added more robust parameter checking
* Changed some logging methods to return boolean for easier unit tests
* Changed putFile building methods to accept Longs instead of ints. Old methods were deprecated.
* Cleaned up SdlDataTypeConverter in terms of readability.
* MTU size increased to 128kb up from 1.5k for v4. This will be the expected MTU for this version.
* Added a SDL Proxy builder that will enable simpler building of proxy objects as the large amount of constructors could be confusing.
* Changed the outgoing message queues to actually be FIFO queues.
* Heartbeat is now fully implemented which is needed for audio and video streaming. *[(See spec for more details)](https://github.com/smartdevicelink/protocol_spec).*
* Device info will now automatically populate in the Register App Interface RPC.
### Bugfixes
* Fixed issue with onProxyClosed not always called in multiple session scenario
* Removed recursion from HandleReceivedBytes
* Fixed wrong key issue in UpdateTurnList during turn list retrieval
* Fixed class cast exception caused by calling toArray from enums:
* FrameData
* FrameDataControlFrameType
* FrameType
* SessionType
* Redirected deprecated methods to new methods when available for following classes:
* GetVehicleData
* GetVehicleDataResponse
* OnVehicleData
* SubscribeVehicleData
* SubscribeVehicleDataResponse
* UnsubscribeVehicleData
* UnsubscribeVehicleDataResponse
* Fixed incorrect naming conventions of variables (SdlTrace)
* Fixed an issue RPC base classes that allowed for null values to be passed and cause issues with the underlying hashtable.
* Fixed issue where different types of RPC’s (response, request, notification) could be used in their parent class (RPCMessage) state to create other children of that class.
* Fixed SendLocation to use Doubles instead of Floats for degrees
* Fixed naming of SessionTypes to reflect spec and Sava naming conventions
* Fixed ByteEnumer to catch class cast exceptions
* Removed outdated logging.
* Implemented missing callbacks for turn by turn RPCs.
|