sdl_java_suite

SmartDeviceLink libraries for Android, Java SE, and Java EE

BSD-3-CLAUSE License

Stars
186

Bot releases are visible (Hide)

sdl_java_suite - v4.3.1

Published by joeygrover over 7 years ago

Hotfix

  • Removed debuggable=“true” from manifest that was preventing apps from moving to production
sdl_java_suite - v4.3.0

Published by joeygrover over 7 years ago

4.3.0 Release Notes

API New Features & Breaking Changes

  • 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.
  • 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.
  • Java 7 is now used to compile the library and its features can be used moving forward.

Enhancements

  • Multiplexing bluetooth, legacy bluetooth, and TCP transport has been improved in performance by switching to buffer reads vs single byte read from transport.
  • Trusted router service checking feature is now adjustable by developers.
  • More unit tests were created.
  • Router service will now check to make sure the app that propagated it has permissions to use bluetooth.
  • Packet streaming classes will now use the agreed upon MTU instead of the hardcoded 1024 when the stream is not encrypted.
  • App IDs sent between the client apps and the router service are now Strings instead of Longs to support longer IDs.

Bug Fixes

  • Fixed issue with AOA transport not clearing old accessory reference after disconnect
  • Fixed missing setting of error state in multiplexing bluetooth transport
  • Fixed potential OOMs when corrupted packets are recieved in:
    • SdlPsm
    • WiProProtocol
    • BinaryFrameHeader
  • Fixed possible NPEs in:
    • SdlRouterService when checking for correct process
    • MultiplexingBluetoothTransport during reads and writes
    • SdlConnection during session registration
    • SdlProxyBase when clearing RPC response and notification listeners during close
    • TransportBroker when sending a message to router service
    • SdlBroadcastReceiver during check for running router service
    • HttpRequestTask that happens when a server can't be reached
    • SdlSecurityBase when a security lib would become initialized after the base has been reset.
  • Added synchronization to a cancel call in the MultiplexTransport
  • Refactor code in SdlBroadcastReceiver to protect against a potential SecurityException
  • Added try/catch around bluetooth system calls that can fail in Android classes
  • Added try/catch when attempting to build LocalRouterService object from parcel when parcel could be corrupt
  • Fixed version checking flow in the router service to be cleaner and correctly synched
sdl_java_suite - v4.2.3

Published by joeygrover almost 8 years ago

Hotfix

  • Fixed issue with AOA continuously cycling after a disconnect.
sdl_java_suite - v4.2.2

Published by joeygrover almost 8 years ago

Hotfix

  • Fixed naming issues around the unit test project that prevented importing project into Andorid Studio.
  • Fixed issues with the router service validation process to prevent massive amounts of requests to server.
  • Fixed issue preventing apps from reverting to a legacy mode of transportation if no trusted router services are found.
sdl_java_suite - v4.2.1

Published by joeygrover almost 8 years ago

NOTE: There is a known bug in this release that can prevent connections to Ford headunits. Please avoid using this release.

Hotfix

  • Fixed null pointer issues when using weak references and not checking if reference actually still existed.
sdl_java_suite - v4.2.0

Published by joeygrover almost 8 years ago

4.2.0 Release Notes

NOTE: There is a known bug in this release that can prevent connections to Ford headunits. Please avoid using this release.

API New Features & Breaking Changes

Enhancements

  • Unit tests are now included
  • AOA support has been made easier and will follow multiplexing lifecycle
  • Router service version checking has been improved in both reliability and run time
  • Router service notification icons have now been updated to the latest SDL icons
  • The router service will now shutdown if it is not exported
  • A router service will no longer try to be used if it is not exported
  • Trusted router lists are now obtain on different corner cases included when a list doesn't exist.

Bug Fixes

  • Fixed a few issues within the protocol where signed/unsigned bytes were being compared
  • Fixed memory leaks
  • Fixed issue that caused binary frame headers to be added to v1 packets within the router service
  • HttpRequestTask will now only perform one callback of success or failure, instead of one or the other followed by failure callback.
  • Fixed an improper intent extra retrieval in the SdlBroadcastReceiver
  • Added a missing return case out of the transport broker where a reference was null
