The multiple transports feature allows apps to carry their SDL session over multiple transports. The first transport that the app connects with is referred to as the primary transport and a transport connected at a later point is the secondary transport. For example, apps can register over Bluetooth or USB as a primary transport, then connect over WiFi when necessary (ex. to allow video/audio streaming) as a secondary transport. This feature is supported on connections with protocol version 5.1+, which is supported on SDL iOS 6.1+ and SDL Core 5.0+.
On head units that support multiple transports, the primary transport will be used for RPC communication while the secondary transport will be used for high bandwidth services such as streaming video data for navigation applications. If no high-bandwidth secondary transport is present, the primary transport will be used for all needed services that the transport supports.
The only primary transport available for iOS in production applications is iAP.
Secondary transports must be enabled by the module to which the app is connecting. TCP over WiFi can be configured as a supported secondary transport.
By default, TCP is a configured secondary transport, but this can be disabled.
SDLLifecycleConfiguration *lifecycleConfig = [SDLLifecycleConfiguration defaultConfigurationWithAppName:<#AppName#> fullAppId:<#AppID#>]; lifecycleConfig.allowedSecondaryTransports = SDLSecondaryTransportsNone;
let lifecycleConfig = SDLLifecycleConfiguration(appName: <#AppName#>, fullAppId: <#AppID#>) lifecycleConfiguration.allowedSecondaryTransports = []