sdl_java_suite - v4.1.1 Hotfix

Published by joeygrover about 8 years ago

NOTE: There is a known bug in this release that can prevent connections to Ford headunits. Please avoid using this release.

Hotfix

  • Hotfix for router discovery that was not being completed and causing errors for stand-alone router services.
sdl_java_suite - v4.1.0

Published by joeygrover about 8 years ago

4.1.0 Release Notes

NOTE: There is a known bug in this release that can prevent connections to Ford headunits. Please avoid using this release.

API New Features & Breaking Changes

  • Added multiplexing transport that gives the ability to share a single bluetooth RCOMM channel with many clients.
  • Added external security framework that allows OEM's to provide custom security libraries.
  • ProxyALM constructors have changed and old signatures been deprecated.
  • Changed TouchEvent method names to be more intuitive.

Enhancements

  • Multiplexing will now be the default mode of transport

Bug Fixes

  • Fixed issue with sending a stop session with an incorrect hash id
  • Fixed the library throwing away hybrid packets
  • Fixed http onSystemRequests to actually function correctly
  • Fixed a class cast exception in the BTTransport class
sdl_java_suite - 4.0.1 Release Notes

Published by justinjdickow over 8 years ago

API New Features & Breaking Changes

  • Added ability to retrieve HMICapabilities and SystemSoftwareVersion from the proxy object.'

Enhancements

  • Added RPC request callbacks. Developers can now set a listener object into any RPC request and recieve the response through it.
  • Added RPC notification listeners. Developers can now designate a listener for each notifcation type.
  • Added a correlation id generator. Id's can be generated through this class to avoid having to keep track between multiple classes.

Bug Fixes

  • Removed unused imports
sdl_java_suite - 4.0.0

Published by joeygrover about 9 years ago

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)
  • 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).
  • 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.
sdl_java_suite - v3.3.1

Published by mikeburke106 over 9 years ago

Missed this hotfix in the 3.3.0 release.

  • Better bulk data handling in OnSystemRequest (#86 via #123)
sdl_java_suite - v3.3.0

Published by mikeburke106 over 9 years ago

  • Update HU capabilities after successful setDisplayLayoutResponse (#53 via #112)
  • Refactor fuel level state methods to follow Java naming conventions (#84 via #96)
  • Made VrCapabilities follow project guidelines (#89 via #92)
  • Fix enable/disable of SiphonServer (#60 via #75)
sdl_java_suite - v3.2.2

Published by mikeburke106 over 9 years ago

  • Enum improvements (Fixes #79, #91, #102 and #119 via #118)
  • Fix for setBulkData ignoring null inputs (Fixes #103 via #120)
sdl_java_suite - v3.2.1

Published by mikeburke106 over 9 years ago

  • Made SdlChoice constructor public (#71)
sdl_java_suite - v3.2.0

Published by mikeburke106 over 9 years ago

  • Fixed bluetooth exception handling (#72)
  • Added getter for AudioPassThruCapabilities in SdlProxy (#73)
  • Catch a rare exception when SDL is disconnected and tries to send a broadcast intent (#76)
  • Fix issue with PutFile data (#54)
  • Fix typo in DisplayCapabilities (#55)
sdl_java_suite - v3.1.5

Published by mikeburke106 over 9 years ago

Fixed issue #85 via PR #94.

sdl_java_suite - v3.1.4

Published by mikeburke106 over 9 years ago

Fixed issue #80 via PR #81.

sdl_java_suite - v3.1.3

Published by mikeburke106 almost 10 years ago

  • Fixed bug in ImageField class where image type supported should use a list of file types instead of a single file type
  • Fixed copy/paste error in reflection check in PerformInteraction
  • Fixed copy/paste error in reflection check in SetGlobalProperties
  • Added factory methods for streaming PutFiles through binary protocol
sdl_java_suite - v3.1.2

Published by mikeburke106 almost 10 years ago

  • Hotfix to check for null pointer in LockScreenManager
sdl_java_suite - v3.1.1

Published by mikeburke106 almost 10 years ago

Package Rankings
Top 18.42% on Repo1.maven.org
Badges
Extracted from project README
Build Status codecov Slack Status Maven Central Maven Central Maven Central