Documentation iOS DocumentationDocument current as of 01/22/2018 11:53 AM.
NSString(SDLEnum) CategoryReference
Section Contents
• -isEqualToEnum:
Overview
Undocumented
-isEqualToEnum:
Undocumented
OBJECTIVE-C
- (BOOL)isEqualToEnum:(SDLEnum)enumObj;
SDLAbstractProtocol Class Reference
Section Contents
• debugConsoleGroupName• transport• protocolDelegateTable• securityManager• appId• -startServiceWithType:payload:• -startSecureServiceWithType:payload:completionHandler:• -endServiceWithType:• -sendRPC:• -sendRPC:encrypted:error:• -sendRawData:withServiceType:• -sendEncryptedRawData:onService:• -handleBytesFromTransport:
Overview
Undocumented
SWIFT
func isEqual(toEnum enumObj: SDLEnum) -> Bool
debugConsoleGroupName
Undocumented
transport
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *debugConsoleGroupName
SWIFT
var debugConsoleGroupName: String { get set }
OBJECTIVE-C
@property (nullable, weak, nonatomic) SDLAbstractTransport *transport
protocolDelegateTable
Undocumented
securityManager
Undocumented
SWIFT
weak var transport: SDLAbstractTransport? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSHashTable<id<SDLProtocolListener>> *protocolDelegateTable
SWIFT
var protocolDelegateTable: NSHashTable<SDLProtocolListener>? { get set }
appId
Undocumented
OBJECTIVE-C
@property (nullable, nonatomic, strong) id<SDLSecurityType> securityManager
SWIFT
var securityManager: SDLSecurityType? { get set }
OBJECTIVE-C
@property (nonatomic, copy) NSString *appId
SWIFT
var appId: String { get set }
-startServiceWithType:payload:
Undocumented
-
startSecureServiceWithType:payload:completionHandler:
Undocumented
OBJECTIVE-C
- (void)startServiceWithType:(SDLServiceType)serviceType payload:(nullable NSData *)payload;
SWIFT
func startService(with serviceType: SDLServiceType, payload: Data?)
OBJECTIVE-C
- (void)startSecureServiceWithType:(SDLServiceType)serviceType payload:(nullable NSData *)payload completionHandler:(void (^)(BOOL success, NSError *error))completionHandler;
-endServiceWithType:
Undocumented
-sendRPC:
Undocumented
SWIFT
func startSecureService(with serviceType: SDLServiceType, payload: Data?, completionHandler: @escaping (Bool, Error) -> Void)
OBJECTIVE-C
- (void)endServiceWithType:(SDLServiceType)serviceType;
SWIFT
func endService(with serviceType: SDLServiceType)
-sendRPC:encrypted:error:
Undocumented
OBJECTIVE-C
- (void)sendRPC:(SDLRPCMessage *)message;
SWIFT
func sendRPC(_ message: SDLRPCMessage)
OBJECTIVE-C
- (BOOL)sendRPC:(SDLRPCMessage *)message encrypted:(BOOL)encryption error:(NSError **)error;
SWIFT
func sendRPC(_ message: SDLRPCMessage, encrypted encryption: Bool) throws
-sendRawData:withServiceType:
Undocumented
-sendEncryptedRawData:onService:
Undocumented
OBJECTIVE-C
- (void)sendRawData:(NSData *)data withServiceType:(SDLServiceType)serviceType;
SWIFT
func sendRawData(_ data: Data, with serviceType: SDLServiceType)
OBJECTIVE-C
- (void)sendEncryptedRawData:(NSData *)data onService:(SDLServiceType)serviceType;
-handleBytesFromTransport:
Undocumented
SWIFT
func sendEncryptedRawData(_ data: Data, on serviceType: SDLServiceType)
OBJECTIVE-C
- (void)handleBytesFromTransport:(NSData *)receivedData;
SWIFT
func handleBytes(fromTransport receivedData: Data)
SDLAbstractTransport Class Reference
Section Contents
• delegate• debugConsoleGroupName• -connect• -disconnect• -sendData:• -retryDelay
Overview
Undocumented
delegate
Undocumented
OBJECTIVE-C
@property (nullable, weak, nonatomic) id<SDLTransportDelegate> delegate
debugConsoleGroupName
Undocumented
-connect
Undocumented
SWIFT
weak var delegate: SDLTransportDelegate? { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSString *debugConsoleGroupName
SWIFT
var debugConsoleGroupName: String { get set }
-disconnect
Undocumented
OBJECTIVE-C
- (void)connect;
SWIFT
func connect()
OBJECTIVE-C
- (void)disconnect;
SWIFT
func disconnect()
-sendData:
Undocumented
-retryDelay
Undocumented
OBJECTIVE-C
- (void)sendData:(NSData *)dataToSend;
SWIFT
func send(_ dataToSend: Data)
OBJECTIVE-C
- (double)retryDelay;
SDLAddCommand Class Reference
Section Contents
• -initWithHandler:• -initWithId:vrCommands:handler:• -initWithId:vrCommands:menuName:handler:• -
initWithId:vrCommands:menuName:parentId:position:iconValue:iconType:handler:• handler• cmdID• menuParams• vrCommands• cmdIcon
Overview
This class will add a command to the application’s Command Menu
SDLMenuParams
A command will be added to the end of the list of elements in the Command
Menu under the following conditions: • When a SDLCommand is added with no SDLMenuParams value provided• When a SDLMenuParams value is provided with a SDLMenuParam.position
value greater than or equal to the number of menu items currently defined inthe menu specified by the SDLMenuParam.parentID value
SWIFT
func retryDelay() -> Double
The set of choices which the application builds using SDLAddCommand can be
a mixture of: • Choices having only VR synonym definitions, but no SDLMenuParams
definitions • Choices having only SDLMenuParams definitions, but no VR synonym
definitions • Choices having both SDLMenuParams and VR synonym definitions
HMILevel needs to be FULL, LIMITED or BACKGROUD
@since SDL 1.0
SeeSDLDeleteCommand SDLAddSubMenu SDLDeleteSubMenu
-initWithHandler:
Construct a SDLAddCommand with a handler callback when an event occurs.
OBJECTIVE-C
- (nonnull instancetype)initWithHandler: (nullable SDLRPCCommandNotificationHandler)handler;
SWIFT
init(handler: SDLRPCCommandNotificationHandler? = nil)
handler
A callback that will be called when a button event occurs for the
command
An SDLAddCommand object
-initWithId:vrCommands:handler:
Undocumented
PARAMETERS
RETURN VALUE
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)commandId vrCommands:(nullable NSArray<NSString *> *)vrCommands handler:(nullable SDLRPCCommandNotificationHandler)handler;
-initWithId:vrCommands:menuName:handler:
Undocumented
-
initWithId:vrCommands:menuName:parentId:position:iconValue:iconType:handl
Undocumented
SWIFT
init(id commandId: UInt32, vrCommands: [String]?, handler: SDLRPCCommandNotificationHandler? = nil)
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)commandId vrCommands:(nullable NSArray<NSString *> *)vrCommands menuName:(NSString *)menuName handler:(SDLRPCCommandNotificationHandler)handler;
SWIFT
init(id commandId: UInt32, vrCommands: [String]?, menuName: String, handler: @escaping SDLRPCCommandNotificationHandler)
handler
A handler that will let you know when the button you created is subscribed.
WarningThis will only work if you use SDLManager.
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)commandId vrCommands:(nullable NSArray<NSString *> *)vrCommands menuName:(NSString *)menuName parentId:(UInt32)parentId position:(UInt16)position iconValue:(NSString *)iconValue iconType:(SDLImageType)iconType handler:(nullable SDLRPCCommandNotificationHandler)handler;
SWIFT
init(id commandId: UInt32, vrCommands: [String]?, menuName: String, parentId: UInt32, position: UInt16, iconValue: String, iconType: SDLImageType, handler: SDLRPCCommandNotificationHandler? = nil)
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) SDLRPCCommandNotificationHandler handler;
cmdID
@abstract A Unique Command ID that identifies the command
@discussion Is returned in an SDLOnCommand notification to identify the
command selected by the user
Required, Integer, 0 - 2,000,000,000
SWIFT
var handler: SDLRPCCommandNotificationHandler? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull cmdID;
SWIFT
var cmdID: NSNumber & SDLInt { get set }
menuParams
@abstract a SDLMenuParams pointer which will defined the command and how
it is added to the Command Menu
@discussion If provided, this will define the command and how it is added to
the Command Menu
If null, commands will not be accessible through the HMI application menu
Optional
vrCommands
@abstract An array of strings to be used as VR synonyms for this command.
@discussion If provided, defines one or more VR phrases the recognition of any
of which triggers the SDLOnCommand notification with this cmdID
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLMenuParams *menuParams;
SWIFT
var menuParams: SDLMenuParams? { get set }
If null, commands will not be accessible by voice commands (when the user
hits push-to-talk)
Optional, Array of Strings, Max String length 99 chars, Array size 1 - 100
cmdIcon
@abstract Image struct containing a static or dynamic icon
@discussion If provided, defines the image to be be shown along with a
command
If omitted on supported displays, no (or the default if applicable) icon will be
displayed
Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<NSString *> *vrCommands;
SWIFT
var vrCommands: [String]? { get set }
SDLAddSubMenu Class Reference
Section Contents
• -initWithId:menuName:• -initWithId:menuName:position:• menuID• position• menuName
Overview
Add a SDLSubMenu to the Command Menu
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImage *cmdIcon;
SWIFT
var cmdIcon: SDLImage? { get set }
A SDLSubMenu can only be added to the Top Level Menu (i.e.a SDLSubMenu
cannot be added to a SDLSubMenu), and may only contain commands as
children
HMILevel needs to be FULL, LIMITED or BACKGROUD
Since SmartDeviceLink 1.0
see SDLDeleteSubMenu SDLAddCommand SDLDeleteCommand
-initWithId:menuName:
Undocumented
-initWithId:menuName:position:
Undocumented
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)menuId menuName:(NSString *)menuName;
SWIFT
init(id menuId: UInt32, menuName: String)
menuID
@abstract a Menu ID that identifies a sub menu @discussion This value is used
in SDLAddCommand to which SDLSubMenu is the parent of the command being
added
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)menuId menuName:(NSString *)menuName position:(UInt8)position;
SWIFT
init(id menuId: UInt32, menuName: String, position: UInt8)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull menuID;
position
@abstract a position of menu @discussion An NSNumber pointer representing
the position within the items of the top level Command Menu. 0 will insert at
the front, 1 will insert after the first existing element, etc. Position of any
submenu will always be located before the return and exit options
Notes:
• Min Value: 0; Max Value: 1000• If position is greater or equal than the number of items on top level, the
sub menu will be appended by the end• If this parameter is omitted, the entry will be added at the end of the list
SWIFT
var menuID: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *position;
SWIFT
var position: (NSNumber & SDLInt)? { get set }
menuName
@abstract a menuName which is displayed representing this submenu item
@discussion NSString which will be displayed representing this submenu item
SDLAirbagStatus Class Reference
Section Contents
• driverAirbagDeployed• driverSideAirbagDeployed• driverCurtainAirbagDeployed• passengerAirbagDeployed• passengerCurtainAirbagDeployed• driverKneeAirbagDeployed
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull menuName;
SWIFT
var menuName: String { get set }
• passengerSideAirbagDeployed• passengerKneeAirbagDeployed
Overview
Undocumented
driverAirbagDeployed
Undocumented
driverSideAirbagDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverAirbagDeployed
SWIFT
var driverAirbagDeployed: SDLVehicleDataEventStatus { get set }
driverCurtainAirbagDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverSideAirbagDeployed
SWIFT
var driverSideAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverCurtainAirbagDeployed
passengerAirbagDeployed
Undocumented
passengerCurtainAirbagDeployed
Undocumented
SWIFT
var driverCurtainAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerAirbagDeployed
SWIFT
var passengerAirbagDeployed: SDLVehicleDataEventStatus { get set }
driverKneeAirbagDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerCurtainAirbagDeployed
SWIFT
var passengerCurtainAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverKneeAirbagDeployed
passengerSideAirbagDeployed
Undocumented
passengerKneeAirbagDeployed
Undocumented
SWIFT
var driverKneeAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerSideAirbagDeployed
SWIFT
var passengerSideAirbagDeployed: SDLVehicleDataEventStatus { get set }
SDLAlert Class Reference
Section Contents
• -initWithAlertText1:alertText2:duration:• -initWithAlertText1:alertText2:alertText3:• -initWithAlertText1:alertText2:alertText3:duration:• -initWithAlertText1:alertText2:alertText3:duration:softButtons:• -initWithTTS:playTone:• -initWithTTS:alertText1:alertText2:playTone:duration:• -initWithTTS:alertText1:alertText2:alertText3:playTone:duration:• -initWithTTSChunks:playTone:• -initWithTTSChunks:alertText1:alertText2:alertText3:playTone:softButtons:
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerKneeAirbagDeployed
SWIFT
var passengerKneeAirbagDeployed: SDLVehicleDataEventStatus { get set }
• -
initWithTTSChunks:alertText1:alertText2:alertText3:playTone:duration:softButtons:• alertText1• alertText2• alertText3• ttsChunks• duration• playTone• progressIndicator• softButtons
Overview
Shows an alert which typically consists of text-to-speech message and text on
the display. At least either alertText1, alertText2 or TTSChunks need to be
provided.
• The displayed portion of the SDLAlert, if any, will persist until the specified
timeout has elapsed, or the SDLAlert is preempted• An SDLAlert will preempt (abort) any SmartDeviceLink Operation that is
in-progress, except an already-in-progress SDLAlert• An SDLAlert cannot be preempted by any SmartDeviceLink Operation• An SDLAlert can be preempted by a user action (button push)• An SDLAlert will fail if it is issued while another SDLAlert is in progress• Although each Alert parameter is optional, in fact each SDLAlert request
must supply at least one of the following parameters:
◦ alertText1◦ alertText2◦ alertText3◦ ttsChunks
HMILevel needs to be FULL or LIMITED.If the app has been granted function group Notification theSDLHMILevel can also be BACKGROUND
@since SDL 1.0
-initWithAlertText1:alertText2:duration:
Undocumented
-initWithAlertText1:alertText2:alertText3:
Undocumented
OBJECTIVE-C
- (instancetype)initWithAlertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 duration:(UInt16)duration;
SWIFT
init(alertText1: String?, alertText2: String?, duration: UInt16)
OBJECTIVE-C
- (instancetype)initWithAlertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 alertText3:(nullable NSString *)alertText3;
-initWithAlertText1:alertText2:alertText3:duration:
Undocumented
-
initWithAlertText1:alertText2:alertText3:duration:softButtons:
Undocumented
SWIFT
init(alertText1: String?, alertText2: String?, alertText3: String?)
OBJECTIVE-C
- (instancetype)initWithAlertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 alertText3:(nullable NSString *)alertText3 duration:(UInt16)duration;
SWIFT
init(alertText1: String?, alertText2: String?, alertText3: String?, duration:UInt16)
-initWithTTS:playTone:
Undocumented
OBJECTIVE-C
- (instancetype)initWithAlertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 alertText3:(nullable NSString *)alertText3 duration:(UInt16)duration softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(alertText1: String?, alertText2: String?, alertText3: String?, duration:UInt16, softButtons: [SDLSoftButton]?)
OBJECTIVE-C
- (instancetype)initWithTTS:(nullable NSString *)ttsText playTone:(BOOL)playTone;
-
initWithTTS:alertText1:alertText2:playTone:duration:
Undocumented
SWIFT
init(tts ttsText: String?, playTone: Bool)
OBJECTIVE-C
- (instancetype)initWithTTS:(nullable NSString *)ttsText alertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 playTone:(BOOL)playTone duration:(UInt16)duration;
SWIFT
init(tts ttsText: String?, alertText1: String?, alertText2: String?, playTone: Bool, duration: UInt16)
-
initWithTTS:alertText1:alertText2:alertText3:playTone:duration:
Undocumented
-initWithTTSChunks:playTone:
Undocumented
OBJECTIVE-C
- (instancetype)initWithTTS:(nullable NSString *)ttsText alertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 alertText3:(nullable NSString *)alertText3 playTone:(BOOL)playTone duration:(UInt16)duration;
SWIFT
init(tts ttsText: String?, alertText1: String?, alertText2: String?, alertText3: String?, playTone: Bool, duration: UInt16)
OBJECTIVE-C
- (instancetype)initWithTTSChunks:(nullable NSArray<SDLTTSChunk *> *)ttsChunks playTone:(BOOL)playTone;
-
initWithTTSChunks:alertText1:alertText2:alertText3:playTone:softButtons:
Undocumented
SWIFT
init(ttsChunks: [SDLTTSChunk]?, playTone: Bool)
OBJECTIVE-C
- (instancetype)initWithTTSChunks:(nullable NSArray<SDLTTSChunk *> *)ttsChunks alertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 alertText3:(nullable NSString *)alertText3 playTone:(BOOL)playTone softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(ttsChunks: [SDLTTSChunk]?, alertText1: String?, alertText2: String?, alertText3: String?, playTone: Bool, softButtons: [SDLSoftButton]?)
-
initWithTTSChunks:alertText1:alertText2:alertText3:playTone:duration:softButto
Undocumented
alertText1
@abstract The String to be displayed in the first field of the display during the
Alert
@discussion Length is limited to what is indicated in SDLRegisterAppInterface
response
If omitted, top display line will be cleared
OBJECTIVE-C
- (instancetype)initWithTTSChunks:(nullable NSArray<SDLTTSChunk *> *)ttsChunks alertText1:(nullable NSString *)alertText1 alertText2:(nullable NSString *)alertText2 alertText3:(nullable NSString *)alertText3 playTone:(BOOL)playTone duration:(UInt16)duration softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(ttsChunks: [SDLTTSChunk]?, alertText1: String?, alertText2: String?, alertText3: String?, playTone: Bool, duration: UInt16, softButtons: [SDLSoftButton]?)
Text is always centered
Optional, Max length 500 chars
alertText2
@abstract The String to be displayed in the second field of the display during
the Alert
@discussion Only permitted if HMI supports a second display line
Length is limited to what is indicated in SDLRegisterAppInterface response
If omitted, second display line will be cleared
Text is always centered
Optional, Max length 500 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *alertText1;
SWIFT
var alertText1: String? { get set }
alertText3
@abstract the String to be displayed in the third field of the display during the
Alert @discussion Only permitted if HMI supports a third display line
Length is limited to what is indicated in SDLRegisterAppInterface response
If omitted, third display line will be cleared
Text is always centered
Optional, Max length 500 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *alertText2;
SWIFT
var alertText2: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *alertText3;
ttsChunks
@abstract An array which, taken together, specify what is to be spoken to the
user
Optional, Array of SDLTTSChunk, Array length 1 - 100
SeeSDLTTSChunk
SWIFT
var alertText3: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *ttsChunks;
SWIFT
var ttsChunks: [SDLTTSChunk]? { get set }
duration
@abstract The duration of the displayed portion of the alert, in milliseconds.
@discussion After this amount of time has passed, the display fields alertText1
and alertText2 will revert to what was displayed in those fields before the alert
began.
Typical timeouts are 3 - 5 seconds
If omitted, the timeout is set to 5 seconds
Optional, Integer, 3000 - 10000
playTone
@abstract Whether the alert tone should be played before the TTS (if any) is
spoken.
@discussion If ommitted, no tone is played
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *duration;
SWIFT
var duration: (NSNumber & SDLInt)? { get set }
Optional, Boolean
progressIndicator
@abstract If supported on the given platform, the alert GUI will include some
sort of animation indicating that loading of a feature is progressing. e.g. a
spinning wheel or hourglass, etc.
Optional, Boolean
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *playTone;
SWIFT
var playTone: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *progressIndicator;
softButtons
@abstract App defined SoftButtons.
@discussion If omitted on supported displays, the displayed alert shall not have
any SoftButtons
Optional, Array of SDLSoftButton, Array size 0 - 4
SeeSDLSoftButton
SWIFT
var progressIndicator: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLSoftButton *> *softButtons;
SWIFT
var softButtons: [SDLSoftButton]? { get set }
SDLAlertManeuver Class Reference
Section Contents
• -initWithTTS:softButtons:• -initWithTTSChunks:softButtons:• ttsChunks• softButtons
Overview
@since SmartDeviceLink 1.0
-initWithTTS:softButtons:
Undocumented
OBJECTIVE-C
- (instancetype)initWithTTS:(nullable NSString *)ttsText softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(tts ttsText: String?, softButtons: [SDLSoftButton]?)
-initWithTTSChunks:softButtons:
Undocumented
ttsChunks
Undocumented
OBJECTIVE-C
- (instancetype)initWithTTSChunks:(nullable NSArray<SDLTTSChunk *> *)ttsChunks softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(ttsChunks: [SDLTTSChunk]?, softButtons: [SDLSoftButton]?)
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<SDLTTSChunk *> *ttsChunks
softButtons
Undocumented
SWIFT
var ttsChunks: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<SDLSoftButton *> *softButtons
SWIFT
var softButtons: [SDLSoftButton]? { get set }
SDLAlertResponse Class Reference
Section Contents
• tryAgainTime
Overview
Sent after SDLAlert has been sent @since SDL 1.0
tryAgainTime
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLInt> *tryAgainTime
SWIFT
var tryAgainTime: (NSNumber & SDLInt)? { get set }
SDLAppInfo Class Reference
Section Contents
• +currentAppInfo• appDisplayName• appBundleID• appVersion
Overview
Undocumented
+currentAppInfo
Undocumented
OBJECTIVE-C
+ (instancetype)currentAppInfo;
SWIFT
class func current() -> Self
appDisplayName
Undocumented
appBundleID
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *appDisplayName
SWIFT
var appDisplayName: String { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSString *appBundleID
appVersion
Undocumented
SWIFT
var appBundleID: String { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSString *appVersion
SWIFT
var appVersion: String { get set }
SDLArtwork Class Reference
Section Contents
• +artworkWithImage:name:asImageFormat:• +persistentArtworkWithImage:name:asImageFormat:• -initWithImage:name:persistent:asImageFormat:
Overview
Undocumented
+artworkWithImage:name:asImageFormat:
Convenience Helper to create an ephemeral artwork from an image.
This is an ephemeral file, it will not be persisted through sessions / ignition
cycles. Any files that you do not know you will use in future sessions should be
created through this method. For example, album / artist artwork should be
ephemeral.
Persistent files should be created using
persistentArtworkWithImage:name:asImageFormat:
Warning
It is strongly recommended to pass the file url using an SDLFile initializer
instead of the image. If you pass the UIImage, it is loaded into memory, and will
be dumped to a temporary file. This will create a duplicate file. Only pass a
UIImage if the image is not stored on disk.
image
The UIImage to be sent to the remote head unit
name
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote file system limitations.
imageFormat
Whether the image should be converted to a PNG or JPG before
transmission. Images with transparency or few colors should be PNGs.
Images with many colors should be JPGs.
OBJECTIVE-C
+ (nonnull instancetype)artworkWithImage:(nonnull UIImage *)image name:(nonnull NSString *)name asImageFormat:(SDLArtworkImageFormat)imageFormat;
PARAMETERS
An instance of this class to be passed to the file manager.
+persistentArtworkWithImage:name:asImageFormat:
Convenience Helper to create a persistent artwork from an image.
This is a persistent file, it will be persisted through sessions / ignition cycles.
You will only have a limited space for all files, so be sure to only persist files
that are required for all or most sessions. For example, menu artwork should be
persistent.
Ephemeral files should be created using
ephemeralArtworkWithImage:name:asImageFormat:
Warning
It is strongly recommended to pass the file url using an SDLFile initializer
instead of the image. If you pass the UIImage, it is loaded into memory, and will
be dumped to a temporary file. This will create a duplicate file. Only pass a
UIImage if the image is not stored on disk.
RETURN VALUE
OBJECTIVE-C
+ (nonnull instancetype)persistentArtworkWithImage:(nonnull UIImage *)image name:(nonnull NSString *)name asImageFormat: (SDLArtworkImageFormat)imageFormat;
image
The UIImage to be sent to the remote head unit
name
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote file system limitations.
imageFormat
Whether the image should be converted to a PNG or JPG before
transmission. Images with transparency or few colors should be PNGs.
Images with many colors should be JPGs.
An instance of this class to be passed to the file manager.
-initWithImage:name:persistent:asImageFormat:
Create a file for transmission to the remote system from a UIImage.
PARAMETERS
RETURN VALUE
image
The UIImage to be sent to the remote head unit
name
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote file system limitations.
persistent
OBJECTIVE-C
- (nonnull instancetype)initWithImage:(nonnull UIImage *)image name:(nonnull NSString *)name persistent:(BOOL)persistent asImageFormat:(SDLArtworkImageFormat)imageFormat;
SWIFT
init(image: UIImage, name: String, persistent: Bool, as imageFormat: SDLArtworkImageFormat)
PARAMETERS
Whether or not the artwork should be persistent.
imageFormat
Whether the image should be converted to a PNG or JPG before
transmission. Images with transparency or few colors should be PNGs.
Images with many colors should be JPGs.
An instance of this class to be passed to the file manager.
SDLAudioPassThruCapabilities ClassReference
Section Contents
• samplingRate• bitsPerSample• audioType
Overview
Describes different audio type configurations for SDLPerformAudioPassThru,
e.g. {8kHz,8-bit,PCM}
Parameter List
RETURN VALUE
Name Type DescriptionSmartDeviceLink Ver.Available
Since SmartDeviceLink 2.0
samplingRate
@abstract The sampling rate for AudioPassThru
samplingRate SDLSamplingRateDescribes thesampling rate forAudioPassThru
SmartDeviceLink 2.0
bitsPerSample SDLBitsPerSample
Describes thesample depth inbit forAudioPassThru
SmartDeviceLink 2.0
audioType SDLAudioType Describes theaudiotype forAudioPassThru
SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLSamplingRate _Nonnull samplingRate;
SWIFT
var samplingRate: SDLSamplingRate { get set }
bitsPerSample
@abstract The sample depth in bit for AudioPassThru
audioType
@abstract The audiotype for AudioPassThru
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLBitsPerSample _Nonnull bitsPerSample;
SWIFT
var bitsPerSample: SDLBitsPerSample { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLAudioType _Nonnull audioType;
SDLAudioStreamManager ClassReference
Section Contents
• delegate• playing• queue• -init• -initWithManager:• -pushWithFileURL:• -playNextWhenReady• -stop
Overview
Undocumented
delegate
Undocumented
SWIFT
var audioType: SDLAudioType { get set }
playing
Undocumented
queue
Undocumented
OBJECTIVE-C
@property (weak, nonatomic) id<SDLAudioStreamManagerDelegate> delegate
OBJECTIVE-C
@property (assign, nonatomic, readonly, getter=isPlaying) BOOL playing
SWIFT
var isPlaying: Bool { get }
-init
Undocumented
-initWithManager:
Undocumented
OBJECTIVE-C
@property (copy, nonatomic, readonly) NSArray<SDLAudioFile *> *queue
SWIFT
var queue: [SDLAudioFile] { get }
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
-pushWithFileURL:
Push a new file URL onto the queue after converting it into the correct PCM
format for streaming binary data. Call playNextWhenReady to start playing
the next completed pushed file.
Note
This happens on a serial background thread and will provide an error callback
using the delegate if the conversion fails.
OBJECTIVE-C
- (instancetype)initWithManager:(id<SDLStreamingAudioManagerType>)streamManager NS_DESIGNATED_INITIALIZER;
OBJECTIVE-C
- (void)pushWithFileURL:(nonnull NSURL *)fileURL;
SWIFT
func push(withFileURL fileURL: URL)
fileURL
File URL to convert
-playNextWhenReady
Play the next item in the queue. If an item is currently playing, it will continue
playing and this item will begin playing after it is completed.
When complete, this will callback on the delegate.
-stop
Stop playing the queue after the current item completes and clear the queue. If
nothing is playing, the queue will be cleared.
PARAMETERS
OBJECTIVE-C
- (void)playNextWhenReady;
SWIFT
func playNextWhenReady()
SDLBeltStatus Class Reference
Section Contents
• driverBeltDeployed• passengerBeltDeployed• passengerBuckleBelted• driverBuckleBelted• leftRow2BuckleBelted• passengerChildDetected• rightRow2BuckleBelted• middleRow2BuckleBelted• middleRow3BuckleBelted• leftRow3BuckleBelted• rightRow3BuckleBelted• leftRearInflatableBelted
OBJECTIVE-C
- (void)stop;
SWIFT
func stop()
• rightRearInflatableBelted• middleRow1BeltDeployed• middleRow1BuckleBelted
Overview
Undocumented
driverBeltDeployed
Undocumented
passengerBeltDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverBeltDeployed
SWIFT
var driverBeltDeployed: SDLVehicleDataEventStatus { get set }
passengerBuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerBeltDeployed
SWIFT
var passengerBeltDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerBuckleBelted
SWIFT
var passengerBuckleBelted: SDLVehicleDataEventStatus { get set }
driverBuckleBelted
Undocumented
leftRow2BuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverBuckleBelted
SWIFT
var driverBuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus leftRow2BuckleBelted
passengerChildDetected
Undocumented
rightRow2BuckleBelted
Undocumented
SWIFT
var leftRow2BuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerChildDetected
SWIFT
var passengerChildDetected: SDLVehicleDataEventStatus { get set }
middleRow2BuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus rightRow2BuckleBelted
SWIFT
var rightRow2BuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus middleRow2BuckleBelted
SWIFT
var middleRow2BuckleBelted: SDLVehicleDataEventStatus { get set }
middleRow3BuckleBelted
Undocumented
leftRow3BuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus middleRow3BuckleBelted
SWIFT
var middleRow3BuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus leftRow3BuckleBelted
rightRow3BuckleBelted
Undocumented
leftRearInflatableBelted
Undocumented
SWIFT
var leftRow3BuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus rightRow3BuckleBelted
SWIFT
var rightRow3BuckleBelted: SDLVehicleDataEventStatus { get set }
rightRearInflatableBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus leftRearInflatableBelted
SWIFT
var leftRearInflatableBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus rightRearInflatableBelted
SWIFT
var rightRearInflatableBelted: SDLVehicleDataEventStatus { get set }
middleRow1BeltDeployed
Undocumented
middleRow1BuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus middleRow1BeltDeployed
SWIFT
var middleRow1BeltDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus middleRow1BuckleBelted
SDLBodyInformation Class Reference
Section Contents
• parkBrakeActive• ignitionStableStatus• ignitionStatus• driverDoorAjar• passengerDoorAjar• rearLeftDoorAjar• rearRightDoorAjar
Overview
The body information including power modes.
parkBrakeActive
@abstract References signal “PrkBrkActv_B_Actl”.
SWIFT
var middleRow1BuckleBelted: SDLVehicleDataEventStatus { get set }
ignitionStableStatus
@abstract References signal “Ignition_Switch_Stable”. See IgnitionStableStatus.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull parkBrakeActive;
SWIFT
var parkBrakeActive: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLIgnitionStableStatus _Nonnull ignitionStableStatus;
SWIFT
var ignitionStableStatus: SDLIgnitionStableStatus { get set }
ignitionStatus
@abstract References signal “Ignition_status”. See IgnitionStatus.
driverDoorAjar
@abstract References signal “DrStatDrv_B_Actl”.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLIgnitionStatus _Nonnull ignitionStatus;
SWIFT
var ignitionStatus: SDLIgnitionStatus { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *driverDoorAjar;
passengerDoorAjar
@abstract References signal “DrStatPsngr_B_Actl”.
rearLeftDoorAjar
@abstract References signal “DrStatRl_B_Actl”.
SWIFT
var driverDoorAjar: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *passengerDoorAjar;
SWIFT
var passengerDoorAjar: (NSNumber & SDLBool)? { get set }
rearRightDoorAjar
@abstract References signal “DrStatRr_B_Actl”.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *rearLeftDoorAjar;
SWIFT
var rearLeftDoorAjar: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *rearRightDoorAjar;
SWIFT
var rearRightDoorAjar: (NSNumber & SDLBool)? { get set }
SDLButtonCapabilities Class Reference
Section Contents
• name• shortPressAvailable• longPressAvailable• upDownAvailable
Overview
Provides information about the capabilities of a SDL HMI button.
@since SDL 1.0
name
@abstract The name of the SDL HMI button.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonName _Nonnull name;
shortPressAvailable
@abstract A NSNumber value indicates whether the button supports a SHORT
press
Required, Boolean
longPressAvailable
@abstract A NSNumber value indicates whether the button supports a LONG
press
SWIFT
var name: SDLButtonName { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull shortPressAvailable;
SWIFT
var shortPressAvailable: NSNumber & SDLBool { get set }
Required, Boolean
upDownAvailable
@abstract A NSNumber value indicates whether the button supports “button
down” and “button up”
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull longPressAvailable;
SWIFT
var longPressAvailable: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull upDownAvailable;
SDLButtonPress Class Reference
Section Contents
• -initWithButtonName:moduleType:• moduleType• buttonName• buttonPressMode
Overview
This RPC allows a remote control type mobile application to simulate a
hardware button press event.
-initWithButtonName:moduleType:
Undocumented
SWIFT
var upDownAvailable: NSNumber & SDLBool { get set }
moduleType
The module where the button should be pressed.
OBJECTIVE-C
- (instancetype)initWithButtonName:(SDLButtonName)buttonName moduleType:(SDLModuleType) moduleType;
SWIFT
init(buttonName: SDLButtonName, moduleType: SDLModuleType)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLModuleType _Nonnull moduleType;
SWIFT
var moduleType: SDLModuleType { get set }
buttonName
The name of supported RC climate or radio button.
buttonPressMode
Indicates whether this is a LONG or SHORT button press event.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonName _Nonnull buttonName;
SWIFT
var buttonName: SDLButtonName { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonPressMode _Nonnull buttonPressMode;
SDLCarWindowViewController ClassReference
Section Contents
• supportedOrientation
Overview
Note that if this is embedded in a UINavigationController and
UITabBarController, it will not lock orientation. You must lock your container
controller to a specific orientation.
supportedOrientation
Undocumented
SWIFT
var buttonPressMode: SDLButtonPressMode { get set }
SDLChangeRegistration ClassReference
Section Contents
• -initWithLanguage:hmiDisplayLanguage:• -
initWithLanguage:hmiDisplayLanguage:appName:ttsName:ngnMediaScreenAppName:vrSynonyms:• language• hmiDisplayLanguage• appName• ttsName• ngnMediaScreenAppName• vrSynonyms
OBJECTIVE-C
@property (nonatomic, assign) UIInterfaceOrientation supportedOrientation
SWIFT
var supportedOrientation: UIInterfaceOrientation { get set }
Overview
If the app recognizes during the app registration that the SDL HMI language
(voice/TTS and/or display) does not match the app language, the app will be
able (but does not need) to change this registration with changeRegistration
prior to app being brought into focus.
Any HMILevel allowed
@since SDL 2.0
-initWithLanguage:hmiDisplayLanguage:
Undocumented
-
initWithLanguage:hmiDisplayLanguage:appName:ttsName:ngnMediaScreenApp
Undocumented
OBJECTIVE-C
- (instancetype)initWithLanguage:(SDLLanguage)language hmiDisplayLanguage:(SDLLanguage)hmiDisplayLanguage;
SWIFT
init(language: SDLLanguage, hmiDisplayLanguage: SDLLanguage)
language
@abstract The language the app wants to change to
OBJECTIVE-C
- (instancetype)initWithLanguage:(SDLLanguage)language hmiDisplayLanguage:(SDLLanguage)hmiDisplayLanguage appName:(nullable NSString *)appName ttsName:(nullable NSArray<SDLTTSChunk *> *)ttsName ngnMediaScreenAppName:(nullable NSString *)ngnMediaScreenAppName vrSynonyms:(nullable NSArray<NSString *> *)vrSynonyms;
SWIFT
init(language: SDLLanguage, hmiDisplayLanguage: SDLLanguage, appName: String?, ttsName: [SDLTTSChunk]?, ngnMediaScreenAppName: String?, vrSynonyms: [String]?)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull language;
hmiDisplayLanguage
@abstract HMI display language
appName
Request a new app name registration
Optional, Max string length 100 chars
SWIFT
var language: SDLLanguage { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull hmiDisplayLanguage;
SWIFT
var hmiDisplayLanguage: SDLLanguage { get set }
ttsName
Request a new TTSName registration.
Optional, Array of SDLTTSChunk, 1 - 100 elements
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *appName;
SWIFT
var appName: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSArray<SDLTTSChunk *> *ttsName;
ngnMediaScreenAppName
Request a new app short name registration
Optional, Max string length 100 chars
vrSynonyms
Request a new VR synonyms registration
Optional, Array of NSString, 1 - 100 elements, max string length 40 chars
SWIFT
var ttsName: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *ngnMediaScreenAppName;
SWIFT
var ngnMediaScreenAppName: String? { get set }
SDLChoice Class Reference
Section Contents
• -initWithId:menuName:vrCommands:• -
initWithId:menuName:vrCommands:image:secondaryText:secondaryImage:tertiaryText:• choiceID• menuName• vrCommands• image• secondaryText• tertiaryText• secondaryImage
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSArray<NSString *> *vrSynonyms;
SWIFT
var vrSynonyms: [String]? { get set }
Overview
A choice is an option which a user can select either via the menu or via voice
recognition (VR) during an application initiated interaction.
Parameter List
Name Type DescriptionSmartDeviceLink Ver.Available
Since SmartDeviceLink 1.0
-initWithId:menuName:vrCommands:
Undocumented
choiceID NSNumber *
Application-scoped identifierthat uniquelyidentifies thischoice. Min: 0 Max: 65535
SmartDeviceLink 1.0
menuName NSString *
Text whichappears in menu,representing thischoice. Min: 1 Max: 100
SmartDeviceLink 1.0
vrCommands NSArray *
An array ofstrings to be usedas VR synonymsfor this choice. Ifthis array isprovided, it musthave at least onenon-emptyelement
SmartDeviceLink 1.0
image SDLImage *
Either a static hexicon value or abinary image filename identifier(sent by PutFile).
SmartDeviceLink 2.0
-
initWithId:menuName:vrCommands:image:secondaryText:secondaryImage:terti
Undocumented
OBJECTIVE-C
- (instancetype)initWithId:(UInt16)choiceId menuName:(NSString *)menuName vrCommands:(NSArray<NSString *> *)vrCommands;
SWIFT
init(id choiceId: UInt16, menuName: String, vrCommands: [String])
OBJECTIVE-C
- (instancetype)initWithId:(UInt16)choiceId menuName:(NSString *)menuName vrCommands:(NSArray<NSString *> *)vrCommands image:(nullable SDLImage *)image secondaryText:(nullable NSString *)secondaryText secondaryImage:(nullable SDLImage *)secondaryImage tertiaryText:(nullable NSString *)tertiaryText;
choiceID
@abstract the application-scoped identifier that uniquely identifies this choice
Required, Integer 0 - 65535
menuName
@abstract Text which appears in menu, representing this choice
SWIFT
init(id choiceId: UInt16, menuName: String, vrCommands: [String], image: SDLImage?, secondaryText: String?, secondaryImage: SDLImage?, tertiaryText: String?)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull choiceID;
SWIFT
var choiceID: NSNumber & SDLInt { get set }
Required, Max string length 500 chars
vrCommands
@abstract VR synonyms for this choice
Required, Array of Strings, Array length 1 - 100, Max String length 99 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull menuName;
SWIFT
var menuName: String { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<NSString *> *_Nonnull vrCommands;
image
@abstract The image of the choice
Optional
secondaryText
@abstract Optional secondary text to display; e.g. address of POI in a search
result entry
Optional, Max String length 500 chars
SWIFT
var vrCommands: [String] { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImage *image;
SWIFT
var image: SDLImage? { get set }
tertiaryText
@abstract Optional tertiary text to display; e.g. distance to POI for a search
result entry
Optional, Max String length 500 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *secondaryText;
SWIFT
var secondaryText: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *tertiaryText;
secondaryImage
@abstract Optional secondary image for choice
Optional
SWIFT
var tertiaryText: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImage *secondaryImage;
SWIFT
var secondaryImage: SDLImage? { get set }
SDLClimateControlCapabilities ClassReference
Section Contents
• -
initWithModuleName:fanSpeedAvailable:desiredTemperatureAvailable:acEnableAvailable:acMaxEnableAvaila• moduleName• fanSpeedAvailable• desiredTemperatureAvailable• acEnableAvailable• acMaxEnableAvailable• circulateAirEnableAvailable• autoModeEnableAvailable• dualModeEnableAvailable• defrostZoneAvailable• defrostZone• ventilationModeAvailable• ventilationMode
Overview
Contains information about a climate control module’s capabilities.
-
initWithModuleName:fanSpeedAvailable:desiredTemperatureAvailable:acEnable
Undocumented
moduleName
@abstract The short friendly name of the climate control module. It should not
be used to identify a module by mobile application.
Max string length 100 chars
OBJECTIVE-C
- (instancetype)initWithModuleName:(NSString *)moduleName fanSpeedAvailable:(BOOL)fanSpeedAvailable desiredTemperatureAvailable:(BOOL)desiredTemperatureAvailable acEnableAvailable:(BOOL)acEnableAvailable acMaxEnableAvailable:(BOOL)acMaxEnableAvailable circulateAirAvailable:(BOOL)circulateAirEnableAvailable autoModeEnableAvailable:(BOOL)autoModeEnableAvailable dualModeEnableAvailable:(BOOL)dualModeEnableAvailable defrostZoneAvailable:(BOOL)defrostZoneAvailable ventilationModeAvailable:(BOOL)ventilationModeAvailable;
SWIFT
init(moduleName: String, fanSpeedAvailable: Bool, desiredTemperatureAvailable: Bool, acEnableAvailable: Bool, acMaxEnableAvailable: Bool, circulateAirAvailable circulateAirEnableAvailable: Bool, autoModeEnableAvailable: Bool, dualModeEnableAvailable: Bool, defrostZoneAvailable: Bool, ventilationModeAvailable: Bool)
fanSpeedAvailable
@abstract Availability of the control of fan speed. True: Available, False: Not
Available, Not present: Not Available.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull moduleName;
SWIFT
var moduleName: String { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *fanSpeedAvailable;
desiredTemperatureAvailable
@abstract Availability of the control of desired temperature. True: Available,
False: Not Available, Not present: Not Available.
Optional, Boolean
acEnableAvailable
@abstract Availability of the control of turn on/off AC. True: Available, False: Not
Available, Not present: Not Available.
SWIFT
var fanSpeedAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *desiredTemperatureAvailable;
SWIFT
var desiredTemperatureAvailable: (NSNumber & SDLBool)? { get set }
Optional, Boolean
acMaxEnableAvailable
@abstract Availability of the control of enable/disable air conditioning is ON on
the maximum level. True: Available, False: Not Available, Not present: Not
Available.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *acEnableAvailable;
SWIFT
var acEnableAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *acMaxEnableAvailable;
circulateAirEnableAvailable
@abstract Availability of the control of enable/disable circulate Air mode. True:
Available, False: Not Available, Not present: Not Available.
Optional, Boolean
autoModeEnableAvailable
@abstract Availability of the control of enable/disable auto mode. True:
Available, False: Not Available, Not present: Not Available.
SWIFT
var acMaxEnableAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *circulateAirEnableAvailable;
SWIFT
var circulateAirEnableAvailable: (NSNumber & SDLBool)? { get set }
Optional, Boolean
dualModeEnableAvailable
@abstract Availability of the control of enable/disable dual mode. True:
Available, False: Not Available, Not present: Not Available.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *autoModeEnableAvailable;
SWIFT
var autoModeEnableAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *dualModeEnableAvailable;
defrostZoneAvailable
@abstract Availability of the control of defrost zones. True: Available, False: Not
Available, Not present: Not Available.
Optional, Boolean
defrostZone
@abstract A set of all defrost zones that are controllable.
SWIFT
var dualModeEnableAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *defrostZoneAvailable;
SWIFT
var defrostZoneAvailable: (NSNumber & SDLBool)? { get set }
Optional, NSArray of type SDLDefrostZone minsize=“1” maxsize=“100”
ventilationModeAvailable
@abstract Availability of the control of air ventilation mode. True: Available,
False: Not Available, Not present: Not Available.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLDefrostZone> *defrostZone;
SWIFT
var defrostZone: [SDLDefrostZone]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *ventilationModeAvailable;
ventilationMode
@abstract A set of all ventilation modes that are controllable. True: Available,
False: Not Available, Not present: Not Available.
Optional, NSArray of type SDLVentilationMode minsize=“1” maxsize=“100”
SWIFT
var ventilationModeAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLVentilationMode> *ventilationMode;
SWIFT
var ventilationMode: [SDLVentilationMode]? { get set }
SDLClimateControlData Class Reference
Section Contents
• -
initWithFanSpeed:desiredTemperature:acEnable:circulateAirEnable:autoModeEnable:defrostZone:dualModeE• fanSpeed• currentTemperature• desiredTemperature• acEnable• circulateAirEnable• autoModeEnable• defrostZone• dualModeEnable• acMaxEnable• ventilationMode
Overview
Undocumented
-
initWithFanSpeed:desiredTemperature:acEnable:circulateAirEnable:autoModeEn
Undocumented
fanSpeed
@abstract Speed of Fan in integer
Optional, MinValue- 0 MaxValue= 100
OBJECTIVE-C
- (instancetype)initWithFanSpeed:(nullable NSNumber<SDLInt> *)fanSpeed desiredTemperature:(nullable SDLTemperature *)desiredTemperature acEnable:(nullable NSNumber<SDLBool> *)acEnable circulateAirEnable:(nullable NSNumber<SDLBool> *)circulateAirEnable autoModeEnable:(nullable NSNumber<SDLBool> *)autoModeEnable defrostZone:(nullable SDLDefrostZone)defrostZone dualModeEnable:(nullable NSNumber<SDLBool> *)dualModeEnable acMaxEnable:(nullable NSNumber<SDLBool> *)acMaxEnable ventilationMode:(nullable SDLVentilationMode)ventilationMode;
SWIFT
init(fanSpeed: (NSNumber & SDLInt)?, desiredTemperature: SDLTemperature?, acEnable: (NSNumber & SDLBool)?, circulateAirEnable: (NSNumber & SDLBool)?, autoModeEnable: (NSNumber & SDLBool)?, defrostZone: SDLDefrostZone?, dualModeEnable: (NSNumber & SDLBool)?, acMaxEnable: (NSNumber & SDLBool)?, ventilationMode: SDLVentilationMode?)
currentTemperature
@abstract The Current Temperature in SDLTemperature
WarningThis property is readonly and cannot be set on the module. Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *fanSpeed;
SWIFT
var fanSpeed: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLTemperature *currentTemperature;
desiredTemperature
@abstract Desired Temperature in SDLTemperature
Optional
acEnable
@abstract Represents if AC is enabled.
Optional, Boolean
SWIFT
var currentTemperature: SDLTemperature? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLTemperature *desiredTemperature;
SWIFT
var desiredTemperature: SDLTemperature? { get set }
circulateAirEnable
@abstract Represents if circulation of air is enabled.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *acEnable;
SWIFT
var acEnable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *circulateAirEnable;
autoModeEnable
@abstract Represents if auto mode is enabled.
Optional, Boolean
defrostZone
@abstract Represents the kind of defrost zone
Optional, SDLDefrostZone
SWIFT
var circulateAirEnable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *autoModeEnable;
SWIFT
var autoModeEnable: (NSNumber & SDLBool)? { get set }
dualModeEnable
@abstract Represents if dual mode is enabled.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLDefrostZone defrostZone;
SWIFT
var defrostZone: SDLDefrostZone? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *dualModeEnable;
acMaxEnable
@abstract Represents if ac max is enabled.
Optional, Boolean
ventilationMode
@abstract Represents the kind of Ventilation zone
Optional, SDLVentilationMode
SWIFT
var dualModeEnable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *acMaxEnable;
SWIFT
var acMaxEnable: (NSNumber & SDLBool)? { get set }
SDLClusterModeStatus Class Reference
Section Contents
• powerModeActive• powerModeQualificationStatus• carModeStatus• powerModeStatus
Overview
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVentilationMode ventilationMode;
SWIFT
var ventilationMode: SDLVentilationMode? { get set }
powerModeActive
Undocumented
powerModeQualificationStatus
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLBool> *powerModeActive
SWIFT
var powerModeActive: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLPowerModeQualificationStatus powerModeQualificationStatus
carModeStatus
Undocumented
powerModeStatus
Undocumented
SWIFT
var powerModeQualificationStatus: SDLPowerModeQualificationStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLCarModeStatus carModeStatus
SWIFT
var carModeStatus: SDLCarModeStatus { get set }
SDLConfiguration Class Reference
Section Contents
• lifecycleConfig• lockScreenConfig• loggingConfig• streamingMediaConfig• -initWithLifecycle:lockScreen:logging:• +configurationWithLifecycle:lockScreen:logging:• -initWithLifecycle:lockScreen:logging:streamingMedia:• +configurationWithLifecycle:lockScreen:logging:streamingMedia:
Overview
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLPowerModeStatus powerModeStatus
SWIFT
var powerModeStatus: SDLPowerModeStatus { get set }
lifecycleConfig
The lifecycle configuration.
lockScreenConfig
The lock screen configuration.
OBJECTIVE-C
@property (readonly, copy, nonatomic) SDLLifecycleConfiguration *_Nonnull lifecycleConfig;
SWIFT
@NSCopying var lifecycleConfig: SDLLifecycleConfiguration { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) SDLLockScreenConfiguration *_Nonnull lockScreenConfig;
loggingConfig
The log configuration.
streamingMediaConfig
The configuration
SWIFT
@NSCopying var lockScreenConfig: SDLLockScreenConfiguration { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) SDLLogConfiguration *_Nonnull loggingConfig;
SWIFT
@NSCopying var loggingConfig: SDLLogConfiguration { get }
-initWithLifecycle:lockScreen:logging:
Create a new configuration to be passed into SDLManager with a custom
lifecycle, lock screen, and logging configuration.
OBJECTIVE-C
@property (readonly, copy, nonatomic) SDLStreamingMediaConfiguration *_Nonnull streamingMediaConfig;
SWIFT
@NSCopying var streamingMediaConfig: SDLStreamingMediaConfiguration { get }
OBJECTIVE-C
- (nonnull instancetype)initWithLifecycle:(nonnull SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig;
lifecycleConfig
The lifecycle configuration to be used.
lockScreenConfig
The lockscreen configuration to be used, or enabledConfiguration if
nil.
logConfig
The logging configuration to be used, or defaultConfiguration if nil.
The configuration
SWIFT
init(lifecycle lifecycleConfig: SDLLifecycleConfiguration, lockScreen lockScreenConfig: SDLLockScreenConfiguration?, logging logConfig: SDLLogConfiguration?)
PARAMETERS
RETURN VALUE
+configurationWithLifecycle:lockScreen:logging:
Create a new configuration to be passed into SDLManager with a custom
lifecycle, lock screen, and logging configuration.
lifecycleConfig
The lifecycle configuration to be used.
lockScreenConfig
The lockscreen configuration to be used, or enabledConfiguration if
nil.
logConfig
The logging configuration to be used, or defaultConfiguration if nil.
OBJECTIVE-C
+ (nonnull instancetype)configurationWithLifecycle:(nonnull SDLLifecycleConfiguration *)lifecycleConfig lockScreen: (nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig;
PARAMETERS
The configuration
-
initWithLifecycle:lockScreen:logging:streamingMedia:
Create a new configuration to be passed into SDLManager with a custom
lifecycle, lock screen, logging, and streaming media configuration.
RETURN VALUE
OBJECTIVE-C
- (nonnull instancetype)initWithLifecycle:(nonnull SDLLifecycleConfiguration *)lifecycleConfig lockScreen:(nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig streamingMedia: (nullable SDLStreamingMediaConfiguration *)streamingMediaConfig;
SWIFT
init(lifecycle lifecycleConfig: SDLLifecycleConfiguration, lockScreen lockScreenConfig: SDLLockScreenConfiguration?, logging logConfig: SDLLogConfiguration?, streamingMedia streamingMediaConfig: SDLStreamingMediaConfiguration?)
lifecycleConfig
The lifecycle configuration to be used.
lockScreenConfig
The lockscreen configuration to be used, or enabledConfiguration if
nil.
logConfig
The logging configuration to be used, or defaultConfiguration if nil.
streamingMediaConfig
The streaming media configuration to be used, or nil because it is not
needed.
The configuration
+configurationWithLifecycle:lockScreen:logging:streamingMedia:
Create a new configuration to be passed into SDLManager with a custom
lifecycle, lock screen, logging, and streaming media configuration.
PARAMETERS
RETURN VALUE
lifecycleConfig
The lifecycle configuration to be used.
lockScreenConfig
The lockscreen configuration to be used, or enabledConfiguration if
nil.
logConfig
The logging configuration to be used, or defaultConfiguration if nil.
streamingMediaConfig
OBJECTIVE-C
+ (nonnull instancetype)configurationWithLifecycle:(nonnull SDLLifecycleConfiguration *)lifecycleConfig lockScreen: (nullable SDLLockScreenConfiguration *)lockScreenConfig logging:(nullable SDLLogConfiguration *)logConfig streamingMedia: (nullable SDLStreamingMediaConfiguration *)streamingMediaConfig;
PARAMETERS
The streaming media configuration to be used, or nil because it is not
needed.
The configuration
SDLCreateInteractionChoiceSet ClassReference
Section Contents
• -initWithId:choiceSet:• interactionChoiceSetID• choiceSet
Overview
Creates a Choice Set which can be used in subsequent SDLPerformInteraction
Operations.
HMILevel needs to be FULL, LIMITED or BACKGROUND
Before a perform interaction is sent you MUST wait for the success from the
CreateInteractionChoiceSet RPC.
If you do not wait the system may not recognize the first utterance from the
user.
@since SDL 1.0
See
RETURN VALUE
SDLDeleteInteractionChoiceSet SDLPerformInteraction
-initWithId:choiceSet:
Undocumented
interactionChoiceSetID
@abstract A unique ID that identifies the Choice Set
Required, Integer, 0 - 2,000,000,000
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)choiceId choiceSet:(NSArray<SDLChoice *> *)choiceSet;
SWIFT
init(id choiceId: UInt32, choiceSet: [SDLChoice])
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull interactionChoiceSetID;
choiceSet
@abstract Array of choices, which the user can select by menu or voice
recognition
Required, SDLChoice, Array size 1 - 100
SWIFT
var interactionChoiceSetID: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLChoice *> *_Nonnull choiceSet;
SWIFT
var choiceSet: [SDLChoice] { get set }
SDLDIDResult Class Reference
Section Contents
• resultCode• didLocation• data
Overview
Undocumented
resultCode
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataResultCode resultCode
SWIFT
var resultCode: SDLVehicleDataResultCode { get set }
didLocation
Undocumented
data
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *didLocation
SWIFT
var didLocation: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *data
SDLDateTime Class Reference
Section Contents
• -initWithHour:minute:• -initWithHour:minute:second:millisecond:• -initWithHour:minute:second:millisecond:day:month:year:• -
initWithHour:minute:second:millisecond:day:month:year:timezoneMinuteOffset:timezoneHourOffset:• millisecond• second• minute• hour• day• month• year• timezoneMinuteOffset• timezoneHourOffset
Overview
Undocumented
SWIFT
var data: String? { get set }
-initWithHour:minute:
Undocumented
-initWithHour:minute:second:millisecond:
Undocumented
OBJECTIVE-C
- (instancetype)initWithHour:(UInt8)hour minute:(UInt8)minute;
SWIFT
init(hour: UInt8, minute: UInt8)
OBJECTIVE-C
- (instancetype)initWithHour:(UInt8)hour minute:(UInt8)minute second:(UInt8)second millisecond:(UInt16)millisecond;
-
initWithHour:minute:second:millisecond:day:month:year:
Undocumented
SWIFT
init(hour: UInt8, minute: UInt8, second: UInt8, millisecond: UInt16)
OBJECTIVE-C
- (instancetype)initWithHour:(UInt8)hour minute:(UInt8)minute second:(UInt8)second millisecond:(UInt16)millisecond day:(UInt8)day month:(UInt8)month year:(UInt16)year;
SWIFT
init(hour: UInt8, minute: UInt8, second: UInt8, millisecond: UInt16, day: UInt8, month: UInt8, year: UInt16)
-
initWithHour:minute:second:millisecond:day:month:year:timezoneMinuteOffset
Undocumented
millisecond
@abstract Milliseconds part of time
Optional, Integer 0 - 999
OBJECTIVE-C
- (instancetype)initWithHour:(UInt8)hour minute:(UInt8)minute second:(UInt8)second millisecond:(UInt16)millisecond day:(UInt8)day month:(UInt8)month year:(UInt16)year timezoneMinuteOffset:(UInt8)timezoneMinuteOffset timezoneHourOffset:(int)timezoneHourOffset;
SWIFT
init(hour: UInt8, minute: UInt8, second: UInt8, millisecond: UInt16, day: UInt8, month: UInt8, year: UInt16, timezoneMinuteOffset: UInt8, timezoneHourOffset: Int32)
second
@abstract Seconds part of time
Optional, Integer 0 - 59
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull millisecond;
SWIFT
@NSCopying var millisecond: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull second;
minute
@abstract Minutes part of time
Optional, Integer 0 - 59
hour
@abstract Hour part of time
Optional, Integer 0 - 23
SWIFT
@NSCopying var second: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull minute;
SWIFT
@NSCopying var minute: NSNumber & SDLInt { get set }
day
@abstract Day of the month
Optional, Integer 1 - 31
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull hour;
SWIFT
@NSCopying var hour: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull day;
month
@abstract Month of the year
Optional, Integer 1 - 12
year
@abstract The year in YYYY format
Optional, Max Value 4095
SWIFT
@NSCopying var day: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull month;
SWIFT
@NSCopying var month: NSNumber & SDLInt { get set }
timezoneMinuteOffset
@abstract Time zone offset in Min with regard to UTC
Optional, Integer 0 - 59
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull year;
SWIFT
@NSCopying var year: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull timezoneMinuteOffset;
timezoneHourOffset
@abstract Time zone offset in Hours with regard to UTC
Optional, Integer -12 - 14
SWIFT
@NSCopying var timezoneMinuteOffset: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLInt> *_Nonnull timezoneHourOffset;
SWIFT
@NSCopying var timezoneHourOffset: NSNumber & SDLInt { get set }
SDLDeleteCommand Class Reference
Section Contents
• -initWithId:• cmdID
Overview
Removes a command from the Command Menu
HMI Status Requirements:
HMILevel: FULL, LIMITED or BACKGROUND
AudioStreamingState: N/A
SystemContext: Should not be attempted when VRSESSION or MENU
Since SmartDeviceLink 1.0
see SDLAddCommand SDLAddSubMenu SDLDeleteSubMenu
-initWithId:
Undocumented
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)commandId;
cmdID
@abstract the Command ID that identifies the Command to be deleted from
Command Menu @discussion an NSNumber value representing Command ID
Notes: Min Value: 0; Max Value: 2000000000
SWIFT
init(id commandId: UInt32)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull cmdID;
SWIFT
var cmdID: NSNumber & SDLInt { get set }
SDLDeleteFile Class Reference
Section Contents
• -initWithFileName:• syncFileName
Overview
Used to delete a file resident on the SDL module in the app’s local cache. Not
supported on first generation SDL vehicles
Since SmartDeviceLink 2.0
see SDLPutFile SDLListFiles
-initWithFileName:
Undocumented
OBJECTIVE-C
- (instancetype)initWithFileName:(NSString *)fileName;
SWIFT
init(fileName: String)
syncFileName
@abstract a file reference name @discussion a String value representing a file
reference name
SDLDeleteFileResponse Class Reference
Section Contents
• spaceAvailable
Overview
Delete File Response is sent, when DeleteFile has been called
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull syncFileName;
SWIFT
var syncFileName: String { get set }
Since SmartDeviceLink 2.0
spaceAvailable
Undocumented
SDLDeleteInteractionChoiceSet ClassReference
Section Contents
• -initWithId:
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *spaceAvailable
SWIFT
var spaceAvailable: NSNumber & SDLInt { get set }
• interactionChoiceSetID
Overview
Deletes an existing Choice Set identified by the parameter
interactionChoiceSetID. If the specified interactionChoiceSetID is currently in
use by an active SDLPerformInteraction this call to delete the Choice Set will
fail returning an IN_USE resultCode
Function Group: Base
HMILevel needs to be FULL, LIMITED or BACKGROUD
Since SmartDeviceLink 1.0
see SDLCreateInteractionChoiceSet SDLPerformInteraction
-initWithId:
Undocumented
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)choiceId;
SWIFT
init(id choiceId: UInt32)
interactionChoiceSetID
@abstract a unique ID that identifies the Choice Set @discussion a unique ID
that identifies the Choice Set
Notes: Min Value: 0; Max Value: 2000000000
SDLDeleteSubMenu Class Reference
Section Contents
• -initWithId:
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull interactionChoiceSetID;
SWIFT
var interactionChoiceSetID: NSNumber & SDLInt { get set }
• menuID
Overview
Deletes a submenu from the Command Menu
Notes: When an app deletes a submenu that has child commands, those child
commands are also deleted
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 1.0
see SDLAddCommand SDLAddSubMenu SDLDeleteCommand
-initWithId:
Undocumented
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)menuId;
SWIFT
init(id menuId: UInt32)
menuID
@abstract the MenuID that identifies the SDLSubMenu to be delete @discussion
Notes: Min Value: 0; Max Value: 2000000000
SDLDeviceInfo Class Reference
Section Contents
• +currentDevice• hardware• firmwareRev• os• osVersion• carrier
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull menuID;
SWIFT
var menuID: NSNumber & SDLInt { get set }
• maxNumberRFCOMMPorts
Overview
Undocumented
+currentDevice
Undocumented
hardware
Undocumented
OBJECTIVE-C
+ (instancetype)currentDevice;
SWIFT
class func currentDevice() -> Self
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *hardware
firmwareRev
Undocumented
os
Undocumented
SWIFT
var hardware: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *firmwareRev
SWIFT
var firmwareRev: String? { get set }
osVersion
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *os
SWIFT
var os: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *osVersion
SWIFT
var osVersion: String? { get set }
carrier
Undocumented
maxNumberRFCOMMPorts
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *carrier
SWIFT
var carrier: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLInt> *maxNumberRFCOMMPorts
SDLDeviceStatus Class Reference
Section Contents
• voiceRecOn• btIconOn• callActive• phoneRoaming• textMsgAvailable• battLevelStatus• stereoAudioOutputMuted• monoAudioOutputMuted• signalLevelStatus• primaryAudioSource• eCallEventActive
Overview
Describes the status related to a connected mobile device or SDL and if or how
it is represented in the vehicle.
Parameter List
SWIFT
var maxNumberRFCOMMPorts: (NSNumber & SDLInt)? { get set }
Name Type DescriptionSmartDeviceLink Ver.Available
@since SDL 2.0
voiceRecOn
@abstract Indicates whether the voice recognition is on or off
Required, Boolean
voiceRecOn NSNumber * Voice recognitionis on
SmartDeviceLink 2.0
btIconOn NSNumber * Bluetoothconnectionestablished
SmartDeviceLink 2.0
callActive NSNumber * A call is beingactive
SmartDeviceLink 2.0
phoneRoaming NSNumber * The phone is inroaming mode
SmartDeviceLink 2.0
textMsgAvailable NSNumber * A textmessage is
available SmartDeviceLink 2.0
battLevelStatus SDLDeviceLevelStatus *
Battery levelstatus
SmartDeviceLink 2.0
stereoAudioOutputMuted NSNumber *
Status of thestereo audiooutput channel
SmartDeviceLink 2.0
monoAudioOutputMuted NSNumber *
Status of themono audiooutput channel
SmartDeviceLink 2.0
signalLevelStatus
SDLDeviceLevelStatus * Signal level status SmartDeviceLin
k 2.0
primaryAudioSource
PrimaryAudioSource *
Reflects thecurrent primaryaudio source ofSDL (if selected).
SmartDeviceLink 2.0
eCallEventActive NSNumber *
Reflects, if aneCall event isactive
SmartDeviceLink 2.0
btIconOn
@abstract Indicates whether the bluetooth connection established
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull voiceRecOn;
SWIFT
var voiceRecOn: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull btIconOn;
callActive
@abstract Indicates whether a call is being active
Required, Boolean
phoneRoaming
@abstract Indicates whether the phone is in roaming mode
Required, Boolean
SWIFT
var btIconOn: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull callActive;
SWIFT
var callActive: NSNumber & SDLBool { get set }
textMsgAvailable
@abstract Indicates whether a textmessage is available
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull phoneRoaming;
SWIFT
var phoneRoaming: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull textMsgAvailable;
battLevelStatus
@abstract Battery level status
SeeSDLDeviceLevelStatus Required
stereoAudioOutputMuted
@abstract The status of the stereo audio output channel
SWIFT
var textMsgAvailable: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLDeviceLevelStatus _Nonnull battLevelStatus;
SWIFT
var battLevelStatus: SDLDeviceLevelStatus { get set }
Required, Boolean
monoAudioOutputMuted
@abstract The status of the mono audio output channel
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull stereoAudioOutputMuted;
SWIFT
var stereoAudioOutputMuted: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull monoAudioOutputMuted;
signalLevelStatus
@abstract Signal level status
SeeSDLDeviceLevelStatus Required
primaryAudioSource
@abstract The current primary audio source of SDL (if selected).
See
SWIFT
var monoAudioOutputMuted: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLDeviceLevelStatus _Nonnull signalLevelStatus;
SWIFT
var signalLevelStatus: SDLDeviceLevelStatus { get set }
SDLPrimaryAudioSource Required
eCallEventActive
@abstract Indicates if an emergency call is active
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLPrimaryAudioSource _Nonnull primaryAudioSource;
SWIFT
var primaryAudioSource: SDLPrimaryAudioSource { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull eCallEventActive;
SDLDiagnosticMessage Class Reference
Section Contents
• -initWithTargetId:length:data:• targetID• messageLength• messageData
Overview
Non periodic vehicle diagnostic request
@since SDL 3.0
-initWithTargetId:length:data:
Undocumented
SWIFT
var eCallEventActive: NSNumber & SDLBool { get set }
targetID
Name of target ECU
Required, Integer, 0 - 65535
OBJECTIVE-C
- (instancetype)initWithTargetId:(UInt16)targetId length:(UInt16)length data:(NSArray<NSNumber<SDLUInt> *> *)data;
SWIFT
init(targetId: UInt16, length: UInt16, data: [NSNumber & SDLUInt])
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull targetID;
messageLength
Length of message (in bytes)
Required, Integer, 65535
messageData
Array of bytes comprising CAN message.
SWIFT
var targetID: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull messageLength;
SWIFT
var messageLength: NSNumber & SDLInt { get set }
Required, Array of NSNumber (Integers), Array size 1 - 65535, Integer Size 0 -
255
SDLDiagnosticMessageResponse ClassReference
Section Contents
• messageDataResult
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<NSNumber<SDLInt> *> *_Nonnull messageData;
SWIFT
var messageData: [NSNumber & SDLInt] { get set }
Overview
SDLDiagnosticMessageResponse is sent, when SDLDiagnosticMessage has been
called.
• SinceSmartDeviceLink 3.0
messageDataResult
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSArray<NSNumber<SDLInt> *> *messageDataResult
SWIFT
var messageDataResult: [NSNumber & SDLInt] { get set }
SDLDialNumber Class Reference
Section Contents
• -initWithNumber:• number
Overview
This RPC is used to tell the head unit to use bluetooth to dial a phone number
using the phone.
@since SDL 4.0
-initWithNumber:
Undocumented
OBJECTIVE-C
- (instancetype)initWithNumber:(NSString *)number;
SWIFT
init(number: String)
number
Up to 40 character string representing the phone number. All characters
stripped except for ‘0’-‘9’, ‘*’, ‘#’, ‘,’, ‘;’, and ‘+’
SDLDisplayCapabilities Class Reference
Section Contents
• displayType• textFields• imageFields• mediaClockFormats• graphicSupported• templatesAvailable• screenParams
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull number;
SWIFT
var number: String { get set }
• numCustomPresetsAvailable
Overview
Contains information about the display for the SDL system to which the
application is currently connected.
@since SDL 1.0
displayType
@abstract The type of display
Required
textFields
@abstract An array of SDLTextField structures, each of which describes a field in
the HMI which the application can write to using operations such as SDLShow,
SDLSetMediaClockTimer, etc.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLDisplayType _Nonnull displayType;
SWIFT
var displayType: SDLDisplayType { get set }
@discussion This array of SDLTextField structures identify all the text fields to
which the application can write on the current display (identified by
SDLDisplayType).
SeeSDLTextField Required, Array of SDLTextField, 1 - 100 objects
imageFields
@abstract An array of SDLImageField elements
@discussion A set of all fields that support images.
SeeSDLImageField Optional, Array of SDLImageField, 1 - 100 objects
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLTextField *> *_Nonnull textFields;
SWIFT
var textFields: [SDLTextField] { get set }
mediaClockFormats
@abstract An array of SDLMediaClockFormat elements, defining the valid string
formats used in specifying the contents of the media clock field
SeeSDLMediaClockFormat Required, Array of SDLMediaClockFormats, 0 - 100 objects
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLImageField *> *imageFields;
SWIFT
var imageFields: [SDLImageField]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLMediaClockFormat> *_Nonnull mediaClockFormats;
graphicSupported
@abstract The display’s persistent screen supports.
@since SDL 2.0
Required, Boolean
templatesAvailable
@abstract Number of presets the screen supports
SWIFT
var mediaClockFormats: [SDLMediaClockFormat] { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull graphicSupported;
SWIFT
var graphicSupported: NSNumber & SDLBool { get set }
@discussion The number of on-screen custom presets available (if any)
Optional, Array of String, max string size 100, 0 - 100 objects
screenParams
@abstract A set of all parameters related to a prescribed screen area (e.g. for
video / touch input)
Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<NSString *> *templatesAvailable;
SWIFT
var templatesAvailable: [String]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLScreenParams *screenParams;
numCustomPresetsAvailable
@abstract The number of on-screen custom presets available (if any);
otherwise omitted
Optional, Integer 1 - 100
SWIFT
var screenParams: SDLScreenParams? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *numCustomPresetsAvailable;
SWIFT
var numCustomPresetsAvailable: (NSNumber & SDLInt)? { get set }
SDLECallInfo Class Reference
Section Contents
• eCallNotificationStatus• auxECallNotificationStatus• eCallConfirmationStatus
Overview
Undocumented
eCallNotificationStatus
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataNotificationStatus eCallNotificationStatus
SWIFT
var eCallNotificationStatus: SDLVehicleDataNotificationStatus { get set }
auxECallNotificationStatus
Undocumented
eCallConfirmationStatus
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataNotificationStatus auxECallNotificationStatus
SWIFT
var auxECallNotificationStatus: SDLVehicleDataNotificationStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLECallConfirmationStatus eCallConfirmationStatus
SDLEmergencyEvent Class Reference
Section Contents
• emergencyEventType• fuelCutoffStatus• rolloverEvent• maximumChangeVelocity• multipleEvents
Overview
Undocumented
emergencyEventType
Undocumented
SWIFT
var eCallConfirmationStatus: SDLECallConfirmationStatus { get set }
fuelCutoffStatus
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLEmergencyEventType emergencyEventType
SWIFT
var emergencyEventType: SDLEmergencyEventType { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLFuelCutoffStatus fuelCutoffStatus
SWIFT
var fuelCutoffStatus: SDLFuelCutoffStatus { get set }
rolloverEvent
Undocumented
maximumChangeVelocity
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus rolloverEvent
SWIFT
var rolloverEvent: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *maximumChangeVelocity
multipleEvents
Undocumented
SWIFT
var maximumChangeVelocity: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus multipleEvents
SWIFT
var multipleEvents: SDLVehicleDataEventStatus { get set }
SDLEncodedSyncPData Class Reference
Section Contents
• data
Overview
Undocumented
data
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSArray<NSString *> *data
SWIFT
var data: [String] { get set }
SDLFile Class Reference
Section Contents
• persistent• overwrite• name• fileURL• data• fileSize• fileType• inputStream• -init• -initWithFileURL:name:persistent:• +persistentFileAtFileURL:name:• +fileAtFileURL:name:• -initWithData:name:fileExtension:persistent:• +persistentFileWithData:name:fileExtension:• +fileWithData:name:fileExtension:
Overview
Undocumented
persistent
Whether or not the file should persist on disk between car ignition cycles.
overwrite
Whether or not the file should overwrite an existing file on the remote disk with
the same name.
OBJECTIVE-C
@property (readonly, getter=isPersistent, assign, nonatomic) BOOL persistent;
SWIFT
var isPersistent: Bool { get }
OBJECTIVE-C
@property (assign, readwrite, nonatomic) BOOL overwrite;
SWIFT
var overwrite: Bool { get set }
name
The name the file should be stored under on the remote disk. This is how the
file will be referenced in all later calls.
fileURL
The url the local file is stored at while waiting to push it to the remote system. If
the data has not been passed to the file URL, this will be nil.
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSString *_Nonnull name;
SWIFT
var name: String { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic, nullable) NSURL *fileURL;
data
The binary data of the SDLFile. If initialized with data, this will be a relatively
quick call, but if initialized with a file URL, this is a rather expensive call the first
time. The data will be cached in RAM after the first call.
fileSize
The size of the binary data of the SDLFile.
SWIFT
var fileURL: URL? { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSData *_Nonnull data;
SWIFT
var data: Data { get }
fileType
The system will attempt to determine the type of file that you have passed in. It
will default to BINARY if it does not recognize the file type or the file type is not
supported by SDL.
OBJECTIVE-C
@property (readonly, nonatomic) unsigned long long fileSize;
SWIFT
var fileSize: UInt64 { get }
OBJECTIVE-C
@property (readonly, strong, nonatomic) SDLFileType _Nonnull fileType;
inputStream
A stream to pull binary data from a SDLFile. The stream only pulls required data
from the file on disk or in memory. This reduces memory usage while uploading
a large file to the remote system as each chunk of data can be released
immediately after it is uploaded.
-init
Undocumented
SWIFT
var fileType: SDLFileType { get }
OBJECTIVE-C
@property (readonly, nonatomic) NSInputStream *_Nonnull inputStream;
SWIFT
var inputStream: InputStream { get }
-initWithFileURL:name:persistent:
The designated initializer for an SDL File. The only major property that is not set
using this is “overwrite”, which defaults to NO.
url
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
OBJECTIVE-C
- (nonnull instancetype)initWithFileURL:(nonnull NSURL *)url name:(nonnull NSString *)name persistent:(BOOL)persistent;
SWIFT
init(fileURL url: URL, name: String, persistent: Bool)
PARAMETERS
The file URL pointing to the local data that will be pushed to the remote
system.
name
The name that the file will be stored under on the remote system and
how it will be referenced from the local system. The max file name
length may vary based on remote filesystem limitations.
persistent
Whether or not the file will persist between ignition cycles.
An SDLFile object.
+persistentFileAtFileURL:name:
Create an SDL file using a local file URL.
This is a persistent file, it will be persisted through sessions / ignition cycles.
You will only have a limited space for all files, so be sure to only persist files
that are required for all or most sessions. For example, menu artwork should be
persistent.
Ephemeral files should be created using ephemeralFileAtURL:name:
Warning
If this is not a readable file, this will return nil
RETURN VALUE
url
The url to the file that should be uploaded.
name
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote filesystem limitations.
An instance of this class, or nil if a readable file at the path could not be found.
+fileAtFileURL:name:
Create an SDL file using a local file URL.
OBJECTIVE-C
+ (nonnull instancetype)persistentFileAtFileURL:(nonnull NSURL *)url name:(nonnull NSString *)name;
PARAMETERS
RETURN VALUE
This is an ephemeral file, it will not be persisted through sessions / ignition
cycles. Any files that you do not know you will use in future sessions should be
created through this method. For example, album / artist artwork should be
ephemeral.
Persistent files should be created using persistentFileAtURL:name:
Warning
If this is not a readable file, this will return nil
url
The url to the file on disk that will be uploaded
name
OBJECTIVE-C
+ (nonnull instancetype)fileAtFileURL:(nonnull NSURL *)url name:(nonnull NSString *)name;
SWIFT
convenience init(atFileURL url: URL, name: String)
PARAMETERS
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote file system limitations.
An instance of this class, or nil if a readable file at the url could not be found.
-initWithData:name:fileExtension:persistent:
Create an SDL file using raw data. It is strongly preferred to pass a file URL
instead of data, as it is currently held in memory until the file is sent.
RETURN VALUE
OBJECTIVE-C
- (nonnull instancetype)initWithData:(nonnull NSData *)data name:(nonnull NSString *)name fileExtension:(nonnull NSString *)extension persistent:(BOOL)persistent;
SWIFT
init(data: Data, name: String, fileExtension extension: String, persistent: Bool)
data
The raw data to be used for the file
name
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote file system limitations.
extension
The file extension. For example “png”. Currently supported file
extensions are: “bmp”, “jpg”, “jpeg”, “png”, “wav”, “mp3”, “aac”, “
json”. All others will be sent as binary files.
persistent
Whether or not the remote file with this data should be persistent
An instance of this class
PARAMETERS
RETURN VALUE
+persistentFileWithData:name:fileExtension:
Create an SDL file using raw data. It is strongly preferred to pass a file URL
instead of data, as it is currently held in memory until the file is sent.
This is a persistent file, it will be persisted through sessions / ignition cycles.
You will only have a limited space for all files, so be sure to only persist files
that are required for all or most sessions. For example, menu artwork should be
persistent.
data
The raw data to be used for the file
name
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote file system limitations.
extension
OBJECTIVE-C
+ (nonnull instancetype)persistentFileWithData:(nonnull NSData *)data name:(nonnull NSString *)name fileExtension:(nonnull NSString *)extension;
PARAMETERS
The file extension. For example “png”. Currently supported file
extensions are: “bmp”, “jpg”, “jpeg”, “png”, “wav”, “mp3”, “aac”, “
json”. All others will be sent as binary files.
An instance of this class
+fileWithData:name:fileExtension:
Create an SDL file using raw data. It is strongly preferred to pass a file URL
instead of data, as it is currently held in memory until the file is sent.
This is an ephemeral file, it will not be persisted through sessions / ignition
cycles. Any files that you do not know you will use in future sessions should be
created through this method. For example, album / artist artwork should be
ephemeral.
RETURN VALUE
OBJECTIVE-C
+ (nonnull instancetype)fileWithData:(nonnull NSData *)data name:(nonnull NSString *)name fileExtension:(nonnull NSString *)extension;
data
The raw data to be used for the file
name
The name of the file that will be used to reference the file in the future
(for example on the remote file system). The max file name length may
vary based on remote file system limitations.
extension
The file extension. For example “png”. Currently supported file
extensions are: “bmp”, “jpg”, “jpeg”, “png”, “wav”, “mp3”, “aac”, “
json”. All others will be sent as binary files.
SWIFT
convenience init(data: Data, name: String, fileExtension extension: String)
PARAMETERS
An instance of this class
SDLFileManager Class Reference
Section Contents
• remoteFileNames• bytesAvailable• currentState• pendingTransactions• suspended• -init• -initWithConnectionManager:• -startWithCompletionHandler:• -stop• -deleteRemoteFileWithName:completionHandler:• -deleteRemoteFilesWithNames:completionHandler:• -uploadFile:completionHandler:• -uploadFiles:progressHandler:completionHandler:• -uploadFiles:completionHandler:• +temporaryFileDirectory
Overview
The SDLFileManager is an RPC manager for the remote file system. After it
starts, it will attempt to communicate with the remote file system to get the
names of all files. Deleting and Uploading will them queue these changes as
transactions. If a delete succeeds, the local list of remote files will remove that
RETURN VALUE
file name, and likewise, if an upload succeeds, the local list of remote files will
now include that file name.
remoteFileNames
A set of all names of files known on the remote head unit. Known files can be
used or deleted on the remote system.
bytesAvailable
The number of bytes still available for files for this app.
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSSet<SDLFileName *> *_Nonnull remoteFileNames;
SWIFT
var remoteFileNames: Set<String> { get }
OBJECTIVE-C
@property (readonly, assign, nonatomic) NSUInteger bytesAvailable;
currentState
The state of the file manager.
pendingTransactions
The currently pending transactions (Upload, Delete, and List Files) in the file
manager
SWIFT
var bytesAvailable: UInt { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSString *_Nonnull currentState;
SWIFT
var currentState: String { get }
suspended
Whether or not the file manager is suspended. If suspended, the file manager
can continue to queue uploads and deletes, but will not actually perform any of
those until it is no longer suspended. This can be used for throttling down the
file manager if other, important operations are taking place over the accessory
connection.
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSArray<__kindof NSOperation *> *_Nonnull pendingTransactions;
SWIFT
var pendingTransactions: [Operation] { get }
OBJECTIVE-C
@property (assign, readwrite, nonatomic) BOOL suspended;
-init
Initialize the class…or not, since this method is unavailable. Dependencies
must be injected using initWithConnectionManager:
nil
-initWithConnectionManager:
Creates a new file manager with a specified connection manager
SWIFT
var suspended: Bool { get set }
OBJECTIVE-C
- (nonnull instancetype)init;
RETURN VALUE
manager
A connection manager to use to forward on RPCs
An instance of SDLFileManager
-startWithCompletionHandler:
The manager stars up and attempts to fetch its initial list and transfer initial
files.
OBJECTIVE-C
- (nonnull instancetype)initWithConnectionManager: (nonnull id<SDLConnectionManagerType>)manager;
PARAMETERS
RETURN VALUE
completionHandler
The handler called when the manager is set up or failed to set up with
an error. Use weak self when accessing self from the completion
handler.
-stop
Cancels all file manager operations and deletes all associated data.
OBJECTIVE-C
- (void)startWithCompletionHandler: (nullable SDLFileManagerStartupCompletionHandler)completionHandler;
SWIFT
func start(completionHandler: SDLFileManagerStartupCompletionHandler? = nil)
PARAMETERS
-deleteRemoteFileWithName:completionHandler:
Delete a file stored on the remote system
OBJECTIVE-C
- (void)stop;
SWIFT
func stop()
OBJECTIVE-C
- (void)deleteRemoteFileWithName:(nonnull SDLFileName *)name completionHandler: (nullable SDLFileManagerDeleteCompletionHandler)completion;
name
The name of the remote file. It should be a name currently stored in
remoteFileNames
completion
An optional completion handler that sends an error should one occur.
-deleteRemoteFilesWithNames:completionHandler:
Deletes an array of files on the remote file system. The files are deleted in the
order in which they are added to the array, with the first file to be deleted at
index 0. The delete queue is sequential, meaning that once a delete request is
SWIFT
func delete(fileName name: String, completionHandler completion: SDLFileManagerDeleteCompletionHandler? = nil)
PARAMETERS
sent to Core, the queue waits until a response is received from Core before the
next the next delete request is sent.
names
The names of the files to be deleted
completionHandler
an optional SDLFileManagerMultiDeleteCompletionHandler
OBJECTIVE-C
- (void)deleteRemoteFilesWithNames:(nonnull NSArray<SDLFileName *> *)names completionHandler: (nullable SDLFileManagerMultiDeleteCompletionHandler) completionHandler;
SWIFT
func delete(fileNames names: [String], completionHandler: SDLFileManagerMultiDeleteCompletionHandler? = nil)
PARAMETERS
-uploadFile:completionHandler:
Upload a file to the remote file system. If a file with the [SDLFile name] already
exists, this will overwrite that file. If you do not want that to happen, check
remoteFileNames before uploading, or change allowOverwrite to NO.
file
An SDLFile that contains metadata about the file to be sent
completion
An optional completion handler that sends an error should one occur.
OBJECTIVE-C
- (void)uploadFile:(nonnull SDLFile *)file completionHandler: (nullable SDLFileManagerUploadCompletionHandler)completion;
SWIFT
func upload(file: SDLFile, completionHandler completion: SDLFileManagerUploadCompletionHandler? = nil)
PARAMETERS
-uploadFiles:progressHandler:completionHandler:
Uploads an array of files to the remote file system. The files will be uploaded in
the order in which they are added to the array, with the first file to be uploaded
at index 0. The upload queue is sequential, meaning that once a upload request
is sent to Core, the queue waits until a response is received from Core before
the next the next upload request is sent.
The optional progress handler can be used to keep track of the upload progress.
After each file upload, the progress handler returns the upload percentage and
an error, if one occured during the upload process. The progress handler also
includes an option to cancel the upload of all remaining files in queue.
OBJECTIVE-C
- (void)uploadFiles:(nonnull NSArray<SDLFile *> *)files progressHandler: (nullable SDLFileManagerMultiUploadProgressHandler)progressHandler completionHandler: (nullable SDLFileManagerMultiUploadCompletionHandler)completionHandler;
SWIFT
func upload(files: [SDLFile], progressHandler: SDLFileManagerMultiUploadProgressHandler?, completionHandler: SDLFileManagerMultiUploadCompletionHandler? = nil)
files
An array of SDLFiles to be sent
progressHandler
an optional SDLFileManagerMultiUploadProgressHandler
completionHandler
an optional SDLFileManagerMultiUploadCompletionHandler
-uploadFiles:completionHandler:
Uploads an array of files to the remote file system. The files will be uploaded in
the order in which they are added to the array, with the first file to be uploaded
at index 0. The upload queue is sequential, meaning that once a upload request
is sent to Core, the queue waits until a response is received from Core before
the next the next upload request is sent.
PARAMETERS
OBJECTIVE-C
- (void)uploadFiles:(nonnull NSArray<SDLFile *> *)files completionHandler: (nullable SDLFileManagerMultiUploadCompletionHandler)completionHandler;
files
An array of SDLFiles to be sent
completionHandler
an optional SDLFileManagerMultiUploadCompletionHandler
+temporaryFileDirectory
A URL to the directory where temporary files are stored. When an SDLFile is
created with NSData, it writes to a temporary file until the file manager finishes
uploading it.
The SDL library manages the creation and deletion of these files and you
should not have to touch this directory at all.
SWIFT
func upload(files: [SDLFile], completionHandler: SDLFileManagerMultiUploadCompletionHandler? = nil)
PARAMETERS
An NSURL pointing to the location on disk where SDL’s temporary files are
stored.
SDLGPSData Class Reference
Section Contents
• longitudeDegrees• latitudeDegrees• utcYear• utcMonth• utcDay
OBJECTIVE-C
+ (nonnull NSURL *)temporaryFileDirectory;
SWIFT
class func temporaryFileDirectory() -> URL
RETURN VALUE
• utcHours• utcMinutes• utcSeconds• compassDirection• pdop• hdop• vdop• actual• satellites• dimension• altitude• heading• speed
Overview
Describes the GPS data. Not all data will be available on all carlines.
@since SDL 2.0
longitudeDegrees
@abstract longitude degrees
Required, Float, -180 - 180
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull longitudeDegrees;
latitudeDegrees
@abstract latitude degrees
Required, Float, -90 - 90
utcYear
@abstract utc year
Required, Integer, 2010 - 2100
SWIFT
var longitudeDegrees: NSNumber & SDLFloat { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull latitudeDegrees;
SWIFT
var latitudeDegrees: NSNumber & SDLFloat { get set }
utcMonth
@abstract utc month
Required, Integer, 1 - 12
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull utcYear;
SWIFT
var utcYear: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull utcMonth;
utcDay
@abstract utc day
Required, Integer, 1 - 31
utcHours
@abstract utc hours
Required, Integer, 0 - 23
SWIFT
var utcMonth: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull utcDay;
SWIFT
var utcDay: NSNumber & SDLInt { get set }
utcMinutes
@abstract utc minutes
Required, Integer, 0 - 59
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull utcHours;
SWIFT
var utcHours: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull utcMinutes;
utcSeconds
@abstract utc seconds
Required, Integer, 0 - 59
compassDirection
Potential Compass Directions
SWIFT
var utcMinutes: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull utcSeconds;
SWIFT
var utcSeconds: NSNumber & SDLInt { get set }
pdop
@abstract The 3D positional dilution of precision.
@discussion If undefined or unavailable, then value shall be set to 0
Required, Float, 0.0 - 10.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLCompassDirection _Nonnull compassDirection;
SWIFT
var compassDirection: SDLCompassDirection { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull pdop;
hdop
@abstract The horizontal dilution of precision
@discussion If undefined or unavailable, then value shall be set to 0
Required, Float, 0.0 - 10.0
vdop
@abstract the vertical dilution of precision
SWIFT
var pdop: NSNumber & SDLFloat { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull hdop;
SWIFT
var hdop: NSNumber & SDLFloat { get set }
@discussion If undefined or unavailable, then value shall be set to 0
Required, Float, 0.0 - 10.0
actual
@abstract What the coordinates are based on
@discussion YES, if coordinates are based on satellites. NO, if based on dead
reckoning.
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull vdop;
SWIFT
var vdop: NSNumber & SDLFloat { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull actual;
satellites
@abstract The number of satellites in view
Required, Integer, 0 - 31
dimension
The supported dimensions of the GPS
Required
SWIFT
var actual: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull satellites;
SWIFT
var satellites: NSNumber & SDLInt { get set }
altitude
@abstract altitude in meters
Required, Float, -10000.0 - 10000.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLDimension _Nonnull dimension;
SWIFT
var dimension: SDLDimension { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull altitude;
heading
@abstract Heading based on the GPS data.
@discussion North is 0, East is 90, etc. Resolution is 0.01
Required, Float, 0.0 - 359.99
speed
@abstract speed in KPH
SWIFT
var altitude: NSNumber & SDLFloat { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull heading;
SWIFT
var heading: NSNumber & SDLFloat { get set }
Required, Float, 0.0 - 500.0
SDLGetDTCs Class Reference
Section Contents
• -initWithECUName:• -initWithECUName:mask:• ecuName• dtcMask
Overview
This RPC allows to request diagnostic module trouble codes from a certain
vehicle module
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull speed;
SWIFT
var speed: NSNumber & SDLFloat { get set }
Function Group: ProprietaryData
HMILevel needs to be FULL, LIMITED or BACKGROUND
-initWithECUName:
Undocumented
-initWithECUName:mask:
Undocumented
OBJECTIVE-C
- (instancetype)initWithECUName:(UInt16)name;
SWIFT
init(ecuName name: UInt16)
OBJECTIVE-C
- (instancetype)initWithECUName:(UInt16)name mask:(UInt8)mask;
ecuName
@abstract a name of the module to receive the DTC form @discussion an
NSNumber value representing a name of the module to receive the DTC form
Notes: Minvalue:0; Maxvalue:65535
dtcMask
@abstract DTC Mask Byte to be sent in diagnostic request to module.
NSNumber* dtcMask Minvalue:0; Maxvalue:255
SWIFT
init(ecuName name: UInt16, mask: UInt8)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull ecuName;
SWIFT
var ecuName: NSNumber & SDLInt { get set }
SDLGetDTCsResponse Class Reference
Section Contents
• ecuHeader• dtc
Overview
SDLGetDTCsResponse is sent, when SDLGetDTCs has been called
Since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *dtcMask;
SWIFT
var dtcMask: (NSNumber & SDLInt)? { get set }
ecuHeader
Undocumented
dtc
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *ecuHeader
SWIFT
var ecuHeader: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSArray<NSString *> *dtc
SDLGetInteriorVehicleData ClassReference
Section Contents
• -initWithModuleType:• -initAndSubscribeToModuleType:• -initAndUnsubscribeToModuleType:• moduleType• subscribe
Overview
Reads the current status value of specified remote control module (type). When
subscribe is true, subscribes for specific remote control module data items.
When subscribe is false, unsubscribes for specific remote control module data
items. Once subscribed, the application will be notified by the
onInteriorVehicleData RPC notification whenever new data is available for the
module.
-initWithModuleType:
Undocumented
SWIFT
var dtc: [String] { get set }
-initAndSubscribeToModuleType:
Undocumented
OBJECTIVE-C
- (instancetype)initWithModuleType:(SDLModuleType)moduleType;
SWIFT
init(moduleType: SDLModuleType)
OBJECTIVE-C
- (instancetype)initAndSubscribeToModuleType:(SDLModuleType)moduleType;
SWIFT
init(andSubscribeToModuleType moduleType: SDLModuleType)
-initAndUnsubscribeToModuleType:
Undocumented
moduleType
The type of a RC module to retrieve module data from the vehicle.
OBJECTIVE-C
- (instancetype)initAndUnsubscribeToModuleType:(SDLModuleType)moduleType;
SWIFT
init(andUnsubscribeToModuleType moduleType: SDLModuleType)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLModuleType _Nonnull moduleType;
subscribe
If subscribe is true, the head unit will register onInteriorVehicleData
notifications for the requested moduelType. If subscribe is false, the head unit
will unregister onInteriorVehicleData notifications for the requested
moduelType.
optional, Boolean, default Value = false
SWIFT
var moduleType: SDLModuleType { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *subscribe;
SWIFT
var subscribe: (NSNumber & SDLBool)? { get set }
SDLGetInteriorVehicleDataResponseClass Reference
Section Contents
• moduleData• isSubscribed
Overview
Undocumented
moduleData
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLModuleData *moduleData
SWIFT
var moduleData: SDLModuleData { get set }
isSubscribed
@abstract It is a conditional-mandatory parameter: must be returned in case “
subscribe” parameter was present in the related request. if “true” - the “
moduleType” from request is successfully subscribed and the head unit will
send onInteriorVehicleData notifications for the moduleType. if “false” - the “
moduleType” from request is either unsubscribed or failed to subscribe.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *isSubscribed;
SWIFT
var isSubscribed: (NSNumber & SDLBool)? { get set }
SDLGetSystemCapability ClassReference
Section Contents
• -initWithType:• systemCapabilityType
Overview
Undocumented
-initWithType:
Undocumented
OBJECTIVE-C
- (instancetype)initWithType:(SDLSystemCapabilityType)type;
SWIFT
init(type: SDLSystemCapabilityType)
systemCapabilityType
They type of capability you’d like to receive in the response.
Mandatory
SDLGetSystemCapabilityResponseClass Reference
Section Contents
• systemCapability
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLSystemCapabilityType _Nonnull systemCapabilityType;
SWIFT
var systemCapabilityType: SDLSystemCapabilityType { get set }
Overview
Undocumented
systemCapability
Undocumented
SDLGetVehicleData Class Reference
Section Contents
• -
initWithAccelerationPedalPosition:airbagStatus:beltStatus:bodyInformation:clusterModeStatus:deviceStatus:• gps
OBJECTIVE-C
@property (strong, nonatomic) SDLSystemCapability *systemCapability
SWIFT
var systemCapability: SDLSystemCapability { get set }
• speed• rpm• fuelLevel• fuelLevel_State• instantFuelConsumption• externalTemperature• vin• prndl• tirePressure• odometer• beltStatus• bodyInformation• deviceStatus• driverBraking• wiperStatus• headLampStatus• engineTorque• accPedalPosition• steeringWheelAngle• eCallInfo• airbagStatus• emergencyEvent• clusterModeStatus• myKey
Overview
Requests surrent values of specific published vehicle data items.
Function Group: Location, VehicleInfo and DrivingChara
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 2.0
See SDLSubscribeVehicleData SDLUnsubscribeVehicleData
-
initWithAccelerationPedalPosition:airbagStatus:beltStatus:bodyInformation:clu
Undocumented
OBJECTIVE-C
- (instancetype)initWithAccelerationPedalPosition:(BOOL)accelerationPedalPosition airbagStatus:(BOOL)airbagStatus beltStatus:(BOOL)beltStatus bodyInformation:(BOOL)bodyInformation clusterModeStatus:(BOOL)clusterModeStatus deviceStatus:(BOOL)deviceStatus driverBraking:(BOOL)driverBraking eCallInfo:(BOOL)eCallInfo emergencyEvent:(BOOL)emergencyEvent engineTorque:(BOOL)engineTorque externalTemperature:(BOOL)externalTemperature fuelLevel:(BOOL)fuelLevel fuelLevelState:(BOOL)fuelLevelState gps:(BOOL)gps headLampStatus:(BOOL)headLampStatus instantFuelConsumption:(BOOL)instantFuelConsumption myKey:(BOOL)myKey odometer:(BOOL)odometer prndl:(BOOL)prndl rpm:(BOOL)rpm speed:(BOOL)speed steeringWheelAngle:(BOOL)steeringWheelAngle tirePressure:(BOOL)tirePressure vin:(BOOL)vin wiperStatus:(BOOL)wiperStatus;
SWIFT
init(accelerationPedalPosition: Bool, airbagStatus: Bool, beltStatus: Bool, bodyInformation: Bool, clusterModeStatus: Bool, deviceStatus: Bool, driverBraking: Bool, eCallInfo: Bool, emergencyEvent: Bool, engineTorque: Bool, externalTemperature: Bool, fuelLevel: Bool, fuelLevelState: Bool, gps: Bool, headLampStatus: Bool, instantFuelConsumption: Bool, myKey: Bool, odometer: Bool, prndl: Bool, rpm: Bool, speed: Bool, steeringWheelAngle: Bool, tirePressure: Bool, vin: Bool, wiperStatus: Bool)
gps
@abstract A boolean value. If true, requests Gps data
speed
@abstract A boolean value. If true, requests speed data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *gps;
SWIFT
var gps: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *speed;
rpm
@abstract A boolean value. If true, requests rpm data
fuelLevel
@abstract A boolean value. If true, requests FuelLevel data
SWIFT
var speed: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *rpm;
SWIFT
var rpm: (NSNumber & SDLBool)? { get set }
fuelLevel_State
@abstract A boolean value. If true, requests fuelLevel_State data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *fuelLevel;
SWIFT
var fuelLevel: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *fuelLevel_State;
SWIFT
var fuelLevel_State: (NSNumber & SDLBool)? { get set }
instantFuelConsumption
@abstract A boolean value. If true, requests instantFuelConsumption data
externalTemperature
@abstract A boolean value. If true, requests externalTemperature data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *instantFuelConsumption;
SWIFT
var instantFuelConsumption: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *externalTemperature;
vin
@abstract A boolean value. If true, requests Vehicle Identification Number
prndl
@abstract A boolean value. If true, requests Currently selected gear data
SWIFT
var externalTemperature: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *vin;
SWIFT
var vin: (NSNumber & SDLBool)? { get set }
tirePressure
@abstract A boolean value. If true, requests tire pressure status data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *prndl;
SWIFT
var prndl: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *tirePressure;
SWIFT
var tirePressure: (NSNumber & SDLBool)? { get set }
odometer
@abstract A boolean value. If true, requests odometer data
beltStatus
@abstract A boolean value. If true, requests belt Status data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *odometer;
SWIFT
var odometer: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *beltStatus;
bodyInformation
@abstract A boolean value. If true, requests body Information data
deviceStatus
@abstract A boolean value. If true, requests device Status data
SWIFT
var beltStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *bodyInformation;
SWIFT
var bodyInformation: (NSNumber & SDLBool)? { get set }
driverBraking
@abstract A boolean value. If true, requests driver Braking data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *deviceStatus;
SWIFT
var deviceStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *driverBraking;
SWIFT
var driverBraking: (NSNumber & SDLBool)? { get set }
wiperStatus
@abstract A boolean value. If true, requests wiper Status data
headLampStatus
@abstract A boolean value. If true, requests Head Lamp Status data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *wiperStatus;
SWIFT
var wiperStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *headLampStatus;
engineTorque
@abstract A boolean value. If true, requests Engine Torque data
accPedalPosition
@abstract A boolean value. If true, means the accPedalPosition data has been
subscribed.
SWIFT
var headLampStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *engineTorque;
SWIFT
var engineTorque: (NSNumber & SDLBool)? { get set }
steeringWheelAngle
@abstract A boolean value. If true, means the steeringWheelAngle data has
been subscribed.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *accPedalPosition;
SWIFT
var accPedalPosition: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *steeringWheelAngle;
eCallInfo
Undocumented
airbagStatus
Undocumented
SWIFT
var steeringWheelAngle: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *eCallInfo
SWIFT
var eCallInfo: (NSNumber & SDLBool)? { get set }
emergencyEvent
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *airbagStatus
SWIFT
var airbagStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *emergencyEvent
SWIFT
var emergencyEvent: (NSNumber & SDLBool)? { get set }
clusterModeStatus
Undocumented
myKey
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *clusterModeStatus
SWIFT
var clusterModeStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *myKey
SDLGetVehicleDataResponse ClassReference
Section Contents
• gps• speed• rpm• fuelLevel• fuelLevel_State• instantFuelConsumption• externalTemperature• vin• prndl• tirePressure• odometer• beltStatus• bodyInformation• deviceStatus• driverBraking• wiperStatus• headLampStatus• engineTorque• accPedalPosition
SWIFT
var myKey: (NSNumber & SDLBool)? { get set }
• steeringWheelAngle• eCallInfo• airbagStatus• emergencyEvent• clusterModeStatus• myKey
Overview
Get Vehicle Data Response is sent, when SDLGetVehicleData has been called
Since SmartDeviceLink 2.0
gps
@abstract A SDLGPSData* value. See GPSData.
speed
@abstract The vehicle speed in kilometers per hour.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLGPSData *gps;
SWIFT
var gps: SDLGPSData? { get set }
rpm
@abstract The number of revolutions per minute of the engine.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *speed;
SWIFT
var speed: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *rpm;
SWIFT
var rpm: (NSNumber & SDLInt)? { get set }
fuelLevel
@abstract The fuel level in the tank (percentage)
fuelLevel_State
@abstract A SDLComponentVolumeStatus* value. The fuel level state.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *fuelLevel;
SWIFT
var fuelLevel: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLComponentVolumeStatus fuelLevel_State;
instantFuelConsumption
@abstract The instantaneous fuel consumption in microlitres.
externalTemperature
@abstract The external temperature in degrees celsius.
SWIFT
var fuelLevel_State: SDLComponentVolumeStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *instantFuelConsumption;
SWIFT
var instantFuelConsumption: (NSNumber & SDLFloat)? { get set }
vin
@abstract The Vehicle Identification Number
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *externalTemperature;
SWIFT
var externalTemperature: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *vin;
SWIFT
var vin: String? { get set }
prndl
@abstract See PRNDL.
tirePressure
@abstract A SDLTireStatus* value. See TireStatus.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLPRNDL prndl;
SWIFT
var prndl: SDLPRNDL? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLTireStatus *tirePressure;
odometer
@abstract Odometer reading in km.
beltStatus
@abstract A SDLBeltStatus* value. The status of the seat belts.
SWIFT
var tirePressure: SDLTireStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *odometer;
SWIFT
var odometer: (NSNumber & SDLInt)? { get set }
bodyInformation
@abstract A SDLBodyInformation* value. The body information including power
modes.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLBeltStatus *beltStatus;
SWIFT
var beltStatus: SDLBeltStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLBodyInformation *bodyInformation;
deviceStatus
@abstract A SDLDeviceStatus* value. The device status including signal and
battery strength.
driverBraking
@abstract A SDLVehicleDataResult* value. The status of the brake pedal.
SWIFT
var bodyInformation: SDLBodyInformation? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLDeviceStatus *deviceStatus;
SWIFT
var deviceStatus: SDLDeviceStatus? { get set }
wiperStatus
@abstract A SDLWiperStatus* value. The status of the wipers.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataEventStatus driverBraking;
SWIFT
var driverBraking: SDLVehicleDataEventStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLWiperStatus wiperStatus;
SWIFT
var wiperStatus: SDLWiperStatus? { get set }
headLampStatus
@abstract A SDLHeadLampStatus* value. Status of the head lamps.
engineTorque
@abstract Torque value for engine (in Nm) on non-diesel variants.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLHeadLampStatus *headLampStatus;
SWIFT
var headLampStatus: SDLHeadLampStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *engineTorque;
accPedalPosition
@abstract Accelerator pedal position (percentage depressed)
steeringWheelAngle
@abstract Current angle of the steering wheel (in deg)
SWIFT
var engineTorque: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *accPedalPosition;
SWIFT
var accPedalPosition: (NSNumber & SDLFloat)? { get set }
eCallInfo
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *steeringWheelAngle;
SWIFT
var steeringWheelAngle: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLECallInfo *eCallInfo
SWIFT
var eCallInfo: SDLECallInfo? { get set }
airbagStatus
Undocumented
emergencyEvent
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLAirbagStatus *airbagStatus
SWIFT
var airbagStatus: SDLAirbagStatus? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLEmergencyEvent *emergencyEvent
clusterModeStatus
Undocumented
myKey
Undocumented
SWIFT
var emergencyEvent: SDLEmergencyEvent? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLClusterModeStatus *clusterModeStatus
SWIFT
var clusterModeStatus: SDLClusterModeStatus? { get set }
SDLHMICapabilities Class Reference
Section Contents
• navigation• phoneCall• videoStreaming
Overview
Undocumented
navigation
Availability of built in Nav. True: Available, False: Not Available
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLMyKey *myKey
SWIFT
var myKey: SDLMyKey? { get set }
Boolean value. Optional.
phoneCall
Availability of built in phone. True: Available, False: Not Available
Boolean value. Optional.
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSNumber<SDLBool> *navigation;
SWIFT
@NSCopying var navigation: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSNumber<SDLBool> *phoneCall;
videoStreaming
Availability of built in video streaming. True: Available, False: Not Available
Boolean value. Optional.
SWIFT
@NSCopying var phoneCall: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSNumber<SDLBool> *videoStreaming;
SWIFT
@NSCopying var videoStreaming: (NSNumber & SDLBool)? { get set }
SDLHMIPermissions Class Reference
Section Contents
• allowed• userDisallowed
Overview
Defining sets of HMI levels, which are permitted or prohibited for a given RPC.
@since SDL 2.0
allowed
@abstract a set of all HMI levels that are permitted for this given RPC
SeeSDLHMILevel Required, Array of SDLHMILevel, Array size 0 - 100
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLHMILevel> *_Nonnull allowed;
userDisallowed
@abstract a set of all HMI levels that are prohibited for this given RPC
SeeSDLHMILevel Required, Array of SDLHMILevel, Array size 0 - 100
SWIFT
var allowed: [SDLHMILevel] { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLHMILevel> *_Nonnull userDisallowed;
SWIFT
var userDisallowed: [SDLHMILevel] { get set }
SDLHapticRect Class Reference
Section Contents
• -initWithId:rect:• id• rect
Overview
Defines spatial for each user control object for video streaming application
-initWithId:rect:
Undocumented
OBJECTIVE-C
- (instancetype)initWithId:(UInt32)id rect:(SDLRectangle *)rect;
SWIFT
init(id: UInt32, rect: SDLRectangle)
id
A user control spatial identifier Required, Integer, 0 - 2,000,000,000
rect
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLUInt> *_Nonnull id;
SWIFT
var id: NSNumber & SDLUInt { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLRectangle *rect
SDLHeadLampStatus Class Reference
Section Contents
• lowBeamsOn• highBeamsOn• ambientLightSensorStatus
Overview
Status of the head lamps
lowBeamsOn
@abstract A boolean value. Status of the low beam lamps.
SWIFT
var rect: SDLRectangle { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull lowBeamsOn;
highBeamsOn
@abstract A boolean value. Status of the high beam lamps.
ambientLightSensorStatus
Undocumented
SWIFT
var lowBeamsOn: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull highBeamsOn;
SWIFT
var highBeamsOn: NSNumber & SDLBool { get set }
SDLIAPTransport Class Reference
Section Contents
• controlSession• session
Overview
Undocumented
controlSession
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLAmbientLightStatus ambientLightSensorStatus
SWIFT
var ambientLightSensorStatus: SDLAmbientLightStatus? { get set }
session
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLIAPSession *controlSession
SWIFT
var controlSession: SDLIAPSession? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLIAPSession *session
SWIFT
var session: SDLIAPSession? { get set }
SDLImage Class Reference
Section Contents
• -initWithName:ofType:• value• imageType
Overview
Specifies, which image shall be used, e.g. in SDLAlerts or on SDLSoftbuttons
provided the display supports it.
@since SDL 2.0
-initWithName:ofType:
Undocumented
OBJECTIVE-C
- (instancetype)initWithName:(NSString *)name ofType:(SDLImageType)imageType;
value
@abstract The static hex icon value or the binary image file name identifier
(sent by SDLPutFile)
Required, max length = 65535
imageType
@abstract Describes, whether it is a static or dynamic image
Required
SWIFT
init(name: String, ofType imageType: SDLImageType)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull value;
SWIFT
var value: String { get set }
SDLImageField Class Reference
Section Contents
• name• imageTypeSupported• imageResolution
Overview
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLImageType _Nonnull imageType;
SWIFT
var imageType: SDLImageType { get set }
name
Undocumented
imageTypeSupported
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLImageFieldName name
SWIFT
var name: SDLImageFieldName { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSArray<SDLFileType> *imageTypeSupported
imageResolution
Undocumented
SWIFT
var imageTypeSupported: [SDLFileType] { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLImageResolution *imageResolution
SWIFT
var imageResolution: SDLImageResolution? { get set }
SDLImageResolution Class Reference
Section Contents
• resolutionWidth• resolutionHeight• -initWithWidth:height:
Overview
Undocumented
resolutionWidth
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *resolutionWidth
SWIFT
var resolutionWidth: NSNumber & SDLInt { get set }
resolutionHeight
Undocumented
-initWithWidth:height:
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *resolutionHeight
SWIFT
var resolutionHeight: NSNumber & SDLInt { get set }
OBJECTIVE-C
- (instancetype)initWithWidth:(uint16_t)width height:(uint16_t)height;
SDLKeyboardProperties Class Reference
Section Contents
• -
initWithLanguage:layout:keypressMode:limitedCharacterList:autoCompleteText:• language• keyboardLayout• keypressMode• limitedCharacterList• autoCompleteText
Overview
Undocumented
-
initWithLanguage:layout:keypressMode:limitedCharacterList:autoCompleteText
Undocumented
SWIFT
init(width: UInt16, height: UInt16)
language
Undocumented
OBJECTIVE-C
- (instancetype)initWithLanguage:(nullable SDLLanguage)language layout:(nullable SDLKeyboardLayout)layout keypressMode:(nullable SDLKeypressMode)keypressMode limitedCharacterList:(nullable NSArray<NSString *> *)limitedCharacterList autoCompleteText:(nullable NSString *)autoCompleteText;
SWIFT
init(language: SDLLanguage?, layout: SDLKeyboardLayout?, keypressMode: SDLKeypressMode?, limitedCharacterList: [String]?, autoCompleteText: String?)
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLLanguage language
keyboardLayout
Undocumented
keypressMode
Undocumented
SWIFT
var language: SDLLanguage? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLKeyboardLayout keyboardLayout
SWIFT
var keyboardLayout: SDLKeyboardLayout? { get set }
limitedCharacterList
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLKeypressMode keypressMode
SWIFT
var keypressMode: SDLKeypressMode? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<NSString *> *limitedCharacterList
SWIFT
var limitedCharacterList: [String]? { get set }
autoCompleteText
Undocumented
SDLLifecycleConfiguration ClassReference
Section Contents
• -init• +defaultConfigurationWithAppName:appId:• +debugConfigurationWithAppName:appId:ipAddress:port:• tcpDebugMode• tcpDebugIPAddress• tcpDebugPort
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *autoCompleteText
SWIFT
var autoCompleteText: String? { get set }
• appName• appId• resumeHash• isMedia• appType• language• languagesSupported• appIcon• shortAppName• ttsName• voiceRecognitionCommandNames
Overview
Configuration options for SDLManager
-init
Undocumented
+defaultConfigurationWithAppName:appId:
A production configuration that runs using IAP. Additional functionality should
be customized on the properties.
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
appName
The name of the app.
appId
The appId to be used. This should be registered with the radio’s
manufacturer.
OBJECTIVE-C
+ (nonnull SDLLifecycleConfiguration *)defaultConfigurationWithAppName:(nonnull NSString *)appName appId:(nonnull NSString *)appId;
SWIFT
/*not inherited*/ init(appName: String, appId: String)
PARAMETERS
The lifecycle configuration
+debugConfigurationWithAppName:appId:ipAddress:port:
A debug configuration that runs using TCP. Additional functionality should be
customized on the properties.
RETURN VALUE
OBJECTIVE-C
+ (nonnull SDLLifecycleConfiguration *)debugConfigurationWithAppName:(nonnull NSString *)appName appId:(nonnull NSString *)appId ipAddress:(nonnull NSString *)ipAddress port:(UInt16)port;
SWIFT
/*not inherited*/ init(appName: String, appId: String, ipAddress: String, port: UInt16)
appName
The name of the app.
appId
The appId to be used. This should be registered with the radio’s
manufacturer.
ipAddress
The ip address of the server to connect to
port
The port of the server to connect to
The lifecycle configuration
tcpDebugMode
Whether or not debug mode is enabled
PARAMETERS
RETURN VALUE
tcpDebugIPAddress
The ip address at which the library will look for a server
OBJECTIVE-C
@property (readonly, assign, nonatomic) BOOL tcpDebugMode;
SWIFT
var tcpDebugMode: Bool { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic, null_resettable) NSString *tcpDebugIPAddress;
SWIFT
var tcpDebugIPAddress: String! { get }
tcpDebugPort
The port at which the library will look for a server
appName
The full name of the app
OBJECTIVE-C
@property (readonly, assign, nonatomic) UInt16 tcpDebugPort;
SWIFT
var tcpDebugPort: UInt16 { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSString *_Nonnull appName;
appId
The app id. This must be the same as the app id received from the SDL
developer portal or OEM.
resumeHash
A hash id which should be passed to the remote system in the
RegisterAppInterface
SWIFT
var appName: String { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSString *_Nonnull appId;
SWIFT
var appId: String { get }
isMedia
This is an automatically set based on the app type
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *resumeHash;
SWIFT
var resumeHash: String? { get set }
OBJECTIVE-C
@property (readonly, assign, nonatomic) BOOL isMedia;
SWIFT
var isMedia: Bool { get }
appType
The application type
language
The default language to use
OBJECTIVE-C
@property (readwrite, strong, nonatomic, null_resettable) SDLAppHMIType appType;
SWIFT
var appType: SDLAppHMIType! { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull language;
languagesSupported
An array of all the supported languages
appIcon
The application icon to be used on an app launching screen
SWIFT
var language: SDLLanguage { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLLanguage> *_Nonnull languagesSupported;
SWIFT
var languagesSupported: [SDLLanguage] { get set }
shortAppName
An abbrevited application name that will be used on the app launching screen if
the full one would be truncated
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLFile *appIcon;
SWIFT
var appIcon: SDLFile? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *shortAppName;
SWIFT
var shortAppName: String? { get set }
ttsName
A Text to Speech String for voice recognition of the mobile application name.
voiceRecognitionCommandNames
Additional voice recognition commands. May not interfere with any other app
name or global commands.
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSArray<SDLTTSChunk *> *ttsName;
SWIFT
var ttsName: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSArray<NSString *> *voiceRecognitionCommandNames;
SDLListFilesResponse Class Reference
Section Contents
• filenames• spaceAvailable
Overview
SDLListFilesResponse is sent, when SDLListFiles has been called
Since SmartDeviceLink 2.0
filenames
Undocumented
SWIFT
var voiceRecognitionCommandNames: [String]? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<NSString *> *filenames
spaceAvailable
Undocumented
SWIFT
var filenames: [String]? { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *spaceAvailable
SWIFT
var spaceAvailable: NSNumber & SDLInt { get set }
SDLLocationCoordinate Class Reference
Section Contents
• latitudeDegrees• longitudeDegrees
Overview
Undocumented
latitudeDegrees
@abstract Latitude of the location
Required, Double -90 - 90
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLFloat> *_Nonnull latitudeDegrees;
SWIFT
@NSCopying var latitudeDegrees: NSNumber & SDLFloat { get set }
longitudeDegrees
@abstract Longitude of the location
Required, Double -180 - 180
SDLLocationDetails Class Reference
Section Contents
• coordinate• locationName• addressLines• locationDescription• phoneNumber
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSNumber<SDLFloat> *_Nonnull longitudeDegrees;
SWIFT
@NSCopying var longitudeDegrees: NSNumber & SDLFloat { get set }
• locationImage• searchAddress
Overview
Undocumented
coordinate
@abstract Latitude/Longitude of the location
SeeSDLLocationCoordinate Optional
locationName
@abstract Name of location.
Optional, Max length 500 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLLocationCoordinate *coordinate;
SWIFT
var coordinate: SDLLocationCoordinate? { get set }
addressLines
@abstract Location address for display purposes only.
Optional, Array of Strings, Array length 0 - 4, Max String length 500
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *locationName;
SWIFT
var locationName: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSArray<NSString *> *addressLines;
locationDescription
@abstract Description intended location / establishment.
Optional, Max length 500 chars
phoneNumber
@abstract Phone number of location / establishment.
Optional, Max length 500 chars
SWIFT
var addressLines: [String]? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *locationDescription;
SWIFT
var locationDescription: String? { get set }
locationImage
@abstract Image / icon of intended location.
SeeSDLImage Optional
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *phoneNumber;
SWIFT
var phoneNumber: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImage *locationImage;
searchAddress
@abstract Address to be used by navigation engines for search.
SeeSDLOASISAddress Optional
SWIFT
var locationImage: SDLImage? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLOasisAddress *searchAddress;
SWIFT
var searchAddress: SDLOasisAddress? { get set }
SDLLockScreenConfiguration ClassReference
Section Contents
• showInOptionalState• enableAutomaticLockScreen• backgroundColor• appIcon• customViewController• -init• +disabledConfiguration• +enabledConfiguration• +enabledConfigurationWithAppIcon:backgroundColor:• +enabledConfigurationWithViewController:
Overview
Undocumented
showInOptionalState
Whether or not the lock screen should be shown in the “lock screen optional”
state. Defaults to ‘NO’.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) BOOL showInOptionalState;
enableAutomaticLockScreen
If YES, the lock screen should be managed by SDL and automatically engage
when necessary. If NO, then the lock screen will never be engaged.
backgroundColor
The background color of the lock screen. This could be a branding color, or
leave at the default for a dark blue-gray.
SWIFT
var showInOptionalState: Bool { get set }
OBJECTIVE-C
@property (readonly, assign, nonatomic) BOOL enableAutomaticLockScreen;
SWIFT
var enableAutomaticLockScreen: Bool { get }
appIcon
Your app icon as it will appear on the lock screen.
OBJECTIVE-C
@property (readonly, copy, nonatomic) UIColor *_Nonnull backgroundColor;
SWIFT
@NSCopying var backgroundColor: UIColor { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic, nullable) UIImage *appIcon;
SWIFT
@NSCopying var appIcon: UIImage? { get }
customViewController
A custom view controller that the lock screen will manage the presentation of.
-init
Undocumented
OBJECTIVE-C
@property (readonly, strong, nonatomic, nullable) UIViewController *customViewController;
SWIFT
var customViewController: UIViewController? { get }
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
+disabledConfiguration
Use this configuration if you wish to manage a lock screen yourself. This may
be useful if the automatic presentation feature of SDLLockScreenManager is
failing for some reason.
The configuration
+enabledConfiguration
Use this configuration for the basic default lock screen. A custom app icon will
not be used.
OBJECTIVE-C
+ (nonnull instancetype)disabledConfiguration;
SWIFT
class func disabled() -> Self
RETURN VALUE
The configuration
+enabledConfigurationWithAppIcon:backgroundColor:
Use this configuration to provide a custom lock screen icon and a custom
background color, or nil if you wish to use the default background color. This
will use the default lock screen layout.
OBJECTIVE-C
+ (nonnull instancetype)enabledConfiguration;
SWIFT
class func enabled() -> Self
RETURN VALUE
lockScreenAppIcon
The app icon to be shown on the lock screen
lockScreenBackgroundColor
The color of the lock screen background
OBJECTIVE-C
+ (nonnull instancetype)enabledConfigurationWithAppIcon:(nonnull UIImage *)lockScreenAppIcon backgroundColor:(nullable UIColor *)lockScreenBackgroundColor;
SWIFT
class func enabledConfiguration(withAppIcon lockScreenAppIcon: UIImage, backgroundColor lockScreenBackgroundColor: UIColor?) -> Self
PARAMETERS
The configuration
+enabledConfigurationWithViewController:
Use this configuration if you wish to provide your own view controller for the
lock screen. This view controller’s presentation and dismissal will still be
managed by the lock screen manager. Note that you may subclass
SDLLockScreenViewController and pass it here to continue to have the vehicle
icon set to your view controller by the manager.
RETURN VALUE
OBJECTIVE-C
+ (nonnull instancetype)enabledConfigurationWithViewController: (nonnull UIViewController *)viewController;
SWIFT
class func enabledConfiguration(with viewController: UIViewController) -> Self
viewController
The view controller to be managed
The configuration
SDLLockScreenViewController ClassReference
Section Contents
• appIcon• vehicleIcon• backgroundColor
Overview
Undocumented
appIcon
The app’s icon. This will be set by the lock screen configuration.
PARAMETERS
RETURN VALUE
vehicleIcon
The vehicle’s designated icon. This will be set by the lock screen manager when
it is notified that a lock screen icon has been downloaded.
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) UIImage *appIcon;
SWIFT
@NSCopying var appIcon: UIImage? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) UIImage *vehicleIcon;
SWIFT
@NSCopying var vehicleIcon: UIImage? { get set }
backgroundColor
The designated background color set in the lock screen configuration, or the
default SDL gray-blue.
SDLLogConfiguration Class Reference
Section Contents
• modules• targets• filters• formatType• asynchronous• errorsAsynchronous
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) UIColor *backgroundColor;
SWIFT
@NSCopying var backgroundColor: UIColor? { get set }
• globalLogLevel• +defaultConfiguration• +debugConfiguration
Overview
Undocumented
modules
Any custom logging modules used by the developer’s code. Defaults to none.
targets
Where the logs will attempt to output. Defaults to Console.
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSSet<SDLLogFileModule *> *_Nonnull modules;
SWIFT
var modules: Set<AnyHashable> { get set }
filters
What log filters will run over this session. Defaults to none.
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSSet<id<SDLLogTarget>> *_Nonnull targets;
SWIFT
var targets: Set<AnyHashable> { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic) NSSet<SDLLogFilter *> *_Nonnull filters;
SWIFT
var filters: Set<SDLLogFilter> { get set }
formatType
How detailed of logs will be output. Defaults to Default.
asynchronous
Whether or not logs will be run on a separate queue, asynchronously, allowing
the following code to run before the log completes. Or if it will occur
synchronously, which will prevent logs from being missed, but will slow down
surrounding code. Defaults to YES.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) SDLLogFormatType formatType;
SWIFT
var formatType: SDLLogFormatType { get set }
OBJECTIVE-C
@property (getter=isAsynchronous, assign, readwrite, nonatomic) BOOL asynchronous;
errorsAsynchronous
Whether or not error logs will be dispatched to loggers asynchronously. Defaults
to NO.
globalLogLevel
Any modules that do not have an explicitly specified level will by default use
the global log level. Defaults to Error. Do not specify Default for this parameter.
SWIFT
var isAsynchronous: Bool { get set }
OBJECTIVE-C
@property (getter=areErrorsAsynchronous, assign, readwrite, nonatomic) BOOL errorsAsynchronous;
SWIFT
var areErrorsAsynchronous: Bool { get set }
+defaultConfiguration
A default logger for production. This sets the format type to Default, the log
level to Error, and only enables the ASL logger.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) SDLLogLevel globalLogLevel;
SWIFT
var globalLogLevel: SDLLogLevel { get set }
OBJECTIVE-C
+ (nonnull instancetype)defaultConfiguration;
SWIFT
class func `default`() -> Self
A default configuration that may be customized.
+debugConfiguration
A debug logger for use in development. This sets the format type to Detailed,
the log level to Debug, and enables the Console and ASL loggers.
A debug configuration that may be customized.
RETURN VALUE
OBJECTIVE-C
+ (nonnull instancetype)debugConfiguration;
SWIFT
class func debug() -> Self
RETURN VALUE
SDLLogFileModule Class Reference
Section Contents
• name• files• logLevel• -init• -initWithName:files:level:• -initWithName:files:• +moduleWithName:files:• -containsFile:
Overview
Undocumented
name
The name of the this module, e.g. “Transport”
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSString *_Nonnull name;
files
All of the files contained within this module. When a log is logged, the
__FILE__ (in Obj-C) or #file (in Swift) is automatically captured and checked
to see if any module has a file in this set that matches. If it does, it will be
logged using the module’s log level and the module’s name will be printed in
the formatted log.
SWIFT
var name: String { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSSet<NSString *> *_Nonnull files;
SWIFT
var files: Set<String> { get }
logLevel
The custom level of the log. This is SDLLogLevelDefault (whatever the current
global log level is) by default.
-init
This method is unavailable and may not be used.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) SDLLogLevel logLevel;
SWIFT
var logLevel: SDLLogLevel { get set }
OBJECTIVE-C
- (nonnull instancetype)init;
Always returns nil
-initWithName:files:level:
Returns an initialized SDLLogFileModule that contains a custom name, set of
files, and associated log level.
name
RETURN VALUE
OBJECTIVE-C
- (nonnull instancetype)initWithName:(nonnull NSString *)name files:(nonnull NSSet<NSString *> *)files level:(SDLLogLevel)level;
SWIFT
init(name: String, files: Set<String>, level: SDLLogLevel)
PARAMETERS
The name of this module. This will be used when printing a formatted
log for a file within this module e.g. “Transport”.
files
The files this module covers. This should correspond to a __FILE__ or
#file call for use when comparing a log to this module. Any log
originating in a file contained in this set will then use this module’s log
level and print the module name.
level
The custom logging level logs originating in files contained in this log
module will use. For example, if the global level is SDLLogLevelError
and this module is configured to SDLLogLevelVerbose , all logs
originating from files within this module will be logged, not merely error
logs.
An initialized SDLLogFileModule
-initWithName:files:
Returns an initialized SDLLogFileModule that contains a custom name and set
of files. The logging level is the same as the current global logging file by using
SDLLogLevelDefault .
RETURN VALUE
name
The name of this module. This will be used when printing a formatted
log for a file within this module e.g. “Transport”.
files
The files this module covers. This should correspond to a __FILE__ or
#file call for use when comparing a log to this module. Any log
originating in a file contained in this set will then use this module’s log
level and print the module name.
OBJECTIVE-C
- (nonnull instancetype)initWithName:(nonnull NSString *)name files:(nonnull NSSet<NSString *> *)files;
SWIFT
convenience init(name: String, files: Set<String>)
PARAMETERS
An initialized SDLLogFileModule
+moduleWithName:files:
Returns an initialized SDLLogFileModule that contains a custom name and set
of files. The logging level is the same as the current global logging file by using
SDLLogLevelDefault .
name
The name of this module. This will be used when printing a formatted
log for a file within this module e.g. “Transport”.
files
The files this module covers. This should correspond to a __FILE__ or
#file call for use when comparing a log to this module. Any log
RETURN VALUE
OBJECTIVE-C
+ (nonnull instancetype)moduleWithName:(nonnull NSString *)name files:(nonnull NSSet<NSString *> *)files;
PARAMETERS
originating in a file contained in this set will then use this module’s log
level and print the module name.
An initialized SDLLogFileModule
-containsFile:
Returns whether or not this module contains a given file.
fileName
RETURN VALUE
OBJECTIVE-C
- (BOOL)containsFile:(nonnull NSString *)fileName;
SWIFT
func containsFile(_ fileName: String) -> Bool
PARAMETERS
The file name to check
A BOOL, YES if this module contains the given file.
SDLLogFilter Class Reference
Section Contents
• filter• -init• -initWithCustomFilter:• +filterByDisallowingString:caseSensitive:• +filterByAllowingString:caseSensitive:• +filterByDisallowingRegex:• +filterByAllowingRegex:• +filterByDisallowingModules:• +filterByAllowingModules:• +filterByDisallowingFileNames:• +filterByAllowingFileNames:
Overview
Undocumented
filter
Undocumented
RETURN VALUE
-init
Undocumented
-initWithCustomFilter:
Create a new filter with a custom filter block. The filter block will take a log
model and return a BOOL of pass / fail.
OBJECTIVE-C
@property (strong, nonatomic, readonly) SDLLogFilterBlock filter
SWIFT
var filter: SDLLogFilterBlock { get }
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
filter
The custom filter to be used
An instance of SDLLogFilter
OBJECTIVE-C
- (nonnull instancetype)initWithCustomFilter:(nonnull SDLLogFilterBlock)filter;
SWIFT
init(customFilter filter: @escaping SDLLogFilterBlock)
PARAMETERS
RETURN VALUE
+filterByDisallowingString:caseSensitive:
Returns a filter that only allows logs not containing the passed string within
their message.
string
The string, which, if present in the message of the log, will prevent the
log from being logged.
caseSensitive
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByDisallowingString:(nonnull NSString *)string caseSensitive:(BOOL)caseSensitive;
SWIFT
/*not inherited*/ init(byDisallowingString string: String, caseSensitive: Bool)
PARAMETERS
Whether or not string should be checked as case sensitive against the
log’s message.
A filter that may be passed into the logConfiguration .
+filterByAllowingString:caseSensitive:
Returns a filter that only allows logs containing the passed string within their
message.
RETURN VALUE
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByAllowingString:(nonnull NSString *)string caseSensitive:(BOOL)caseSensitive;
SWIFT
/*not inherited*/ init(byAllowing string: String, caseSensitive: Bool)
string
The string, which, if present in the message of the log, will allow the log
to be logged.
caseSensitive
Whether or not string should be checked as case sensitive against the
log’s message.
A filter that may be passed into the logConfiguration .
+filterByDisallowingRegex:
Returns a filter that only allows logs not passing the passed regex against their
message.
PARAMETERS
RETURN VALUE
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByDisallowingRegex: (nonnull NSRegularExpression *)regex;
regex
The regex, which, if it matches the message of the log, will prevent the
log from being logged.
A filter that may be passed into the logConfiguration .
+filterByAllowingRegex:
Returns a filter that only allows logs passing the passed regex against their
message.
SWIFT
/*not inherited*/ init(byDisallowingRegex regex: NSRegularExpression)
PARAMETERS
RETURN VALUE
regex
The regex, which, if it matches the message of the log, will allow the
log to be logged.
A filter that may be passed into the logConfiguration .
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByAllowingRegex: (nonnull NSRegularExpression *)regex;
SWIFT
/*not inherited*/ init(byAllowingRegex regex: NSRegularExpression)
PARAMETERS
RETURN VALUE
+filterByDisallowingModules:
Returns a filter that only allows logs not within the specified file modules to be
logged.
modules
A set of module names. If any match, they will not be logged.
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByDisallowingModules: (nonnull NSSet<NSString *> *)modules;
SWIFT
/*not inherited*/ init(byDisallowingModules modules: Set<String>)
PARAMETERS
A filter that may be passed into the logConfiguration .
+filterByAllowingModules:
Returns a filter that only allows logs of the specified file modules to be logged.
modules
A set of module names. If any match, they will not be logged.
RETURN VALUE
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByAllowingModules: (nonnull NSSet<NSString *> *)modules;
SWIFT
/*not inherited*/ init(byAllowingModules modules: Set<String>)
PARAMETERS
A filter that may be passed into the logConfiguration .
+filterByDisallowingFileNames:
Returns a filter that only allows logs not within the specified files to be logged.
fileNames
If a log matches any of the passed files, the log will not be logged.
RETURN VALUE
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByDisallowingFileNames: (nonnull NSSet<NSString *> *)fileNames;
SWIFT
/*not inherited*/ init(byDisallowingFileNames fileNames: Set<String>)
PARAMETERS
A filter that may be passed into the logConfiguration .
+filterByAllowingFileNames:
Returns a filter that only allows logs within the specified files to be logged.
fileNames
If a log matches any of the passed files, the log will be logged.
RETURN VALUE
OBJECTIVE-C
+ (nonnull SDLLogFilter *)filterByAllowingFileNames: (nonnull NSSet<NSString *> *)fileNames;
SWIFT
/*not inherited*/ init(byAllowingFileNames fileNames: Set<String>)
PARAMETERS
A filter that may be passed into the logConfiguration .
SDLLogManager Class Reference
Section Contents
• modules• targets• filters• globalLogLevel• formatType• asynchronous• errorsAsynchronous• dateFormatter• logQueue• +sharedManager• +setConfiguration:• -setConfiguration:• +logWithLevel:timestamp:file:functionName:line:queue:formatMessage:• -logWithLevel:timestamp:file:functionName:line:queue:formatMessage:• +logWithLevel:timestamp:file:functionName:line:queue:message:• -logWithLevel:timestamp:file:functionName:line:queue:message:• +logBytes:direction:timestamp:file:functionName:line:queue:
RETURN VALUE
• -logBytes:direction:timestamp:file:functionName:line:queue:
Overview
This is the central manager of logging. A developer should not have to interact
with this class, it is exclusively used internally.
modules
Undocumented
targets
Undocumented
OBJECTIVE-C
@property (copy, nonatomic, readonly) NSSet<SDLLogFileModule *> *modules
SWIFT
var modules: Set<AnyHashable> { get }
filters
Undocumented
OBJECTIVE-C
@property (copy, nonatomic, readonly) NSSet<id<SDLLogTarget>> *targets
SWIFT
var targets: Set<AnyHashable> { get }
OBJECTIVE-C
@property (copy, nonatomic, readonly) NSSet<SDLLogFilter *> *filters
SWIFT
var filters: Set<AnyHashable> { get }
globalLogLevel
Any modules that do not have an explicitly specified level will by default use
this log level
formatType
Undocumented
OBJECTIVE-C
@property (readonly, assign, nonatomic) SDLLogLevel globalLogLevel;
SWIFT
var globalLogLevel: SDLLogLevel { get }
OBJECTIVE-C
@property (assign, nonatomic, readonly) SDLLogFormatType formatType
asynchronous
Undocumented
errorsAsynchronous
Undocumented
SWIFT
var formatType: SDLLogFormatType { get }
OBJECTIVE-C
@property (assign, nonatomic, readonly, getter=isAsynchronous) BOOL asynchronous
SWIFT
var isAsynchronous: Bool { get }
dateFormatter
Undocumented
OBJECTIVE-C
@property (assign, nonatomic, readonly, getter=areErrorsAsynchronous) BOOL errorsAsynchronous
SWIFT
var areErrorsAsynchronous: Bool { get }
OBJECTIVE-C
@property (class, strong, nonatomic, readonly) NSDateFormatter *dateFormatter
SWIFT
class var dateFormatter: DateFormatter { get }
logQueue
Undocumented
+sharedManager
Undocumented
OBJECTIVE-C
@property (class, assign, nonatomic, readonly) dispatch_queue_t logQueue
SWIFT
unowned(unsafe) class var logQueue: DispatchQueue { get }
OBJECTIVE-C
+ (SDLLogManager *)sharedManager;
+setConfiguration:
Sets a configuration to be used by the log manager’s sharedManager. This is
generally for internal use and you should set your configuration using
SDLManager’s startWithConfiguration: method.
configuration
SWIFT
class func shared() -> SDLLogManager
OBJECTIVE-C
+ (void)setConfiguration:(nonnull SDLLogConfiguration *)configuration;
SWIFT
class func setConfiguration(_ configuration: SDLLogConfiguration)
PARAMETERS
The configuration to be used.
-setConfiguration:
Sets a configuration to be used by the log manager. This is generally for
internal use and you should set your configuration using SDLManager’s
startWithConfiguration: method.
configuration
OBJECTIVE-C
- (void)setConfiguration:(nonnull SDLLogConfiguration *)configuration;
SWIFT
func setConfiguration(_ configuration: SDLLogConfiguration)
PARAMETERS
The configuration to be used.
+logWithLevel:timestamp:file:functionName:line:queue:formatMessage:
Log to the sharedManager’s active log targets. This is used internally to log. If
you want to create a log, you should use macros such as SDLLogD .
level
The level of the log
timestamp
The time the log was sent
file
The file the log originated from
OBJECTIVE-C
+ (void)logWithLevel:(SDLLogLevel)level timestamp:(nonnull NSDate *)timestamp file:(nonnull NSString *)file functionName:(nonnull NSString *)functionName line:(NSInteger)line queue:(nonnull NSString *)queueLabel formatMessage:(nonnull NSString *)message, ...;
PARAMETERS
functionName
The function the log originated from
line
The line the log originated from
queueLabel
The queue the log was sent from
message
The message of the log with a format
-
logWithLevel:timestamp:file:functionName:line:queue:formatMessage:
Log to this log manager’s active log targets. This is used internally to log. If you
want to create a log, you should use macros such as SDLLogD .
OBJECTIVE-C
- (void)logWithLevel:(SDLLogLevel)level timestamp:(nonnull NSDate *)timestamp file:(nonnull NSString *)file functionName:(nonnull NSString *)functionName line:(NSInteger)line queue:(nonnull NSString *)queueLabel formatMessage:(nonnull NSString *)message, ...;
level
The level of the log
timestamp
The time the log was sent
file
The file the log originated from
functionName
The function the log originated from
line
The line the log originated from
queueLabel
The queue the log was sent from
message
The message of the log with a format
PARAMETERS
+logWithLevel:timestamp:file:functionName:line:queue:message:
Log to this sharedManager’s active log targets. This is used internally to log. If
you want to create a log, you should use macros such as SDLLogD .
level
The level of the log
OBJECTIVE-C
+ (void)logWithLevel:(SDLLogLevel)level timestamp:(nonnull NSDate *)timestamp file:(nonnull NSString *)file functionName:(nonnull NSString *)functionName line:(NSInteger)line queue:(nonnull NSString *)queueLabel message:(nonnull NSString *)message;
SWIFT
class func log(with level: SDLLogLevel, timestamp: Date, file: String, functionName: String, line: Int, queue queueLabel: String, message: String)
PARAMETERS
timestamp
The time the log was sent
file
The file the log originated from
functionName
The function the log originated from
line
The line the log originated from
queueLabel
The queue the log was sent from
message
The message of the log
-
logWithLevel:timestamp:file:functionName:line:queue:message:
Log to this log manager’s active log targets. This is used internally to log. If you
want to create a log, you should use macros such as SDLLogD .
level
The level of the log
timestamp
The time the log was sent
OBJECTIVE-C
- (void)logWithLevel:(SDLLogLevel)level timestamp:(nonnull NSDate *)timestamp file:(nonnull NSString *)file functionName:(nonnull NSString *)functionName line:(NSInteger)line queue:(nonnull NSString *)queueLabel message:(nonnull NSString *)message;
SWIFT
func log(with level: SDLLogLevel, timestamp: Date, file: String, functionName: String, line: Int, queue queueLabel: String, message: String)
PARAMETERS
file
The file the log originated from
functionName
The function the log originated from
line
The line the log originated from
queueLabel
The queue the log was sent from
message
The message of the log
+logBytes:direction:timestamp:file:functionName:line:queue:
Log to this sharedManager’s active log targets. This is used internally to log.
data
The data to be logged
direction
Whether its transmit or receive data
OBJECTIVE-C
+ (void)logBytes:(nonnull NSData *)data direction:(SDLLogBytesDirection)direction timestamp:(nonnull NSDate *)timestamp file:(nonnull NSString *)file functionName:(nonnull NSString *)functionName line:(NSInteger)line queue:(nonnull NSString *)queueLabel;
SWIFT
class func logBytes(_ data: Data, direction: SDLLogBytesDirection, timestamp: Date, file: String, functionName: String, line: Int, queue queueLabel: String)
PARAMETERS
timestamp
The time the log was sent
file
The file the log originated from
functionName
The function the log originated from
line
The line the log originated from
queueLabel
The queue the log was sent from
-
logBytes:direction:timestamp:file:functionName:line:queue:
Log to this manager’s active log targets. This is used internally to log.
data
The data to be logged
direction
Whether its transmit or receive data
OBJECTIVE-C
- (void)logBytes:(nonnull NSData *)data direction:(SDLLogBytesDirection)direction timestamp:(nonnull NSDate *)timestamp file:(nonnull NSString *)file functionName:(nonnull NSString *)functionName line:(NSInteger)line queue:(nonnull NSString *)queueLabel;
SWIFT
func logBytes(_ data: Data, direction: SDLLogBytesDirection, timestamp: Date, file: String, functionName: String, line: Int, queue queueLabel: String)
PARAMETERS
timestamp
The time the log was sent
file
The file the log originated from
functionName
The function the log originated from
line
The line the log originated from
queueLabel
The queue the log was sent from
SDLManager Class Reference
Section Contents
• configuration• hmiLevel• audioStreamingState• systemContext• fileManager• permissionManager
• streamManager• registerResponse• delegate• proxy• -initWithConfiguration:delegate:• -startWithReadyHandler:• -stop• -sendRequest:• -sendRequest:withResponseHandler:
Overview
Undocumented
configuration
The configuration the manager was set up with.
OBJECTIVE-C
@property (readonly, copy, nonatomic) SDLConfiguration *_Nonnull configuration;
SWIFT
@NSCopying var configuration: SDLConfiguration { get }
hmiLevel
The current HMI level of the running app.
audioStreamingState
The current audio streaming state of the running app.
OBJECTIVE-C
@property (readonly, copy, nonatomic, nullable) SDLHMILevel hmiLevel;
SWIFT
var hmiLevel: SDLHMILevel? { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) SDLAudioStreamingState _Nonnull audioStreamingState;
systemContext
The current system context of the running app.
fileManager
The file manager to be used by the running app.
SWIFT
var audioStreamingState: SDLAudioStreamingState { get }
OBJECTIVE-C
@property (readonly, copy, nonatomic) SDLSystemContext _Nonnull systemContext;
SWIFT
var systemContext: SDLSystemContext { get }
permissionManager
The permission manager monitoring RPC permissions.
OBJECTIVE-C
@property (readonly, strong, nonatomic) SDLFileManager *_Nonnull fileManager;
SWIFT
var fileManager: SDLFileManager { get }
OBJECTIVE-C
@property (readonly, strong, nonatomic) SDLPermissionManager *_Nonnull permissionManager;
SWIFT
var permissionManager: SDLPermissionManager { get }
streamManager
The streaming media manager to be used for starting video sessions.
registerResponse
The response of a register call after it has been received.
OBJECTIVE-C
@property (readonly, strong, nonatomic, nullable) SDLStreamingMediaManager *streamManager;
SWIFT
var streamManager: SDLStreamingMediaManager? { get }
OBJECTIVE-C
@property (readonly, strong, nonatomic, nullable) SDLRegisterAppInterfaceResponse *registerResponse;
delegate
The manager’s delegate.
proxy
Undocumented
SWIFT
var registerResponse: SDLRegisterAppInterfaceResponse? { get }
OBJECTIVE-C
@property (readwrite, nonatomic, nullable) id<SDLManagerDelegate> delegate;
OBJECTIVE-C
@property (strong, nonatomic, readonly, nullable) SDLProxy *proxy
-initWithConfiguration:delegate:
Initialize the manager with a configuration. Call startWithHandler to begin
waiting for a connection.
configuration
Your app’s unique configuration for setup.
delegate
An optional delegate to be notified of hmi level changes and startup
and shutdown. It is recommended that you implement this.
SWIFT
var proxy: SDLProxy? { get }
OBJECTIVE-C
- (nonnull instancetype)initWithConfiguration:(nonnull SDLConfiguration *)configuration delegate:(nullable id<SDLManagerDelegate>)delegate;
PARAMETERS
An instance of SDLManager
-startWithReadyHandler:
Start the manager, which will tell it to start looking for a connection. Once one
does, it will automatically run the setup process and call the readyBlock when
done.
readyHandler
RETURN VALUE
OBJECTIVE-C
- (void)startWithReadyHandler:(nonnull SDLManagerReadyBlock)readyHandler;
SWIFT
func start(readyHandler: @escaping SDLManagerReadyBlock)
PARAMETERS
The block called when the manager is ready to be used or an error
occurs while attempting to become ready.
-stop
Stop the manager, it will disconnect if needed and no longer look for a
connection. You probably don’t need to call this method ever.
If you do call this method, you must wait for SDLManagerDelegate’s
managerDidDisconnect callback to call startWithReadyHandler:.
-sendRequest:
Send an RPC request and don’t bother with the response or error. If you need
the response or error, call sendRequest:withCompletionHandler: instead.
OBJECTIVE-C
- (void)stop;
SWIFT
func stop()
request
The RPC request to send
-sendRequest:withResponseHandler:
Send an RPC request and set a completion handler that will be called with the
response when the response returns.
OBJECTIVE-C
- (void)sendRequest:(nonnull SDLRPCRequest *)request;
SWIFT
func send(_ request: SDLRPCRequest)
PARAMETERS
request
The RPC request to send
handler
The handler that will be called when the response returns
OBJECTIVE-C
- (void)sendRequest:(nonnull SDLRPCRequest *)request withResponseHandler:(nullable SDLResponseHandler)handler;
SWIFT
func send(request: SDLRPCRequest, responseHandler handler: SDLResponseHandler? = nil)
PARAMETERS
SDLMenuParams Class Reference
Section Contents
• -initWithMenuName:• -initWithMenuName:parentId:position:• parentID• position• menuName
Overview
Used when adding a sub menu to an application menu or existing sub menu.
@since SDL 1.0
-initWithMenuName:
Undocumented
OBJECTIVE-C
- (instancetype)initWithMenuName:(NSString *)menuName;
-initWithMenuName:parentId:position:
Undocumented
parentID
@abstract the unique ID of an existing submenu to which a command will be
added @discussion If this element is not provided, the command will be added
to the top level of the Command Menu.
Optional, Integer, 0 - 2,000,000,000
SWIFT
init(menuName: String)
OBJECTIVE-C
- (instancetype)initWithMenuName:(NSString *)menuName parentId:(UInt32)parentId position:(UInt16)position;
SWIFT
init(menuName: String, parentId: UInt32, position: UInt16)
position
@abstract The position within the items of the parent Command Menu
@discussion 0 will insert at the front, 1 will insert after the first existing
element, etc.
Position of any submenu will always be located before the return and exit
options.
• If position is greater or equal than the number of items in the parent
Command Menu, the sub menu will be appended to the end of that
Command Menu.• If this element is omitted, the entry will be added at the end of the parent
menu.
Optional, Integer, 0 - 1000
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *parentID;
SWIFT
var parentID: (NSNumber & SDLInt)? { get set }
menuName
@abstract the menu name which appears in menu, representing this command
Required, max length 500 characters
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *position;
SWIFT
var position: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull menuName;
SDLMetadataTags Class Reference
Section Contents
• -initWithTextFieldTypes:mainField2:• -initWithTextFieldTypes:mainField2:mainField3:mainField4:• mainField1• mainField2• mainField3• mainField4
Overview
Undocumented
-initWithTextFieldTypes:mainField2:
@abstract Constructs a newly allocated SDLMetadataType object with NSArrays
SWIFT
var menuName: String { get set }
-
initWithTextFieldTypes:mainField2:mainField3:mainField4:
Undocumented
OBJECTIVE-C
- (nonnull instancetype)initWithTextFieldTypes:(nullable NSArray<SDLMetadataType> *)mainField1 mainField2:(nullable NSArray<SDLMetadataType> *)mainField2;
SWIFT
init(textFieldTypes mainField1: [SDLMetadataType]?, mainField2: [SDLMetadataType]?)
OBJECTIVE-C
- (instancetype)initWithTextFieldTypes:(nullable NSArray<SDLMetadataType> *)mainField1 mainField2:(nullable NSArray<SDLMetadataType> *)mainField2 mainField3:(nullable NSArray<SDLMetadataType> *)mainField3 mainField4:(nullable NSArray<SDLMetadataType> *)mainField4;
mainField1
@abstract The type of data contained in the “mainField1” text field, Optional.
minsize= 0
maxsize= 5
SWIFT
init(textFieldTypes mainField1: [SDLMetadataType]?, mainField2: [SDLMetadataType]?, mainField3: [SDLMetadataType]?, mainField4: [SDLMetadataType]?)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLMetadataType> *mainField1;
SWIFT
var mainField1: [SDLMetadataType]? { get set }
mainField2
@abstract The type of data contained in the “mainField2” text field, Optional.
minsize= 0
maxsize= 5
mainField3
@abstract The type of data contained in the “mainField3” text field, Optional.
minsize= 0
maxsize= 5
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLMetadataType> *mainField2;
SWIFT
var mainField2: [SDLMetadataType]? { get set }
mainField4
@abstract The type of data contained in the “mainField4” text field, Optional.
minsize= 0
maxsize= 5
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLMetadataType> *mainField3;
SWIFT
var mainField3: [SDLMetadataType]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLMetadataType> *mainField4;
SDLModuleData Class Reference
Section Contents
• -initWithRadioControlData:• -initWithClimateControlData:• moduleType• radioControlData• climateControlData
Overview
Undocumented
-initWithRadioControlData:
Undocumented
SWIFT
var mainField4: [SDLMetadataType]? { get set }
-initWithClimateControlData:
Undocumented
OBJECTIVE-C
- (instancetype)initWithRadioControlData:(SDLRadioControlData *)radioControlData;
SWIFT
init(radioControlData: SDLRadioControlData)
OBJECTIVE-C
- (instancetype)initWithClimateControlData:(SDLClimateControlData *)climateControlData;
SWIFT
init(climateControlData: SDLClimateControlData)
moduleType
The moduleType indicates which type of data should be changed and identifies
which data object exists in this struct. For example, if the moduleType is
CLIMATE then a “climateControlData” should exist
radioControlData
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLModuleType _Nonnull moduleType;
SWIFT
var moduleType: SDLModuleType { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLRadioControlData *radioControlData
climateControlData
Undocumented
SWIFT
var radioControlData: SDLRadioControlData? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLClimateControlData *climateControlData
SWIFT
var climateControlData: SDLClimateControlData? { get set }
SDLMyKey Class Reference
Section Contents
• e911Override
Overview
Undocumented
e911Override
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataStatus e911Override
SWIFT
var e911Override: SDLVehicleDataStatus { get set }
SDLNavigationCapability ClassReference
Section Contents
• -initWithSendLocation:waypoints:• sendLocationEnabled• getWayPointsEnabled
Overview
Undocumented
-initWithSendLocation:waypoints:
Undocumented
OBJECTIVE-C
- (instancetype)initWithSendLocation:(BOOL)sendLocationEnabled waypoints:(BOOL)waypointsEnabled;
SWIFT
init(sendLocation sendLocationEnabled: Bool, waypoints waypointsEnabled: Bool)
sendLocationEnabled
Whether or not the SendLocation RPC is enabled. Boolean, optional
getWayPointsEnabled
Whether or not Waypoint related RPCs are enabled. Boolean, optional
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSNumber *sendLocationEnabled;
SWIFT
@NSCopying var sendLocationEnabled: NSNumber? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSNumber *getWayPointsEnabled;
SDLNotificationConstants ClassReference
Section Contents
• +allResponseNames• +allButtonEventNotifications
Overview
Undocumented
+allResponseNames
Undocumented
SWIFT
@NSCopying var getWayPointsEnabled: NSNumber? { get set }
OBJECTIVE-C
+ (NSArray<SDLNotificationName> *)allResponseNames;
+allButtonEventNotifications
Undocumented
SWIFT
class func allResponseNames() -> [NSNotification.Name]
OBJECTIVE-C
+ (NSArray<SDLNotificationName> *)allButtonEventNotifications;
SWIFT
class func allButtonEventNotifications() -> [NSNotification.Name]
SDLOasisAddress Class Reference
Section Contents
• -
initWithSubThoroughfare:thoroughfare:locality:administrativeArea:postalCode:countryCode:• -
initWithSubThoroughfare:thoroughfare:locality:administrativeArea:postalCode:countryCode:countryName:su• countryName• countryCode• postalCode• administrativeArea• subAdministrativeArea• locality• subLocality• thoroughfare• subThoroughfare
Overview
Undocumented
-
initWithSubThoroughfare:thoroughfare:locality:administrativeArea:postalCode:
Undocumented
-
initWithSubThoroughfare:thoroughfare:locality:administrativeArea:postalCode:
Undocumented
OBJECTIVE-C
- (instancetype)initWithSubThoroughfare:(nullable NSString *)subThoroughfare thoroughfare:(nullable NSString *)thoroughfare locality:(nullable NSString *)locality administrativeArea:(nullable NSString *)administrativeArea postalCode:(nullable NSString *)postalCode countryCode:(nullable NSString *)countryCode;
SWIFT
init(subThoroughfare: String?, thoroughfare: String?, locality: String?, administrativeArea: String?, postalCode: String?, countryCode: String?)
countryName
@abstract Name of the country (localized)
Optional, max length = 200
OBJECTIVE-C
- (instancetype)initWithSubThoroughfare:(nullable NSString *)subThoroughfare thoroughfare:(nullable NSString *)thoroughfare locality:(nullable NSString *)locality administrativeArea:(nullable NSString *)administrativeArea postalCode:(nullable NSString *)postalCode countryCode:(nullable NSString *)countryCode countryName:(nullable NSString *)countryName subAdministrativeArea:(nullable NSString *)subAdministrativeArea subLocality:(nullable NSString *)subLocality;
SWIFT
init(subThoroughfare: String?, thoroughfare: String?, locality: String?, administrativeArea: String?, postalCode: String?, countryCode: String?, countryName: String?, subAdministrativeArea: String?, subLocality: String?)
countryCode
@abstract countryCode of the country(ISO 3166-2)
Optional, max length = 200
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *countryName;
SWIFT
var countryName: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *countryCode;
postalCode
@abstract postalCode of location (PLZ, ZIP, PIN, CAP etc.)
Optional, max length = 200
administrativeArea
@abstract Portion of country (e.g. state)
Optional, max length = 200
SWIFT
var countryCode: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *postalCode;
SWIFT
var postalCode: String? { get set }
subAdministrativeArea
@abstract Portion of administrativeArea (e.g. county)
Optional, max length = 200
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *administrativeArea;
SWIFT
var administrativeArea: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *subAdministrativeArea;
locality
@abstract Hypernym for city/village
Optional, max length = 200
subLocality
@abstract Hypernym for district
Optional, max length = 200
SWIFT
var subAdministrativeArea: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *locality;
SWIFT
var locality: String? { get set }
thoroughfare
@abstract Hypernym for street, road etc.
Optional, max length = 200
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *subLocality;
SWIFT
var subLocality: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *thoroughfare;
subThoroughfare
@abstract Portion of thoroughfare (e.g. house number)
Optional, max length = 200
SWIFT
var thoroughfare: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *subThoroughfare;
SWIFT
var subThoroughfare: String? { get set }
SDLOnAppInterfaceUnregistered ClassReference
Section Contents
• reason
Overview
Notifies an application that its interface registration has been terminated. This
means that all SDL resources associated with the application are discarded,
including the Command Menu, Choice Sets, button subscriptions, etc.
For more information about SDL resources related to an interface registration,
see SDLRegisterAppInterface.
@since SDL 1.0
SeeSDLRegisterAppInterface
reason
@abstract The reason application’s interface was terminated
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLAppInterfaceUnregisteredReason _Nonnull reason;
SDLOnButtonEvent Class Reference
Section Contents
• buttonName• buttonEventMode• customButtonID
Overview
Notifies application that user has depressed or released a button to which the
application has subscribed.
Further information about button events and button-presses can be found at
SDLSubscribeButton.
HMI Status Requirements:
HMILevel:
◦ The application will receive SDLOnButtonEvent notifications for all
subscribed buttons when HMILevel is FULL.◦ The application will receive SDLOnButtonEvent notifications for
subscribed media buttons when HMILevel is LIMITED.◦ Media buttons include SEEKLEFT, SEEKRIGHT, TUNEUP, TUNEDOWN,
and PRESET_0-PRESET_9.
SWIFT
var reason: SDLAppInterfaceUnregisteredReason { get set }
◦ The application will not receive SDLOnButtonEvent notification when
HMILevel is BACKGROUND.
AudioStreamingState:
◦ Any
SystemContext:
◦ MAIN, VR. In MENU, only PRESET buttons. In VR, pressing any
subscribable button will cancel VR.
SeeSDLSubscribeButton @since SDL 1.0
buttonName
@abstract The name of the button
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonName _Nonnull buttonName;
SWIFT
var buttonName: SDLButtonName { get set }
buttonEventMode
@abstract Indicates whether this is an UP or DOWN event
customButtonID
@abstract If ButtonName is “CUSTOM_BUTTON”, this references the integer ID
passed by a custom button. (e.g. softButton ID)
@since SDL 2.0
Optional, Integer, 0 - 65536
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonEventMode _Nonnull buttonEventMode;
SWIFT
var buttonEventMode: SDLButtonEventMode { get set }
SDLOnButtonPress Class Reference
Section Contents
• buttonName• buttonPressMode• customButtonID
Overview
Notifies application of button press events for buttons to which the application
is subscribed. SDL supports two button press events defined as follows:
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *customButtonID;
SWIFT
var customButtonID: (NSNumber & SDLInt)? { get set }
• SHORT - Occurs when a button is depressed, then released within two
seconds. The event is considered to occur immediately after the button is
released.• LONG - Occurs when a button is depressed and held for two seconds or
more. The event is considered to occur immediately after the two second
threshold has been crossed, before the button is released
HMI Status Requirements:
HMILevel:
◦ The application will receive OnButtonPress notifications for all
subscribed buttons when HMILevel is FULL.◦ The application will receive OnButtonPress notifications for
subscribed media buttons when HMILevel is LIMITED.◦ Media buttons include SEEKLEFT, SEEKRIGHT, TUNEUP, TUNEDOWN,
and PRESET_0-PRESET_9.◦ The application will not receive OnButtonPress notification when
HMILevel is BACKGROUND or NONE.
AudioStreamingState:
◦ Any
SystemContext:
◦ MAIN, VR. In MENU, only PRESET buttons. In VR, pressing any
subscribable button will cancel VR.
SeeSDLSubscribeButton SeeSDLUnsubscribeButton @since SDL 1.0
buttonName
@abstract the button’s name
SeeSDLButtonName Required
buttonPressMode
@abstract Indicates whether this is a LONG or SHORT button press event
SeeSDLButtonPressMode Required
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonName _Nonnull buttonName;
SWIFT
var buttonName: SDLButtonName { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonPressMode _Nonnull buttonPressMode;
customButtonID
@abstract If ButtonName is “CUSTOM_BUTTON”, this references the integer ID
passed by a custom button. (e.g. softButton ID)
@since SDL 2.0
Optional, Integer 0 - 65536
SWIFT
var buttonPressMode: SDLButtonPressMode { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *customButtonID;
SWIFT
var customButtonID: (NSNumber & SDLInt)? { get set }
SDLOnCommand Class Reference
Section Contents
• cmdID• triggerSource
Overview
This is called when a command was selected via VR after pressing the PTT
button, or selected from the menu after pressing the MENU button.
Note: The sequence of SDLOnHMIStatus and SDLOnCommand notifications for
user-initiated interactions is indeterminate.
@since SDL 1.0
SeeSDLAddCommand SDLDeleteCommand SDLDeleteSubMenu
cmdID
@abstract The command ID of the command the user selected. This is the
command ID value provided by the application in the SDLAddCommand
operation that created the command.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull cmdID;
triggerSource
@abstract Indicates whether command was selected via voice or via a menu
selection (using the OK button).
SWIFT
var cmdID: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLTriggerSource _Nonnull triggerSource;
SWIFT
var triggerSource: SDLTriggerSource { get set }
SDLOnDriverDistraction ClassReference
Section Contents
• state
Overview
Notifies the application of the current driver distraction state (whether driver
distraction rules are in effect, or not).
HMI Status Requirements:
HMILevel:
◦ Can be sent with FULL, LIMITED or BACKGROUND
AudioStreamingState:
◦ Any
SystemContext:
◦ Any
@since SDL 1.0
state
@abstract The driver distraction state (i.e. whether driver distraction rules are
in effect, or not)
SDLOnEncodedSyncPData ClassReference
Section Contents
• data• URL• Timeout
Overview
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLDriverDistractionState _Nonnull state;
SWIFT
var state: SDLDriverDistractionState { get set }
data
Undocumented
URL
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSArray<NSString *> *data
SWIFT
var data: [String] { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *URL
Timeout
Undocumented
SWIFT
var url: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLInt> *Timeout
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
SDLOnHMIStatus Class Reference
Section Contents
• hmiLevel• audioStreamingState• systemContext
Overview
Notifies an application that HMI conditions have changed for the application.
This indicates whether the application can speak phrases, display text, perform
interactions, receive button presses and events, stream audio, etc. This
notification will be sent to the application when there has been a change in any
one or several of the indicated states (SDLHMILevel, SDLAudioStreamingState
or SDLSystemContext) for the application.
All three values are, in principle, independent of each other (though there may
be some relationships). A value for one parameter should not be interpreted
from the value of another parameter.
There are no guarantees about the timeliness or latency of the
SDLOnHMIStatus notification. Therefore, for example, information such as
SDLAudioStreamingState may not indicate that the audio stream became
inaudible to the user exactly when the SDLOnHMIStatus notification was
received.
@since SDL 1.0
hmiLevel
@abstract SDLHMILevel in effect for the application
audioStreamingState
@abstract Current state of audio streaming for the application. When this
parameter has a value of NOT_AUDIBLE, the application must stop streaming
audio to SDL.
Informs app whether any currently streaming audio is audible to user (AUDIBLE)
or not (NOT_AUDIBLE). A value of NOT_AUDIBLE means that either the
application’s audio will not be audible to the user, or that the application’s
audio should not be audible to the user (i.e. some other application on the
mobile device may be streaming audio and the application’s audio would be
blended with that other audio).
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLHMILevel _Nonnull hmiLevel;
SWIFT
var hmiLevel: SDLHMILevel { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLAudioStreamingState _Nonnull audioStreamingState;
systemContext
@abstract the System Context @discussion whether a user-initiated interaction
is in-progress (VRSESSION or MENU), or not (MAIN)
SWIFT
var audioStreamingState: SDLAudioStreamingState { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLSystemContext _Nonnull systemContext;
SWIFT
var systemContext: SDLSystemContext { get set }
SDLOnHashChange Class Reference
Section Contents
• hashID
Overview
Undocumented
hashID
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *hashID
SWIFT
var hashID: String { get set }
SDLOnInteriorVehicleData ClassReference
Section Contents
• moduleData
Overview
Undocumented
moduleData
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLModuleData *moduleData
SWIFT
var moduleData: SDLModuleData { get set }
SDLOnKeyboardInput Class Reference
Section Contents
• event• data
Overview
Undocumented
event
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLKeyboardEvent event
SWIFT
var event: SDLKeyboardEvent { get set }
data
Undocumented
SDLOnLanguageChange ClassReference
Section Contents
• language
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *data
SWIFT
var data: String? { get set }
• hmiDisplayLanguage
Overview
Provides information to what language the SDL HMI language was changed
@since SDL 2.0
language
@abstract Current SDL voice engine (VR+TTS) language
hmiDisplayLanguage
@abstract Current display language
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull language;
SWIFT
var language: SDLLanguage { get set }
SDLOnLockScreenStatus ClassReference
Section Contents
• driverDistractionStatus• userSelected• lockScreenStatus
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull hmiDisplayLanguage;
SWIFT
var hmiDisplayLanguage: SDLLanguage { get set }
• hmiLevel
Overview
driverDistractionStatus
Get the current driver distraction status(i.e. whether driver distraction rules are
in effect, or not)
To help prevent driver distraction, any SmartDeviceLink application is required to implement a lockscreen that must be enforced while the application is active on the system while the vehicle is in motion.
This lockscreen must perform the following:Limit all application control usability from the mobile device with a full-screen static image overlay or separate view.For simplicity, the OnLockScreenStatus RPC will be provided via the onOnLockScreenNotification call back. The call back will include the LockScreenStatus enum which indicates if the lockscreen is required, optional or not required.The call back also includes details regarding the current HMI_Status level, driver distraction status and user selection status of the application.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull driverDistractionStatus;
String
userSelected
Get user selection status for the application (has the app been selected via hmi
or voice command)
SWIFT
var driverDistractionStatus: NSNumber & SDLBool { get set }
RETURN VALUE
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull userSelected;
SWIFT
var userSelected: NSNumber & SDLBool { get set }
Boolean the current user selection status
lockScreenStatus
Get the {@linkplain LockScreenStatus} enumeration, indicating if the
lockscreen should be required, optional or off
{@linkplain LockScreenStatus}
RETURN VALUE
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLockScreenStatus _Nonnull lockScreenStatus;
SWIFT
var lockScreenStatus: SDLLockScreenStatus { get set }
RETURN VALUE
hmiLevel
Get HMILevel in effect for the application
{@linkplain HMILevel} the current HMI Level in effect for the application
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLHMILevel _Nonnull hmiLevel;
SWIFT
var hmiLevel: SDLHMILevel { get set }
RETURN VALUE
SDLOnPermissionsChange ClassReference
Section Contents
• permissionItem
Overview
Provides update to app of which sets of functions are available
@since SDL 2.0
permissionItem
@abstract Describes change in permissions for a given set of RPCs
Required, Array of SDLPermissionItem, Array size 0 - 500
SeeSDLPermissionItem
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLPermissionItem *> *_Nonnull permissionItem;
SDLOnSyncPData Class Reference
Section Contents
• URL• Timeout
Overview
Undocumented
URL
Undocumented
SWIFT
var permissionItem: [SDLPermissionItem] { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *URL
Timeout
Undocumented
SWIFT
var url: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLInt> *Timeout
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
SDLOnSystemRequest Class Reference
Section Contents
• requestType• url• timeout• fileType• offset• length
Overview
Undocumented
requestType
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLRequestType requestType
SWIFT
var requestType: SDLRequestType { get set }
url
Undocumented
timeout
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *url
SWIFT
var url: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLInt> *timeout
fileType
Undocumented
offset
Undocumented
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLFileType fileType
SWIFT
var fileType: SDLFileType? { get set }
length
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLUInt> *offset
SWIFT
var offset: (NSNumber & SDLUInt)? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLUInt> *length
SWIFT
var length: (NSNumber & SDLUInt)? { get set }
SDLOnTBTClientState Class Reference
Section Contents
• state
Overview
Undocumented
state
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLTBTState state
SWIFT
var state: SDLTBTState { get set }
SDLOnTouchEvent Class Reference
Section Contents
• type• event
Overview
Undocumented
type
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLTouchType type
SWIFT
var type: SDLTouchType { get set }
event
Undocumented
SDLOnVehicleData Class Reference
Section Contents
• gps• speed• rpm• fuelLevel• fuelLevel_State• instantFuelConsumption• externalTemperature• vin
OBJECTIVE-C
@property (strong, nonatomic) NSArray<SDLTouchEvent *> *event
SWIFT
var event: [SDLTouchEvent] { get set }
• prndl• tirePressure• odometer• beltStatus• bodyInformation• deviceStatus• driverBraking• wiperStatus• headLampStatus• engineTorque• accPedalPosition• steeringWheelAngle• eCallInfo• airbagStatus• emergencyEvent• clusterModeStatus• myKey
Overview
Request vehicle data.
Since SmartDeviceLink 2.0
gps
@abstract A SDLGPSData* value. See GPSData.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLGPSData *gps;
speed
@abstract The vehicle speed in kilometers per hour.
rpm
@abstract The number of revolutions per minute of the engine.
SWIFT
var gps: SDLGPSData? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *speed;
SWIFT
var speed: (NSNumber & SDLFloat)? { get set }
fuelLevel
@abstract The fuel level in the tank (percentage)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *rpm;
SWIFT
var rpm: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *fuelLevel;
SWIFT
var fuelLevel: (NSNumber & SDLFloat)? { get set }
fuelLevel_State
@abstract A SDLComponentVolumeStatus* value. The fuel level state.
instantFuelConsumption
@abstract The instantaneous fuel consumption in microlitres.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLComponentVolumeStatus fuelLevel_State;
SWIFT
var fuelLevel_State: SDLComponentVolumeStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *instantFuelConsumption;
externalTemperature
@abstract The external temperature in degrees celsius.
vin
@abstract The Vehicle Identification Number
SWIFT
var instantFuelConsumption: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *externalTemperature;
SWIFT
var externalTemperature: (NSNumber & SDLFloat)? { get set }
prndl
@abstract See PRNDL.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *vin;
SWIFT
var vin: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLPRNDL prndl;
SWIFT
var prndl: SDLPRNDL? { get set }
tirePressure
@abstract A SDLTireStatus* value. See TireStatus.
odometer
@abstract Odometer reading in km.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLTireStatus *tirePressure;
SWIFT
var tirePressure: SDLTireStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *odometer;
beltStatus
@abstract A SDLBeltStatus* value. The status of the seat belts.
bodyInformation
@abstract A SDLBodyInformation* value. The body information including power
modes.
SWIFT
var odometer: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLBeltStatus *beltStatus;
SWIFT
var beltStatus: SDLBeltStatus? { get set }
deviceStatus
@abstract A SDLDeviceStatus* value. The device status including signal and
battery strength.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLBodyInformation *bodyInformation;
SWIFT
var bodyInformation: SDLBodyInformation? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLDeviceStatus *deviceStatus;
driverBraking
@abstract A SDLVehicleDataResult* value. The status of the brake pedal.
wiperStatus
@abstract A SDLWiperStatus* value. The status of the wipers.
SWIFT
var deviceStatus: SDLDeviceStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataEventStatus driverBraking;
SWIFT
var driverBraking: SDLVehicleDataEventStatus? { get set }
headLampStatus
@abstract A SDLHeadLampStatus* value. Status of the head lamps.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLWiperStatus wiperStatus;
SWIFT
var wiperStatus: SDLWiperStatus? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLHeadLampStatus *headLampStatus;
SWIFT
var headLampStatus: SDLHeadLampStatus? { get set }
engineTorque
@abstract Torque value for engine (in Nm) on non-diesel variants.
accPedalPosition
@abstract Accelerator pedal position (percentage depressed)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *engineTorque;
SWIFT
var engineTorque: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *accPedalPosition;
steeringWheelAngle
@abstract Current angle of the steering wheel (in deg)
eCallInfo
Undocumented
SWIFT
var accPedalPosition: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLFloat> *steeringWheelAngle;
SWIFT
var steeringWheelAngle: (NSNumber & SDLFloat)? { get set }
airbagStatus
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLECallInfo *eCallInfo
SWIFT
var eCallInfo: SDLECallInfo? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLAirbagStatus *airbagStatus
SWIFT
var airbagStatus: SDLAirbagStatus? { get set }
emergencyEvent
Undocumented
clusterModeStatus
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLEmergencyEvent *emergencyEvent
SWIFT
var emergencyEvent: SDLEmergencyEvent? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLClusterModeStatus *clusterModeStatus
myKey
Undocumented
SWIFT
var clusterModeStatus: SDLClusterModeStatus? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLMyKey *myKey
SWIFT
var myKey: SDLMyKey? { get set }
SDLParameterPermissions ClassReference
Section Contents
• allowed• userDisallowed
Overview
Defining sets of parameters, which are permitted or prohibited for a given RPC.
@since SDL 2.0
allowed
@abstract A set of all parameters that are permitted for this given RPC.
Required, Array of String, max String length = 100, Array size 0 - 100
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<NSString *> *_Nonnull allowed;
userDisallowed
@abstract A set of all parameters that are prohibited for this given RPC.
Required, Array of String, max String length = 100, Array size 0 - 100
SWIFT
var allowed: [String] { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<NSString *> *_Nonnull userDisallowed;
SWIFT
var userDisallowed: [String] { get set }
SDLPerformAudioPassThru ClassReference
Section Contents
• -initWithSamplingRate:bitsPerSample:audioType:maxDuration:• -
initWithInitialPrompt:audioPassThruDisplayText1:audioPassThruDisplayText2:samplingRate:bitsPerSample:au• -
initWithSamplingRate:bitsPerSample:audioType:maxDuration:audioDataHandler:• -
initWithInitialPrompt:audioPassThruDisplayText1:audioPassThruDisplayText2:samplingRate:bitsPerSample:au• initialPrompt• audioPassThruDisplayText1• audioPassThruDisplayText2• samplingRate• maxDuration• bitsPerSample• audioType• muteAudio• audioDataHandler
Overview
This will open an audio pass thru session. By doing so the app can receive
audio data through the vehicle microphone
Function Group: AudioPassThru
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 2.0
See SDLEndAudioPassThru
-
initWithSamplingRate:bitsPerSample:audioType:maxDuration:
Undocumented
-
initWithInitialPrompt:audioPassThruDisplayText1:audioPassThruDisplayText2:sa
Undocumented
OBJECTIVE-C
- (instancetype)initWithSamplingRate:(SDLSamplingRate)samplingRate bitsPerSample:(SDLBitsPerSample)bitsPerSample audioType:(SDLAudioType)audioType maxDuration:(UInt32)maxDuration;
SWIFT
init(samplingRate: SDLSamplingRate, bitsPerSample: SDLBitsPerSample, audioType: SDLAudioType, maxDuration: UInt32)
-
initWithSamplingRate:bitsPerSample:audioType:maxDuration:audioDataHandle
Undocumented
OBJECTIVE-C
- (instancetype)initWithInitialPrompt:(nullable NSString *)initialPrompt audioPassThruDisplayText1:(nullable NSString *)audioPassThruDisplayText1 audioPassThruDisplayText2:(nullable NSString *)audioPassThruDisplayText2 samplingRate:(SDLSamplingRate)samplingRate bitsPerSample:(SDLBitsPerSample)bitsPerSample audioType:(SDLAudioType)audioType maxDuration:(UInt32)maxDuration muteAudio:(BOOL)muteAudio;
SWIFT
init(initialPrompt: String?, audioPassThruDisplayText1: String?, audioPassThruDisplayText2: String?, samplingRate: SDLSamplingRate, bitsPerSample: SDLBitsPerSample, audioType: SDLAudioType, maxDuration: UInt32, muteAudio: Bool)
-
initWithInitialPrompt:audioPassThruDisplayText1:audioPassThruDisplayText2:sa
Undocumented
OBJECTIVE-C
- (instancetype)initWithSamplingRate:(SDLSamplingRate)samplingRate bitsPerSample:(SDLBitsPerSample)bitsPerSample audioType:(SDLAudioType)audioType maxDuration:(UInt32)maxDuration audioDataHandler:(nullable SDLAudioPassThruHandler)audioDataHandler;
SWIFT
init(samplingRate: SDLSamplingRate, bitsPerSample: SDLBitsPerSample, audioType: SDLAudioType, maxDuration: UInt32, audioDataHandler: SDLAudioPassThruHandler? = nil)
initialPrompt
@abstract initial prompt which will be spoken before opening the audio pass
thru session by SDL @discussion initialPrompt a Vector value represents the
initial prompt which will be spoken before opening the audio pass thru session
by SDL
Notes:
• This is an array of text chunks of type TTSChunk• The array must have at least one item• If omitted, then no initial prompt is spoken
OBJECTIVE-C
- (instancetype)initWithInitialPrompt:(nullable NSString *)initialPrompt audioPassThruDisplayText1:(nullable NSString *)audioPassThruDisplayText1 audioPassThruDisplayText2:(nullable NSString *)audioPassThruDisplayText2 samplingRate:(SDLSamplingRate)samplingRate bitsPerSample:(SDLBitsPerSample)bitsPerSample audioType:(SDLAudioType)audioType maxDuration:(UInt32)maxDuration muteAudio:(BOOL)muteAudio audioDataHandler:(nullable SDLAudioPassThruHandler)audioDataHandler;
SWIFT
init(initialPrompt: String?, audioPassThruDisplayText1: String?, audioPassThruDisplayText2: String?, samplingRate: SDLSamplingRate, bitsPerSample: SDLBitsPerSample, audioType: SDLAudioType, maxDuration: UInt32, muteAudio: Bool, audioDataHandler: SDLAudioPassThruHandler? = nil)
• Array Minsize: 1• Array Maxsize: 100
audioPassThruDisplayText1
@abstract a line of text displayed during audio capture @discussion
audioPassThruDisplayText1 a String value representing the line of text
displayed during audio capture
Notes: Maxlength=500
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *initialPrompt;
SWIFT
var initialPrompt: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *audioPassThruDisplayText1;
audioPassThruDisplayText2
@abstract A line of text displayed during audio capture @discussion
audioPassThruDisplayText2 a String value representing the line of text
displayed during audio capture
Notes: Maxlength=500
samplingRate
@abstract A samplingRate
SWIFT
var audioPassThruDisplayText1: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *audioPassThruDisplayText2;
SWIFT
var audioPassThruDisplayText2: String? { get set }
@discussion a SamplingRate value representing a 8 or 16 or 22 or 24 khz
maxDuration
@abstract the maximum duration of audio recording in milliseconds
@discussion maxDuration an Integer value representing the maximum duration
of audio recording in millisecond
Notes: Minvalue:1; Maxvalue:1000000
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLSamplingRate _Nonnull samplingRate;
SWIFT
var samplingRate: SDLSamplingRate { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull maxDuration;
bitsPerSample
@abstract the quality the audio is recorded - 8 bit or 16 bit
@discussion a BitsPerSample value representing 8 bit or 16 bit
audioType
@abstract an audioType
SWIFT
var maxDuration: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLBitsPerSample _Nonnull bitsPerSample;
SWIFT
var bitsPerSample: SDLBitsPerSample { get set }
muteAudio
@abstract a Boolean value representing if the current audio source should be
muted during the APT session
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLAudioType _Nonnull audioType;
SWIFT
var audioType: SDLAudioType { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *muteAudio;
audioDataHandler
A handler that will be called whenever an onAudioPassThru notification is
received.
SWIFT
var muteAudio: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLAudioPassThruHandler audioDataHandler;
SWIFT
var audioDataHandler: SDLAudioPassThruHandler? { get set }
SDLPerformInteraction Class Reference
Section Contents
• -initWithInteractionChoiceSetId:• -initWithInteractionChoiceSetIdList:• -initWithInitialPrompt:initialText:interactionChoiceSetID:• -initWithInitialPrompt:initialText:interactionChoiceSetID:vrHelp:• -
initWithInitialPrompt:initialText:interactionChoiceSetIDList:helpPrompt:timeoutPrompt:interactionMode:timeo• -
initWithInitialPrompt:initialText:interactionChoiceSetIDList:helpPrompt:timeoutPrompt:interactionMode:timeo• -
initWithInitialChunks:initialText:interactionChoiceSetIDList:helpChunks:timeoutChunks:interactionMode:time• -
initWithInitialChunks:initialText:interactionChoiceSetIDList:helpChunks:timeoutChunks:interactionMode:time• initialText• initialPrompt• interactionMode• interactionChoiceSetIDList• helpPrompt• timeoutPrompt• timeout• vrHelp• interactionLayout
Overview
Performs an application-initiated interaction in which the user can select a
{@linkplain Choice} from among the specified Choice Sets. For instance, an
application may use a PerformInteraction to ask a user to say the name of a
song to play. The user’s response is only valid if it appears in the specified
Choice Sets and is recognized by SDL
Function Group: Base
HMILevel needs to be FULL
Since SmartDeviceLink 1.0
See SDLCreateInteractionChoiceSet SDLDeleteInteractionChoiceSet
-initWithInteractionChoiceSetId:
Undocumented
-initWithInteractionChoiceSetIdList:
Undocumented
OBJECTIVE-C
- (instancetype)initWithInteractionChoiceSetId:(UInt16)interactionChoiceSetId;
SWIFT
init(interactionChoiceSetId: UInt16)
-
initWithInitialPrompt:initialText:interactionChoiceSetID:
Undocumented
OBJECTIVE-C
- (instancetype)initWithInteractionChoiceSetIdList:(NSArray<NSNumber<SDLUInt> *> *)interactionChoiceSetIdList;
SWIFT
init(interactionChoiceSetIdList: [NSNumber & SDLUInt])
OBJECTIVE-C
- (instancetype)initWithInitialPrompt:(nullable NSString *)initialPrompt initialText:(NSString *)initialText interactionChoiceSetID:(UInt16)interactionChoiceSetID;
-
initWithInitialPrompt:initialText:interactionChoiceSetID:vrHelp:
Undocumented
SWIFT
init(initialPrompt: String?, initialText: String, interactionChoiceSetID: UInt16)
OBJECTIVE-C
- (instancetype)initWithInitialPrompt:(nullable NSString *)initialPrompt initialText:(NSString *)initialText interactionChoiceSetID:(UInt16)interactionChoiceSetID vrHelp:(nullable NSArray<SDLVRHelpItem *> *)vrHelp;
SWIFT
init(initialPrompt: String?, initialText: String, interactionChoiceSetID: UInt16, vrHelp: [SDLVRHelpItem]?)
-
initWithInitialPrompt:initialText:interactionChoiceSetIDList:helpPrompt:timeout
Undocumented
-
initWithInitialPrompt:initialText:interactionChoiceSetIDList:helpPrompt:timeout
Undocumented
OBJECTIVE-C
- (instancetype)initWithInitialPrompt:(nullable NSString *)initialPrompt initialText:(NSString *)initialText interactionChoiceSetIDList:(NSArray<NSNumber<SDLUInt> *> *)interactionChoiceSetIDList helpPrompt:(nullable NSString *)helpPrompt timeoutPrompt:(nullable NSString *)timeoutPrompt interactionMode:(SDLInteractionMode)interactionMode timeout:(UInt32)timeout;
SWIFT
init(initialPrompt: String?, initialText: String, interactionChoiceSetIDList: [NSNumber & SDLUInt], helpPrompt: String?, timeoutPrompt: String?, interactionMode: SDLInteractionMode, timeout: UInt32)
-
initWithInitialChunks:initialText:interactionChoiceSetIDList:helpChunks:timeout
Undocumented
OBJECTIVE-C
- (instancetype)initWithInitialPrompt:(nullable NSString *)initialPrompt initialText:(NSString *)initialText interactionChoiceSetIDList:(NSArray<NSNumber<SDLUInt> *> *)interactionChoiceSetIDList helpPrompt:(nullable NSString *)helpPrompt timeoutPrompt:(nullable NSString *)timeoutPrompt interactionMode:(SDLInteractionMode)interactionMode timeout:(UInt32)timeout vrHelp:(nullable NSArray<SDLVRHelpItem *> *)vrHelp;
SWIFT
init(initialPrompt: String?, initialText: String, interactionChoiceSetIDList: [NSNumber & SDLUInt], helpPrompt: String?, timeoutPrompt: String?, interactionMode: SDLInteractionMode, timeout: UInt32, vrHelp: [SDLVRHelpItem]?)
-
initWithInitialChunks:initialText:interactionChoiceSetIDList:helpChunks:timeout
Undocumented
OBJECTIVE-C
- (instancetype)initWithInitialChunks:(nullable NSArray<SDLTTSChunk *> *)initialChunks initialText:(NSString *)initialText interactionChoiceSetIDList:(NSArray<NSNumber<SDLUInt> *> *)interactionChoiceSetIDList helpChunks:(nullable NSArray<SDLTTSChunk *> *)helpChunks timeoutChunks:(nullable NSArray<SDLTTSChunk *> *)timeoutChunks interactionMode:(SDLInteractionMode)interactionMode timeout:(UInt32)timeout vrHelp:(nullable NSArray<SDLVRHelpItem *> *)vrHelp;
SWIFT
init(initialChunks: [SDLTTSChunk]?, initialText: String, interactionChoiceSetIDList: [NSNumber & SDLUInt], help helpChunks: [SDLTTSChunk]?, timeoutChunks: [SDLTTSChunk]?, interactionMode: SDLInteractionMode, timeout: UInt32, vrHelp: [SDLVRHelpItem]?)
initialText
@abstract The Text that Displayed when the interaction begins. This text may
be overlaid by the “Listening” prompt during the interaction. Text is displayed
OBJECTIVE-C
- (instancetype)initWithInitialChunks:(nullable NSArray<SDLTTSChunk *> *)initialChunks initialText:(NSString *)initialText interactionChoiceSetIDList:(NSArray<NSNumber<SDLUInt> *> *)interactionChoiceSetIDList helpChunks:(nullable NSArray<SDLTTSChunk *> *)helpChunks timeoutChunks:(nullable NSArray<SDLTTSChunk *> *)timeoutChunks interactionMode:(SDLInteractionMode)interactionMode timeout:(UInt32)timeout vrHelp:(nullable NSArray<SDLVRHelpItem *> *)vrHelp interactionLayout:(nullable SDLLayoutMode)layout;
SWIFT
init(initialChunks: [SDLTTSChunk]?, initialText: String, interactionChoiceSetIDList: [NSNumber & SDLUInt], help helpChunks: [SDLTTSChunk]?, timeoutChunks: [SDLTTSChunk]?, interactionMode: SDLInteractionMode, timeout: UInt32, vrHelp: [SDLVRHelpItem]?, interactionLayout layout: SDLLayoutMode?)
on first line of multiline display, and is centered. If text does not fit on line, it
will be truncated
initialPrompt
@abstract An array of one or more TTSChunks that, taken together, specify
what is to be spoken to the user at the start of an interaction
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull initialText;
SWIFT
var initialText: String { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *initialPrompt;
interactionMode
@abstract The Indicates mode that indicate how user selects interaction
choice. User can choose either by voice (VR_ONLY), by visual selection from the
menu (MANUAL_ONLY), or by either mode (BOTH)
interactionChoiceSetIDList
@abstract A Vector value representing an Array of one or more Choice Set IDs
SWIFT
var initialPrompt: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLInteractionMode _Nonnull interactionMode;
SWIFT
var interactionMode: SDLInteractionMode { get set }
helpPrompt
@abstract A Vector which taken together, specify the help phrase to be spoken
when the user says “help” during the VR session
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<NSNumber<SDLInt> *> *_Nonnull interactionChoiceSetIDList;
SWIFT
var interactionChoiceSetIDList: [NSNumber & SDLInt] { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *helpPrompt;
timeoutPrompt
@abstract An array of TTSChunks which, taken together, specify the phrase to
be spoken when the listen times out during the VR session
timeout
@abstract An Integer value representing the amount of time, in milliseconds,
SDL will wait for the user to make a choice (VR or Menu)
SWIFT
var helpPrompt: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *timeoutPrompt;
SWIFT
var timeoutPrompt: [SDLTTSChunk]? { get set }
vrHelp
@abstract A Voice recognition Help, which is a suggested VR Help Items to
display on-screen during Perform Interaction @since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *timeout;
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLVRHelpItem *> *vrHelp;
interactionLayout
Undocumented
SWIFT
var vrHelp: [SDLVRHelpItem]? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLLayoutMode interactionLayout
SWIFT
var interactionLayout: SDLLayoutMode? { get set }
SDLPerformInteractionResponse ClassReference
Section Contents
• choiceID• manualTextEntry• triggerSource
Overview
PerformInteraction Response is sent, when SDLPerformInteraction has been
called
@since SDL 1.0
choiceID
@abstract ID of the choice that was selected in response to PerformInteraction.
@discussion Only is valid if general result is “success:true”.
Optional, Integer, 0 - 2,000,000,000
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *choiceID;
manualTextEntry
@abstract Manually entered text selection, e.g. through keyboard
@discussion Can be returned in lieu of choiceID, depending on trigger source
Optional, Max length 500 chars
triggerSource
@abstract A SDLTriggerSource object which will be shown in the HMI
SWIFT
var choiceID: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *manualTextEntry;
SWIFT
var manualTextEntry: String? { get set }
@discussion Only is valid if resultCode is SUCCESS.
SDLPermissionItem Class Reference
Section Contents
• rpcName• hmiPermissions• parameterPermissions
Overview
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLTriggerSource triggerSource;
SWIFT
var triggerSource: SDLTriggerSource? { get set }
rpcName
Undocumented
hmiPermissions
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *rpcName
SWIFT
var rpcName: String { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLHMIPermissions *hmiPermissions
parameterPermissions
Undocumented
SWIFT
var hmiPermissions: SDLHMIPermissions { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLParameterPermissions *parameterPermissions
SWIFT
var parameterPermissions: SDLParameterPermissions { get set }
SDLPermissionManager Class Reference
Section Contents
• -startWithCompletionHandler:• -stop• -isRPCAllowed:• -groupStatusOfRPCs:• -statusOfRPCs:• -addObserverForRPCs:groupType:withHandler:• -removeAllObservers• -removeObserverForIdentifier:
Overview
Undocumented
-startWithCompletionHandler:
Start the manager with a completion block that will be called when startup
completes. This is used internally. To use an SDLPermissionManager, you should
use the manager found on SDLManager .
OBJECTIVE-C
- (void)startWithCompletionHandler: (nonnull void (^)(BOOL, NSError *_Nullable))completionHandler;
completionHandler
The block to be called when the manager’s setup is complete.
-stop
Stop the manager. This method is used internally.
SWIFT
func start(completionHandler: @escaping (Bool, Error?) -> Void)
PARAMETERS
OBJECTIVE-C
- (void)stop;
SWIFT
func stop()
-isRPCAllowed:
Determine if an individual RPC is allowed for the current HMI level
rpcName
The name of the RPC to be tested, for example, SDLShow
YES if the RPC is allowed at the current HMI level, NO if not
OBJECTIVE-C
- (BOOL)isRPCAllowed:(nonnull SDLPermissionRPCName)rpcName;
SWIFT
func isRPCAllowed(_ rpcName: String) -> Bool
PARAMETERS
RETURN VALUE
-groupStatusOfRPCs:
Determine if all RPCs are allowed for the current HMI level
rpcNames
The RPCs to check
OBJECTIVE-C
- (SDLPermissionGroupStatus)groupStatusOfRPCs: (nonnull NSArray<SDLPermissionRPCName> *)rpcNames;
SWIFT
func groupStatus(ofRPCs rpcNames: [String]) -> SDLPermissionGroupStatus
PARAMETERS
AllAllowed if all of the permissions are allowed, AllDisallowed if all the
permissions are disallowed, Any if some are allowed, and some are disallowed
-statusOfRPCs:
Retrieve a dictionary with keys that are the passed in RPC names, and objects
of an NSNumber specifying if that RPC is currently allowed
RETURN VALUE
OBJECTIVE-C
- (nonnull NSDictionary<SDLPermissionRPCName, NSNumber<SDLBool> *> *)statusOfRPCs:(nonnull NSArray<SDLPermissionRPCName> *)rpcNames;
SWIFT
func status(ofRPCs rpcNames: [String]) -> [String : NSNumber & SDLBool]
rpcNames
An array of RPC names to check
A dictionary specifying if the passed in RPC names are currently allowed or not
-addObserverForRPCs:groupType:withHandler:
Add an observer for specified RPC names, with a callback that will be called
whenever the value changes, as well as immediately with the current status.
Warning
This block will be captured by the SDLPermissionsManager, be sure to use
weakself/strongself if you are referencing self within your observer block.
Warning
The observer may be called before this method returns, do not attempt to
remove the observer from within the observer. That could send nil to
PARAMETERS
RETURN VALUE
removeObserverForIdentifier:. If you want functionality like that, call
groupStatusOfRPCs: instead.
rpcNames
The RPCs to be observed
groupType
Affects the times that the observer block will be called. If Any, any
change to any RPC in rpcNames will cause the observer block to be
called. If AllAllowed, the block will be called when: 1. Every RPC in
OBJECTIVE-C
- (nonnull SDLPermissionObserverIdentifier)addObserverForRPCs:(nonnull NSArray<SDLPermissionRPCName> *)rpcNames groupType:(SDLPermissionGroupType)groupType withHandler:(nonnull SDLPermissionsChangedHandler)handler;
SWIFT
func addObserver(forRPCs rpcNames: [String], groupType: SDLPermissionGroupType, withHandler handler: @escaping SDLPermissionsChangedHandler) -> UUID
PARAMETERS
rpcNames becomes allowed 2. The group of rpcNames goes from all
being allowed to some or all being disallowed.
handler
The block that will be called whenever permissions change.
An identifier that can be passed to removeObserverForIdentifer: to remove the
observer
-removeAllObservers
Remove every current observer
RETURN VALUE
OBJECTIVE-C
- (void)removeAllObservers;
SWIFT
func removeAllObservers()
-removeObserverForIdentifier:
Remove block observers for the specified RPC
identifier
The identifier specifying which observer to remove
OBJECTIVE-C
- (void)removeObserverForIdentifier: (nonnull SDLPermissionObserverIdentifier)identifier;
SWIFT
func removeObserver(forIdentifier identifier: UUID)
PARAMETERS
SDLPhoneCapability Class Reference
Section Contents
• -initWithDialNumber:• dialNumberEnabled
Overview
Undocumented
-initWithDialNumber:
Undocumented
OBJECTIVE-C
- (instancetype)initWithDialNumber:(BOOL)dialNumberEnabled;
SWIFT
init(dialNumber dialNumberEnabled: Bool)
dialNumberEnabled
Whether or not the DialNumber RPC is enabled. Boolean, optional
SDLPinchGesture Class Reference
Section Contents
• -initWithFirstTouch:secondTouch:• firstTouch• secondTouch• distance• center• isValid
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber *dialNumberEnabled;
SWIFT
var dialNumberEnabled: NSNumber? { get set }
Overview
Undocumented
-initWithFirstTouch:secondTouch:
@abstract Initializes a pinch gesture.
firstTouch
First touch of the gesture
secondTouch
OBJECTIVE-C
- (nonnull instancetype)initWithFirstTouch:(nonnull SDLTouch *)firstTouch secondTouch:(nonnull SDLTouch *)secondTouch;
SWIFT
init(firstTouch: SDLTouch, secondTouch: SDLTouch)
PARAMETERS
Second touch of the gesture
SDLPinchGesture Instance of SDLPinchGesture.
firstTouch
@abstract First touch of a pinch gesture.
secondTouch
@abstract Second touch of a pinch gesture.
RETURN VALUE
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLTouch *_Nonnull firstTouch;
SWIFT
var firstTouch: SDLTouch { get set }
distance
@abstract Distance between first and second touches.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLTouch *_Nonnull secondTouch;
SWIFT
var secondTouch: SDLTouch { get set }
OBJECTIVE-C
@property (readonly, assign, nonatomic) CGFloat distance;
SWIFT
var distance: CGFloat { get }
center
@abstract Center point between first and second touches.
isValid
@abstract Returns whether or not the pinch gesture is valid. This is true if both
touches are non null.
OBJECTIVE-C
@property (readonly, assign, nonatomic) CGPoint center;
SWIFT
var center: CGPoint { get }
OBJECTIVE-C
@property (readonly, assign, nonatomic) BOOL isValid;
SDLPresetBankCapabilities ClassReference
Section Contents
• onScreenPresetsAvailable
Overview
Contains information about on-screen preset capabilities.
@since SDL 2.0
onScreenPresetsAvailable
@abstract If Onscreen custom presets are available.
Required, Boolean
SWIFT
var isValid: Bool { get }
SDLProtocol Class Reference
Section Contents
• -startServiceWithType:payload:• -startSecureServiceWithType:payload:completionHandler:• -endServiceWithType:• -sendRPC:• -sendRPC:encrypted:error:• -sendRawData:withServiceType:• -sendEncryptedRawData:onService:
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull onScreenPresetsAvailable;
SWIFT
var onScreenPresetsAvailable: NSNumber & SDLBool { get set }
• -handleBytesFromTransport:
Overview
Undocumented
-startServiceWithType:payload:
Undocumented
-
startSecureServiceWithType:payload:completionHandler:
Undocumented
OBJECTIVE-C
- (void)startServiceWithType:(SDLServiceType)serviceType payload:(nullable NSData *)payload;
SWIFT
func startService(with serviceType: SDLServiceType, payload: Data?)
-endServiceWithType:
Undocumented
OBJECTIVE-C
- (void)startSecureServiceWithType:(SDLServiceType)serviceType payload:(nullable NSData *)payload completionHandler:(void (^)(BOOL success, NSError *error))completionHandler;
SWIFT
func startSecureService(with serviceType: SDLServiceType, payload: Data?, completionHandler: @escaping (Bool, Error) -> Void)
OBJECTIVE-C
- (void)endServiceWithType:(SDLServiceType)serviceType;
-sendRPC:
Undocumented
-sendRPC:encrypted:error:
Undocumented
SWIFT
func endService(with serviceType: SDLServiceType)
OBJECTIVE-C
- (void)sendRPC:(SDLRPCMessage *)message;
SWIFT
func sendRPC(_ message: SDLRPCMessage)
-sendRawData:withServiceType:
Undocumented
OBJECTIVE-C
- (BOOL)sendRPC:(SDLRPCMessage *)message encrypted:(BOOL)encryption error:(NSError **)error;
SWIFT
func sendRPC(_ message: SDLRPCMessage, encrypted encryption: Bool) throws
OBJECTIVE-C
- (void)sendRawData:(NSData *)data withServiceType:(SDLServiceType)serviceType;
-sendEncryptedRawData:onService:
Undocumented
-handleBytesFromTransport:
Undocumented
SWIFT
func sendRawData(_ data: Data, with serviceType: SDLServiceType)
OBJECTIVE-C
- (void)sendEncryptedRawData:(NSData *)data onService:(SDLServiceType)serviceType;
SWIFT
func sendEncryptedRawData(_ data: Data, on serviceType: SDLServiceType)
SDLProtocolHeader Class Reference
Section Contents
• _version• _size• version• size• encrypted• frameType• serviceType• frameData• sessionID• bytesInPayload• -init• -data
OBJECTIVE-C
- (void)handleBytesFromTransport:(NSData *)receivedData;
SWIFT
func handleBytes(fromTransport receivedData: Data)
• -parse:• -description• +headerForVersion:• +determineVersion:
Overview
Undocumented
_version
Undocumented
_size
Undocumented
OBJECTIVE-C
UInt8 _version
OBJECTIVE-C
NSUInteger _size
version
Undocumented
size
Undocumented
OBJECTIVE-C
@property (assign, nonatomic, readonly) UInt8 version
SWIFT
var version: UInt8 { get }
OBJECTIVE-C
@property (assign, nonatomic, readonly) NSUInteger size
encrypted
Undocumented
frameType
Undocumented
SWIFT
var size: UInt { get }
OBJECTIVE-C
@property (assign, nonatomic) BOOL encrypted
SWIFT
var encrypted: Bool { get set }
serviceType
Undocumented
OBJECTIVE-C
@property (assign, nonatomic) SDLFrameType frameType
SWIFT
var frameType: SDLFrameType { get set }
OBJECTIVE-C
@property (assign, nonatomic) SDLServiceType serviceType
SWIFT
var serviceType: SDLServiceType { get set }
frameData
Undocumented
sessionID
Undocumented
OBJECTIVE-C
@property (assign, nonatomic) SDLFrameInfo frameData
SWIFT
var frameData: SDLFrameInfo { get set }
OBJECTIVE-C
@property (assign, nonatomic) UInt8 sessionID
bytesInPayload
Undocumented
-init
Undocumented
SWIFT
var sessionID: UInt8 { get set }
OBJECTIVE-C
@property (assign, nonatomic) UInt32 bytesInPayload
SWIFT
var bytesInPayload: UInt32 { get set }
-data
Undocumented
OBJECTIVE-C
- (instancetype)init;
SWIFT
init()
OBJECTIVE-C
- (nullable NSData *)data;
SWIFT
func data() -> Data?
-parse:
Undocumented
-description
Undocumented
OBJECTIVE-C
- (void)parse:(NSData *)data;
SWIFT
func parse(_ data: Data)
OBJECTIVE-C
- (NSString *)description;
+headerForVersion:
Undocumented
+determineVersion:
Undocumented
SWIFT
func description() -> String
OBJECTIVE-C
+ (__kindof SDLProtocolHeader *)headerForVersion:(UInt8)version;
SWIFT
/*not inherited*/ init(forVersion version: UInt8)
SDLProtocolMessage Class Reference
Section Contents
• header• payload• data• +messageWithHeader:andPayload:• -size• -description• -rpcDictionary
Overview
Undocumented
OBJECTIVE-C
+ (UInt8)determineVersion:(NSData *)data;
SWIFT
class func determineVersion(_ data: Data) -> UInt8
header
Undocumented
payload
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLProtocolHeader *header
SWIFT
var header: SDLProtocolHeader { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSData *payload
data
Undocumented
+messageWithHeader:andPayload:
Undocumented
SWIFT
var payload: Data? { get set }
OBJECTIVE-C
@property (strong, nonatomic, readonly) NSData *data
SWIFT
var data: Data { get }
-size
Undocumented
OBJECTIVE-C
+ (instancetype)messageWithHeader:(SDLProtocolHeader *)header andPayload:(nullable NSData *)payload;
SWIFT
convenience init(header: SDLProtocolHeader, andPayload payload: Data?)
OBJECTIVE-C
- (NSUInteger)size;
SWIFT
func size() -> UInt
-description
Undocumented
-rpcDictionary
Undocumented
OBJECTIVE-C
- (NSString *)description;
SWIFT
func description() -> String
OBJECTIVE-C
- (nullable NSDictionary<NSString *, id> *)rpcDictionary;
SDLProxy Class Reference
Section Contents
• _version• _bulkSessionID• _isConnected• protocol• transport• proxyListeners• startSessionTimer• debugConsoleGroupName• proxyVersion• -initWithTransport:protocol:delegate:• -addDelegate:• -removeDelegate:• -sendRPC:• -handleRPCDictionary:• -handleProtocolMessage:• -addSecurityManagers:forAppId:
SWIFT
func rpcDictionary() -> [String : Any]?
• -putFileStream:withRequest:
Overview
Undocumented
_version
Undocumented
_bulkSessionID
Undocumented
_isConnected
Undocumented
OBJECTIVE-C
Byte _version
OBJECTIVE-C
Byte _bulkSessionID
protocol
Undocumented
transport
Undocumented
OBJECTIVE-C
BOOL _isConnected
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLAbstractProtocol *protocol
SWIFT
var `protocol`: SDLAbstractProtocol? { get set }
proxyListeners
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLAbstractTransport *transport
SWIFT
var transport: SDLAbstractTransport? { get set }
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSSet<NSObject<SDLProxyListener> *> *proxyListeners
SWIFT
var proxyListeners: Set<AnyHashable> { get }
startSessionTimer
Undocumented
debugConsoleGroupName
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLTimer *startSessionTimer
SWIFT
var startSessionTimer: SDLTimer { get set }
OBJECTIVE-C
@property (copy, nonatomic) NSString *debugConsoleGroupName
proxyVersion
Undocumented
-initWithTransport:protocol:delegate:
Undocumented
SWIFT
var debugConsoleGroupName: String { get set }
OBJECTIVE-C
@property (readonly, copy, nonatomic) NSString *proxyVersion
SWIFT
var proxyVersion: String { get }
-addDelegate:
Undocumented
OBJECTIVE-C
- (id)initWithTransport:(SDLAbstractTransport *)transport protocol:(SDLAbstractProtocol *)protocol delegate:(NSObject<SDLProxyListener> *)delegate;
SWIFT
init(transport: SDLAbstractTransport, protocol: SDLAbstractProtocol, delegate: SDLProxyListener)
OBJECTIVE-C
- (void)addDelegate:(NSObject<SDLProxyListener> *)delegate;
-removeDelegate:
Undocumented
-sendRPC:
Undocumented
SWIFT
func addDelegate(_ delegate: SDLProxyListener)
OBJECTIVE-C
- (void)removeDelegate:(NSObject<SDLProxyListener> *)delegate;
SWIFT
func removeDelegate(_ delegate: SDLProxyListener)
-handleRPCDictionary:
Undocumented
OBJECTIVE-C
- (void)sendRPC:(SDLRPCMessage *)message;
SWIFT
func sendRPC(_ message: SDLRPCMessage)
OBJECTIVE-C
- (void)handleRPCDictionary:(NSDictionary<NSString *, id> *)dictionary;
SWIFT
func handleRPCDictionary(_ dictionary: [String : Any])
-handleProtocolMessage:
Undocumented
-addSecurityManagers:forAppId:
Undocumented
OBJECTIVE-C
- (void)handleProtocolMessage:(SDLProtocolMessage *)msgData;
SWIFT
func handle(_ msgData: SDLProtocolMessage)
OBJECTIVE-C
- (void)addSecurityManagers:(NSArray<Class> *)securityManagerClasses forAppId:(NSString *)appId;
-putFileStream:withRequest:
Puts data into a file on the module @abstract Performs a putFile for a given
input stream, performed in chunks, for handling very large files.
SWIFT
func addSecurityManagers(_ securityManagerClasses: [AnyClass], forAppId appId: String)
OBJECTIVE-C
- (void)putFileStream:(nonnull NSInputStream *)inputStream withRequest:(nonnull SDLPutFile *)putFileRPCRequest;
SWIFT
func putFileStream(_ inputStream: InputStream, withRequest putFileRPCRequest: SDLPutFile)
inputStream
A stream containing the data to put to the module.
putFileRPCRequest
A SDLPutFile object containing the parameters for the put(s)
@discussion The proxy will read from the stream based on the max
MTU size and send them in individual putFile requests. This may result
in multiple responses being received, one for each request. Note: the
length parameter of the putFileRPCRequest will be ignored. The proxy
will substitute the number of bytes read from the stream.
SDLProxyFactory Class Reference
Section Contents
• +buildSDLProxyWithListener:• +buildSDLProxyWithListener:tcpIPAddress:tcpPort:
Overview
Undocumented
PARAMETERS
+buildSDLProxyWithListener:
Undocumented
+buildSDLProxyWithListener:tcpIPAddress:tcpPort:
Undocumented
OBJECTIVE-C
+ (SDLProxy *)buildSDLProxyWithListener:(NSObject<SDLProxyListener> *)listener;
SWIFT
class func buildSDLProxy(with listener: SDLProxyListener) -> SDLProxy
OBJECTIVE-C
+ (SDLProxy *)buildSDLProxyWithListener:(NSObject<SDLProxyListener> *)listener tcpIPAddress:(NSString *)ipaddress tcpPort:(NSString *)port;
SDLPutFile Class Reference
Section Contents
• -initWithFileName:fileType:• -initWithFileName:fileType:persistentFile:• -initWithFileName:fileType:persistentFile:systemFile:offset:length:• syncFileName• fileType• persistentFile• systemFile• offset• length
Overview
Used to push a binary data onto the SDL module from a mobile device, such as
icons and album art
Since SmartDeviceLink 2.0
SeeSDLDeleteFile SeeSDLListFiles
SWIFT
class func buildSDLProxy(with listener: SDLProxyListener, tcpIPAddress ipaddress: String, tcpPort port: String) -> SDLProxy
-initWithFileName:fileType:
Undocumented
-initWithFileName:fileType:persistentFile:
Undocumented
OBJECTIVE-C
- (instancetype)initWithFileName:(NSString *)fileName fileType:(SDLFileType)fileType;
SWIFT
init(fileName: String, fileType: SDLFileType)
OBJECTIVE-C
- (instancetype)initWithFileName:(NSString *)fileName fileType:(SDLFileType)fileType persistentFile:(BOOL)persistentFile;
-
initWithFileName:fileType:persistentFile:systemFile:offset:length:
Undocumented
syncFileName
A file reference name
SWIFT
init(fileName: String, fileType: SDLFileType, persistentFile: Bool)
OBJECTIVE-C
- (instancetype)initWithFileName:(NSString *)fileName fileType:(SDLFileType)fileType persistentFile:(BOOL)persistentFile systemFile:(BOOL)systemFile offset:(UInt32)offset length:(UInt32)length;
SWIFT
init(fileName: String, fileType: SDLFileType, persistentFile: Bool, systemFile: Bool, offset: UInt32, length: UInt32)
Required, maxlength 255 characters
fileType
A FileType value representing a selected file type
Required
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull syncFileName;
SWIFT
var syncFileName: String { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLFileType _Nonnull fileType;
persistentFile
A value to indicates if the file is meant to persist between sessions / ignition
cycles. If set to TRUE, then the system will aim to persist this file through
session / cycles. While files with this designation will have priority over others,
they are subject to deletion by the system at any time. In the event of
automatic deletion by the system, the app will receive a rejection and have to
resend the file. If omitted, the value will be set to false
Boolean, Optional, default = NO
SWIFT
var fileType: SDLFileType { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *persistentFile;
SWIFT
var persistentFile: (NSNumber & SDLBool)? { get set }
systemFile
Indicates if the file is meant to be passed through core to elsewhere on the
system. If set to TRUE, then the system will instead pass the data thru as it
arrives to a predetermined area outside of core.
Boolean, Optional, default = NO
offset
Offset in bytes for resuming partial data chunks.
Integer, Optional, 0 - 100,000,000,000
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *systemFile;
SWIFT
var systemFile: (NSNumber & SDLBool)? { get set }
length
Length in bytes for resuming partial data chunks. If offset is set to 0, then
length is the total length of the file to be downloaded
Integer, Optional, 0 - 100,000,000,000
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLUInt> *offset;
SWIFT
var offset: (NSNumber & SDLUInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLUInt> *length;
SDLPutFileResponse Class Reference
Section Contents
• spaceAvailable
Overview
Put File Response is sent, when SDLPutFile has been called
Since SmartDeviceLink 2.0
spaceAvailable
Undocumented
SWIFT
var length: (NSNumber & SDLUInt)? { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *spaceAvailable
SDLRDSData Class Reference
Section Contents
• -
initWithProgramService:radioText:clockText:programIdentification:programType:trafficProgramIdentification:• programService• radioText• clockText• programIdentification• programType• trafficProgramIdentification• trafficAnnouncementIdentification• region
Overview
Include the data defined in Radio Data System, which is a communications
protocol standard for embedding small amounts of digital information in
conventional FM radio broadcasts.
SWIFT
var spaceAvailable: NSNumber & SDLInt { get set }
-
initWithProgramService:radioText:clockText:programIdentification:programType
Undocumented
programService
@abstract Program Service Name
optional, 0-8
OBJECTIVE-C
- (instancetype)initWithProgramService:(nullable NSString *)programService radioText:(nullable NSString *)radioText clockText:(nullable NSString *)clockText programIdentification:(nullable NSString *)programIdentification programType:(nullable NSNumber<SDLInt> *)programType trafficProgramIdentification:(nullable NSNumber<SDLBool> *)trafficProgramIdentification trafficAnnouncementIdentification:(nullable NSNumber<SDLBool> *)trafficAnnouncementIdentification region:(nullable NSString *)region;
SWIFT
init(programService: String?, radioText: String?, clockText: String?, programIdentification: String?, programType: (NSNumber & SDLInt)?, trafficProgramIdentification: (NSNumber & SDLBool)?, trafficAnnouncementIdentification: (NSNumber & SDLBool)?, region: String?)
radioText
@abstract Radio Text
optional, 0-64
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *programService;
SWIFT
var programService: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *radioText;
clockText
@abstract The clock text in UTC format as YYYY-MM-DDThh:mm:ss.sTZD
optional, 0-24
programIdentification
@abstract Program Identification - the call sign for the radio station
optional, 0-6
SWIFT
var radioText: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *clockText;
SWIFT
var clockText: String? { get set }
programType
@abstract The program type - The region should be used to differentiate
between EU and North America program types
optional, 0-31
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *programIdentification;
SWIFT
var programIdentification: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *programType;
trafficProgramIdentification
@abstract Traffic Program Identification - Identifies a station that offers traffic
optional, Boolean
trafficAnnouncementIdentification
@abstract Traffic Announcement Identification - Indicates an ongoing traffic
announcement
SWIFT
var programType: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *trafficProgramIdentification;
SWIFT
var trafficProgramIdentification: (NSNumber & SDLBool)? { get set }
optional, Boolean
region
@abstract Region
optional, 0-8
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *trafficAnnouncementIdentification;
SWIFT
var trafficAnnouncementIdentification: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *region;
SDLRPCMessage Class Reference
Section Contents
• function• parameters• messageType• -initWithName:• -initWithDictionary:• -getFunctionName• -setFunctionName:• -getParameters:• -setParameters:value:• bulkData• name• messageType
Overview
Undocumented
SWIFT
var region: String? { get set }
function
Undocumented
parameters
Undocumented
messageType
Undocumented
OBJECTIVE-C
NSMutableDictionary<NSString *, id> *function
OBJECTIVE-C
NSMutableDictionary<NSString *, id> *parameters
OBJECTIVE-C
NSString *messageType
-initWithName:
Undocumented
-initWithDictionary:
Undocumented
OBJECTIVE-C
- (instancetype)initWithName:(NSString *)name;
SWIFT
init(name: String)
OBJECTIVE-C
- (instancetype)initWithDictionary:(NSDictionary<NSString *, id> *)dict;
-getFunctionName
Undocumented
-setFunctionName:
Undocumented
SWIFT
init(dictionary dict: [String : Any])
OBJECTIVE-C
- (nullable NSString *)getFunctionName;
SWIFT
func getFunctionName() -> String?
-getParameters:
Undocumented
OBJECTIVE-C
- (void)setFunctionName:(nullable NSString *)functionName;
SWIFT
func setFunctionName(_ functionName: String?)
OBJECTIVE-C
- (nullable NSObject *)getParameters:(NSString *)functionName;
SWIFT
func getParameters(_ functionName: String) -> NSObject?
-setParameters:value:
Undocumented
bulkData
Undocumented
OBJECTIVE-C
- (void)setParameters:(NSString *)functionName value:(nullable NSObject *)value;
SWIFT
func setParameters(_ functionName: String, value: NSObject?)
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSData *bulkData
name
Undocumented
messageType
Undocumented
SWIFT
var bulkData: Data? { get set }
OBJECTIVE-C
@property (strong, nonatomic, readonly) NSString *name
SWIFT
var name: String { get }
SDLRPCNotificationNotification ClassReference
Section Contents
• notification• -initWithName:object:rpcNotification:• -isNotificationMemberOfClass:• -isNotificationKindOfClass:
Overview
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, readonly) NSString *messageType
SWIFT
var messageType: String { get }
notification
Undocumented
-initWithName:object:rpcNotification:
Undocumented
OBJECTIVE-C
@property (copy, nonatomic, readonly) __kindof SDLRPCNotification *notification
SWIFT
@NSCopying var notification: SDLRPCNotification { get }
OBJECTIVE-C
- (instancetype)initWithName:(NSString *)name object:(nullable id)object rpcNotification:(__kindof SDLRPCNotification *)notification;
-isNotificationMemberOfClass:
Returns whether or not the containing notification is equal to a class, not
including subclasses.
aClass
SWIFT
init(name: String, object: Any?, rpcNotification notification: SDLRPCNotification)
OBJECTIVE-C
- (BOOL)isNotificationMemberOfClass:(nonnull Class)aClass;
SWIFT
func isNotificationMember(of aClass: AnyClass) -> Bool
PARAMETERS
the class you are questioning
-isNotificationKindOfClass:
Returns whether or not the containing notification is a kind of class, including
subclasses.
aClass
the class you are questioning
OBJECTIVE-C
- (BOOL)isNotificationKindOfClass:(nonnull Class)aClass;
SWIFT
func isNotificationKind(of aClass: AnyClass) -> Bool
PARAMETERS
SDLRPCRequest Class Reference
Section Contents
• correlationID
Overview
Undocumented
correlationID
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *correlationID
SWIFT
var correlationID: NSNumber & SDLInt { get set }
SDLRPCResponse Class Reference
Section Contents
• correlationID• success• resultCode• info
Overview
Undocumented
correlationID
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *correlationID
SWIFT
var correlationID: NSNumber & SDLInt { get set }
success
Undocumented
resultCode
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLBool> *success
SWIFT
var success: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLResult resultCode
info
Undocumented
SWIFT
var resultCode: SDLResult { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *info
SWIFT
var info: String? { get set }
SDLRPCResponseNotification ClassReference
Section Contents
• response• -initWithName:object:rpcResponse:• -isResponseMemberOfClass:• -isResponseKindOfClass:
Overview
Undocumented
response
Undocumented
OBJECTIVE-C
@property (copy, nonatomic, readonly) __kindof SDLRPCResponse *response
SWIFT
@NSCopying var response: SDLRPCResponse { get }
-initWithName:object:rpcResponse:
Undocumented
-isResponseMemberOfClass:
Returns whether or not the containing response is equal to a class, not
including subclasses.
OBJECTIVE-C
- (instancetype)initWithName:(NSString *)name object:(nullable id)object rpcResponse:(__kindof SDLRPCResponse *)response;
SWIFT
init(name: String, object: Any?, rpcResponse response: SDLRPCResponse)
OBJECTIVE-C
- (BOOL)isResponseMemberOfClass:(nonnull Class)aClass;
aClass
the class you are questioning
-isResponseKindOfClass:
Returns whether or not the containing response is a kind of class, including
subclasses.
SWIFT
func isResponseMember(of aClass: AnyClass) -> Bool
PARAMETERS
OBJECTIVE-C
- (BOOL)isResponseKindOfClass:(nonnull Class)aClass;
SWIFT
func isResponseKind(of aClass: AnyClass) -> Bool
aClass
the class you are questioning
SDLRPCStruct Class Reference
Section Contents
• store• -initWithDictionary:• -init• -serializeAsDictionary:
Overview
Undocumented
store
Undocumented
PARAMETERS
OBJECTIVE-C
NSMutableDictionary<NSString *, id> *store
-initWithDictionary:
Undocumented
-init
Undocumented
OBJECTIVE-C
- (instancetype)initWithDictionary:(NSDictionary<NSString *, id> *)dict;
SWIFT
init(dictionary dict: [String : Any])
OBJECTIVE-C
- (instancetype)init;
-serializeAsDictionary:
Undocumented
SWIFT
init()
OBJECTIVE-C
- (NSDictionary<NSString *, id> *)serializeAsDictionary:(Byte)version;
SWIFT
func serialize(asDictionary version: UInt8) -> [String : Any]
SDLRadioControlCapabilities ClassReference
Section Contents
• -
initWithModuleName:radioEnableAvailable:radioBandAvailable:radioFrequencyAvailable:hdChannelAvailable• moduleName• radioEnableAvailable• radioBandAvailable• radioFrequencyAvailable• hdChannelAvailable• rdsDataAvailable• availableHDsAvailable• stateAvailable• signalStrengthAvailable• signalChangeThresholdAvailable
Overview
Contains information about a radio control module’s capabilities.
-
initWithModuleName:radioEnableAvailable:radioBandAvailable:radioFrequencyA
Undocumented
moduleName
@abstract The short friendly name of the climate control module. It should not
be used to identify a module by mobile application.
Max string length 100 chars
OBJECTIVE-C
- (instancetype)initWithModuleName:(NSString *)moduleName radioEnableAvailable:(BOOL)radioEnableAvailable radioBandAvailable:(BOOL)radioBandAvailable radioFrequencyAvailable:(BOOL)radioFrequencyAvailable hdChannelAvailable:(BOOL)hdChannelAvailable rdsDataAvailable:(BOOL)rdsDataAvailable availableHDsAvailable:(BOOL)availableHDsAvailable stateAvailable:(BOOL)stateAvailable signalStrengthAvailable:(BOOL)signalStrengthAvailable signalChangeThresholdAvailable:(BOOL)signalChangeThresholdAvailable;
SWIFT
init(moduleName: String, radioEnableAvailable: Bool, radioBandAvailable: Bool, radioFrequencyAvailable: Bool, hdChannelAvailable: Bool, rdsDataAvailable: Bool, availableHDsAvailable: Bool, stateAvailable: Bool, signalStrengthAvailable: Bool, signalChangeThresholdAvailable: Bool)
radioEnableAvailable
@abstract Availability of the control of enable/disable radio. True: Available,
False: Not Available, Not present: Not Available.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull moduleName;
SWIFT
var moduleName: String { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *radioEnableAvailable;
radioBandAvailable
@abstract Availability of the control of radio band. True: Available, False: Not
Available, Not present: Not Available.
Optional, Boolean
radioFrequencyAvailable
@abstract Availability of the control of radio frequency. True: Available, False:
Not Available, Not present: Not Available.
SWIFT
var radioEnableAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *radioBandAvailable;
SWIFT
var radioBandAvailable: (NSNumber & SDLBool)? { get set }
Optional, Boolean
hdChannelAvailable
@abstract Availability of the control of HD radio channel. True: Available, False:
Not Available, Not present: Not Available.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *radioFrequencyAvailable;
SWIFT
var radioFrequencyAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *hdChannelAvailable;
rdsDataAvailable
@abstract Availability of the getting Radio Data System (RDS) data. True:
Available, False: Not Available, Not present: Not Available.
Optional, Boolean
availableHDsAvailable
@abstract Availability of the getting the number of available HD channels. True:
Available, False: Not Available, Not present: Not Available.
SWIFT
var hdChannelAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *rdsDataAvailable;
SWIFT
var rdsDataAvailable: (NSNumber & SDLBool)? { get set }
Optional, Boolean
stateAvailable
@abstract Availability of the getting the Radio state. True: Available, False: Not
Available, Not present: Not Available.
Optional, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *availableHDsAvailable;
SWIFT
var availableHDsAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *stateAvailable;
signalStrengthAvailable
@abstract Availability of the getting the signal strength. True: Available, False:
Not Available, Not present: Not Available.
Optional, Boolean
signalChangeThresholdAvailable
@abstract Availability of the getting the signal Change Threshold True:
Available, False: Not Available, Not present: Not Available.
SWIFT
var stateAvailable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *signalStrengthAvailable;
SWIFT
var signalStrengthAvailable: (NSNumber & SDLBool)? { get set }
Optional, Boolean
SDLRadioControlData Class Reference
Section Contents
• -initWithFrequencyInteger:frequencyFraction:band:hdChannel:radioEnable:• frequencyInteger• frequencyFraction• band• rdsData• availableHDs• hdChannel• signalStrength• signalChangeThreshold
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *signalChangeThresholdAvailable;
SWIFT
var signalChangeThresholdAvailable: (NSNumber & SDLBool)? { get set }
• radioEnable• state
Overview
Include information (both read-only and changeable data) about a remote
control radio module.
-
initWithFrequencyInteger:frequencyFraction:band:hdChannel:radioEnable:
Undocumented
OBJECTIVE-C
- (instancetype)initWithFrequencyInteger:(nullable NSNumber<SDLInt> *)frequencyInteger frequencyFraction:(nullable NSNumber<SDLInt> *)frequencyFraction band:(nullable SDLRadioBand)band hdChannel:(nullable NSNumber<SDLInt> *)hdChannel radioEnable:(nullable NSNumber<SDLBool> *)radioEnable;
SWIFT
init(frequencyInteger: (NSNumber & SDLInt)?, frequencyFraction: (NSNumber & SDLInt)?, band: SDLRadioBand?, hdChannel: (NSNumber & SDLInt)?, radioEnable: (NSNumber & SDLBool)?)
frequencyInteger
@abstract The integer part of the frequency ie for 101.7 this value should be
101
Integer
frequencyFraction
@abstract The fractional part of the frequency for 101.7 is 7
Integer
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *frequencyInteger;
SWIFT
var frequencyInteger: (NSNumber & SDLInt)? { get set }
band
@abstract Radio band value
SDLRadioBand
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *frequencyFraction;
SWIFT
var frequencyFraction: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLRadioBand band;
rdsData
@abstract Read only parameter. See RDSData data type for details.
WarningThis property is readonly and cannot be set on the module. SDLRDSData
availableHDs
@abstract number of HD sub-channels if available
Warning
SWIFT
var band: SDLRadioBand? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLRDSData *rdsData;
SWIFT
var rdsData: SDLRDSData? { get set }
This property is readonly and cannot be set on the module. Integer value Min Value - 1 Max Value -3
hdChannel
@abstract Current HD sub-channel if available
Integer value Min Value - 1 Max Value -3
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *availableHDs;
SWIFT
var availableHDs: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *hdChannel;
signalStrength
@abstract Signal Strength Value
WarningThis property is readonly and cannot be set on the module. Integer value Min Value - 0 Max Value - 100
signalChangeThreshold
@abstract If the signal strength falls below the set value for this parameter, the
radio will tune to an alternative frequency
SWIFT
var hdChannel: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *signalStrength;
SWIFT
var signalStrength: (NSNumber & SDLInt)? { get set }
WarningThis property is readonly and cannot be set on the module. Integer value Min Value - 0 Max Value - 100
radioEnable
@abstract True if the radio is on, false is the radio is off. When the radio is
disabled, no data other than radioEnable is included in a GetInteriorVehicleData
response
Boolean value
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *signalChangeThreshold;
SWIFT
var signalChangeThreshold: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *radioEnable;
state
Read only parameter. See RadioState data type for details.
WarningThis property is readonly and cannot be set on the module. SDLRadioState
SWIFT
var radioEnable: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLRadioState state;
SWIFT
var state: SDLRadioState? { get set }
SDLReadDID Class Reference
Section Contents
• -initWithECUName:didLocation:• ecuName• didLocation
Overview
Non periodic vehicle data read request. This is an RPC to get diagnostics data
from certain vehicle modules. DIDs of a certain module might differ from
vehicle type to vehicle type
Function Group: ProprietaryData
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 2.0
-initWithECUName:didLocation:
Undocumented
OBJECTIVE-C
- (instancetype)initWithECUName:(UInt16)ecuNumber didLocation:(NSArray<NSNumber<SDLUInt> *> *)didLocation;
ecuName
@abstract An ID of the vehicle module
Notes: Minvalue:0; Maxvalue:65535
didLocation
@abstract Raw data from vehicle data DID location(s)
a Vector value representing raw data from vehicle data DID location(s)
SWIFT
init(ecuName ecuNumber: UInt16, didLocation: [NSNumber & SDLUInt])
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull ecuName;
SWIFT
var ecuName: NSNumber & SDLInt { get set }
Notes:
• Minvalue:0; Maxvalue:65535• ArrayMin:0; ArrayMax:1000
SDLReadDIDResponse Class Reference
Section Contents
• didResult
Overview
Read DID Response is sent, when ReadDID has been called
Since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<NSNumber<SDLInt> *> *_Nonnull didLocation;
SWIFT
var didLocation: [NSNumber & SDLInt] { get set }
didResult
Undocumented
SDLRectangle Class Reference
Section Contents
• -initWithX:y:width:height:• -initWithCGRect:• x• y• width• height
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<SDLDIDResult *> *didResult
SWIFT
var didResult: [SDLDIDResult]? { get set }
Overview
Undocumented
-initWithX:y:width:height:
Create a Rectangle
x
The top-left x value
OBJECTIVE-C
- (instancetype)initWithX:(float)x y:(float)y width:(float)width height:(float)height;
SWIFT
init!(x: Float, y: Float, width: Float, height: Float)
PARAMETERS
y
The top-left y value
width
The width
height
The height
An new SDLRectangle object
-initWithCGRect:
Create a Rectangle from a CGRect
RETURN VALUE
OBJECTIVE-C
- (instancetype)initWithCGRect:(CGRect)rect;
rect
The rectangle to use
An new SDLRectangle object
x
The X-coordinate of the user control Required, Float
SWIFT
init!(cgRect rect: CGRect)
PARAMETERS
RETURN VALUE
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *x;
y
The Y-coordinate of the user control Required, Float
width
The width of the user control’s bounding rectangle Required, Float
SWIFT
var x: (NSNumber & SDLFloat)! { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *y;
SWIFT
var y: (NSNumber & SDLFloat)! { get set }
height
The height of the user control’s bounding rectangle Required, Float
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *width;
SWIFT
var width: (NSNumber & SDLFloat)! { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *height;
SWIFT
var height: (NSNumber & SDLFloat)! { get set }
SDLRegisterAppInterface ClassReference
Section Contents
• -initWithLifecycleConfiguration:• -initWithAppName:appId:languageDesired:• -
initWithAppName:appId:languageDesired:isMediaApp:appType:shortAppName:• -
initWithAppName:appId:languageDesired:isMediaApp:appType:shortAppName:ttsName:vrSynonyms:hmiDis• syncMsgVersion• appName• ttsName• ngnMediaScreenAppName• vrSynonyms• isMediaApplication• languageDesired• hmiDisplayLanguageDesired• appHMIType• hashID• deviceInfo• appID• appInfo
Overview
Registers the application’s interface with SDL®, declaring properties of the
registration, including the messaging interface version, the app name, etc. The
mobile application must establish its interface registration with SDL before any
other interaction with SDL® can take place. The registration lasts until it is
terminated either by the application calling the SDLUnregisterAppInterface
method, or by SDL® sending an SDLOnAppInterfaceUnregistered notification,
or by loss of the underlying transport connection, or closing of the underlying
message transmission protocol RPC session
Until the application receives its first SDLOnHMIStatus Notification, its HMI
Status is assumed to be: SDLHMILevel=NONE, SDLAudioStreamingState
=NOT_AUDIBLE, SDLSystemContext=MAIN
All SDL® resources which the application creates or uses (e.g. Choice Sets,
Command Menu, etc.) are associated with the application’s interface
registration. Therefore, when the interface registration ends, the SDL®
resources associated with the application are disposed of. As a result, even
though the application itself may continue to run on its host platform (e.g.
mobile device) after the interface registration terminates, the application will
not be able to use the SDL® HMI without first establishing a new interface
registration and re-creating its required SDL® resources. That is, SDL®
resources created by (or on behalf of) an application do not persist beyond the
life-span of the interface registration
Resources and settings whose lifespan is tied to the duration of an application’s
interface registration:
• Choice Sets• Command Menus (built by successive calls to SDLAddCommand )• Media clock timer display value• Media clock timer display value• Media clock timer display value
The autoActivateID is used to grant an application the HMILevel and
AudioStreamingState it had when it last disconnected
Notes: The autoActivateID parameter, and associated behavior, is currently
ignored by SDL®
When first calling this method (i.e. first time within life cycle of mobile app), an
autoActivateID should not be included. After successfully registering an
interface, an autoActivateID is returned to the mobile application for it to use in
subsequent connections. If the connection between SDL® and the mobile
application is lost, such as the vehicle is turned off while the application is
running, the autoActivateID can then be passed in another call to
RegisterAppInterface to re-acquire SDLHMILevel=FULL
If the application intends to stream audio it is important to indicate so via the
isMediaApp parameter. When set to true, audio will reliably stream without any
configuration required by the user. When not set, audio may stream, depending
on what the user might have manually configured as a media source on SDL®
There is no time limit for how long the autoActivateID is “valid” (i.e. would
confer focus and opt-in)
HMILevel is not defined before registering
@since SDL 1.0
SeeSDLUnregisterAppInterface SDLOnAppInterfaceUnregistered
-initWithLifecycleConfiguration:
Undocumented
OBJECTIVE-C
- (instancetype)initWithLifecycleConfiguration:(SDLLifecycleConfiguration *)lifecycleConfiguration;
SWIFT
init(lifecycleConfiguration: SDLLifecycleConfiguration)
-initWithAppName:appId:languageDesired:
Undocumented
-
initWithAppName:appId:languageDesired:isMediaApp:appType:shortAppName:
Undocumented
OBJECTIVE-C
- (instancetype)initWithAppName:(NSString *)appName appId:(NSString *)appId languageDesired:(SDLLanguage)languageDesired;
SWIFT
init(appName: String, appId: String, languageDesired: SDLLanguage)
OBJECTIVE-C
- (instancetype)initWithAppName:(NSString *)appName appId:(NSString *)appId languageDesired:(SDLLanguage)languageDesired isMediaApp:(BOOL)isMediaApp appType:(SDLAppHMIType)appType shortAppName:(nullable NSString *)shortAppName;
-
initWithAppName:appId:languageDesired:isMediaApp:appType:shortAppName:t
Undocumented
SWIFT
init(appName: String, appId: String, languageDesired: SDLLanguage, isMediaApp: Bool, appType: SDLAppHMIType, shortAppName: String?)
OBJECTIVE-C
- (instancetype)initWithAppName:(NSString *)appName appId:(NSString *)appId languageDesired:(SDLLanguage)languageDesired isMediaApp:(BOOL)isMediaApp appType:(SDLAppHMIType)appType shortAppName:(nullable NSString *)shortAppName ttsName:(nullable NSArray<SDLTTSChunk *> *)ttsName vrSynonyms:(nullable NSArray<NSString *> *)vrSynonyms hmiDisplayLanguageDesired:(SDLLanguage)hmiDisplayLanguageDesired resumeHash:(nullable NSString *)resumeHash;
syncMsgVersion
@abstract The version of the SDL interface
Required
SWIFT
init(appName: String, appId: String, languageDesired: SDLLanguage, isMediaApp: Bool, appType: SDLAppHMIType, shortAppName: String?, ttsName: [SDLTTSChunk]?, vrSynonyms: [String]?, hmiDisplayLanguageDesired: SDLLanguage, resumeHash: String?)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLSyncMsgVersion *_Nonnull syncMsgVersion;
SWIFT
var syncMsgVersion: SDLSyncMsgVersion { get set }
appName
@abstract The Mobile Application’s Name, This name is displayed in the SDL
Mobile Applications menu. It also serves as the unique identifier of the
application for SmartDeviceLink
@discussion • Needs to be unique over all applications.• May not be empty.• May not start with a new line character.• May not interfere with any name or synonym of previously registered
applications and any predefined blacklist of words (global commands).• Needs to be unique over all applications. Applications with the same name will
be rejected.
Required, Max length 100 chars
ttsName
@abstract TTS string for VR recognition of the mobile application name.
@discussion Meant to overcome any failing on speech engine in properly
pronouncing / understanding app name.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull appName;
SWIFT
var appName: String { get set }
• Needs to be unique over all applications.• May not be empty.• May not start with a new line character.
Optional, Array of SDLTTSChunk, Array size 1 - 100
@since SDL 2.0
SeeSDLTTSChunk
ngnMediaScreenAppName
@abstract A String representing an abbreviated version of the mobile
application’s name (if necessary) that will be displayed on the media screen
@discussion If not provided, the appName is used instead (and will be
truncated if too long)
Optional, Max length 100 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *ttsName;
SWIFT
var ttsName: [SDLTTSChunk]? { get set }
vrSynonyms
@abstract Defines a additional voice recognition commands
@discussion May not interfere with any app name of previously registered
applications and any predefined blacklist of words (global commands)
Optional, Array of Strings, Array length 1 - 100, Max String length 40
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *ngnMediaScreenAppName;
SWIFT
var ngnMediaScreenAppName: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<NSString *> *vrSynonyms;
isMediaApplication
@abstract Indicates if the application is a media or a non-media application.
@discussion Only media applications will be able to stream audio to head units
that is audible outside of the BT media source.
Required, Boolean
SWIFT
var vrSynonyms: [String]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull isMediaApplication;
SWIFT
var isMediaApplication: NSNumber & SDLBool { get set }
languageDesired
@abstract A Language enumeration indicating what language the application
intends to use for user interaction (TTS and VR).
@discussion If there is a mismatch with the head unit, the app will be able to
change this registration with changeRegistration prior to app being brought into
focus.
Required
hmiDisplayLanguageDesired
@abstract An enumeration indicating what language the application intends to
use for user interaction (Display).
@discussion If there is a mismatch with the head unit, the app will be able to
change this registration with changeRegistration prior to app being brought into
focus.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull languageDesired;
SWIFT
var languageDesired: SDLLanguage { get set }
Required
@since SDL 2.0
appHMIType
@abstract A list of all applicable app types stating which classifications to be
given to the app.
Optional, Array of SDLAppHMIType, Array size 1 - 100
@since SDL 2.0
See
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull hmiDisplayLanguageDesired;
SWIFT
var hmiDisplayLanguageDesired: SDLLanguage { get set }
SDLAppHMIType
hashID
@abstract ID used to uniquely identify current state of all app data that can
persist through connection cycles (e.g. ignition cycles).
@discussion This registered data (commands, submenus, choice sets, etc.) can
be reestablished without needing to explicitly reregister each piece. If omitted,
then the previous state of an app’s commands, etc. will not be restored.
When sending hashID, all RegisterAppInterface parameters should still be
provided (e.g. ttsName, etc.).
Optional, max length 100 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLAppHMIType> *appHMIType;
SWIFT
var appHMIType: [SDLAppHMIType]? { get set }
deviceInfo
@abstract Information about the connecting device
Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *hashID;
SWIFT
var hashID: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLDeviceInfo *deviceInfo;
appID
@abstract ID used to validate app with policy table entries
Required, max length 100
@since SDL 2.0
appInfo
@abstract Information about the application running
SWIFT
var deviceInfo: SDLDeviceInfo? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull appID;
SWIFT
var appID: String { get set }
Optional
SDLRegisterAppInterfaceResponseClass Reference
Section Contents
• syncMsgVersion• language• hmiDisplayLanguage• displayCapabilities• buttonCapabilities• softButtonCapabilities• presetBankCapabilities• hmiZoneCapabilities
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLAppInfo *appInfo;
SWIFT
var appInfo: SDLAppInfo? { get set }
• speechCapabilities• prerecordedSpeech• vrCapabilities• audioPassThruCapabilities• pcmStreamCapabilities• vehicleType• supportedDiagModes• hmiCapabilities• sdlVersion• systemSoftwareVersion
Overview
@abstract Register AppInterface Response is sent, when
SDLRegisterAppInterface has been called
Since SmartDeviceLink 1.0
syncMsgVersion
SeeSDLSyncMsgVersion Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLSyncMsgVersion *syncMsgVersion;
language
The currently active VR+TTS language on Sync.
SeeSDLLanguage Optional
hmiDisplayLanguage
The currently active display language on Sync
See
SWIFT
var syncMsgVersion: SDLSyncMsgVersion? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLLanguage language;
SWIFT
var language: SDLLanguage? { get set }
SDLLanguage @since SmartDeviceLink 2.0 Optional
displayCapabilities
SeeSDLDisplayCapabilities Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLLanguage hmiDisplayLanguage;
SWIFT
var hmiDisplayLanguage: SDLLanguage? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLDisplayCapabilities *displayCapabilities;
buttonCapabilities
SeeSDLButtonCapabilities Optional, Array of length 1 - 100, of SDLButtonCapabilities
softButtonCapabilities
If returned, the platform supports on-screen SoftButtons
SeeSDLSoftButtonCapabilities
SWIFT
var displayCapabilities: SDLDisplayCapabilities? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLButtonCapabilities *> *buttonCapabilities;
SWIFT
var buttonCapabilities: [SDLButtonCapabilities]? { get set }
Optional, Array of length 1 - 100, of SDLSoftButtonCapabilities
presetBankCapabilities
If returned, the platform supports custom on-screen Presets
SeeSDLPresetBankCapabilities Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLSoftButtonCapabilities *> *softButtonCapabilities;
SWIFT
var softButtonCapabilities: [SDLSoftButtonCapabilities]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLPresetBankCapabilities *presetBankCapabilities;
hmiZoneCapabilities
SeeSDLHMIZoneCapabilities Optional, Array of length 1 - 100, of SDLHMIZoneCapabilities
speechCapabilities
SeeSDLSpeechCapabilities Optional, Array of length 1 - 100, of SDLSpeechCapabilities
SWIFT
var presetBankCapabilities: SDLPresetBankCapabilities? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLHMIZoneCapabilities> *hmiZoneCapabilities;
SWIFT
var hmiZoneCapabilities: [SDLHMIZoneCapabilities]? { get set }
prerecordedSpeech
SeeSDLPrerecordedSpeech Optional, Array of length 1 - 100, of SDLPrerecordedSpeech
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLSpeechCapabilities> *speechCapabilities;
SWIFT
var speechCapabilities: [SDLSpeechCapabilities]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLPrerecordedSpeech> *prerecordedSpeech;
vrCapabilities
SeeSDLVRCapabilities Optional, Array of length 1 - 100, of SDLVRCapabilities
audioPassThruCapabilities
SeeSDLAudioPassThruCapabilities Optional, Array of length 1 - 100, of SDLAudioPassThruCapabilities
SWIFT
var prerecordedSpeech: [SDLPrerecordedSpeech]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLVRCapabilities> *vrCapabilities;
SWIFT
var vrCapabilities: [SDLVRCapabilities]? { get set }
pcmStreamCapabilities
SeeSDLAudioPassThruCapabilities
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLAudioPassThruCapabilities *> *audioPassThruCapabilities;
SWIFT
var audioPassThruCapabilities: [SDLAudioPassThruCapabilities]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLAudioPassThruCapabilities *pcmStreamCapabilities;
vehicleType
Specifies the vehicle’s type
SeeSDLVehicleType Optional, Array of length 1 - 100, of SDLVehicleType
SWIFT
var pcmStreamCapabilities: SDLAudioPassThruCapabilities? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleType *vehicleType;
SWIFT
var vehicleType: SDLVehicleType? { get set }
supportedDiagModes
Specifies the white-list of supported diagnostic modes (0x00-0xFF) capable for
DiagnosticMessage requests. If a mode outside this list is requested, it will be
rejected.
Optional, Array of length 1 - 100, Integer 0 - 255
hmiCapabilities
SeeSDLHMICapabilities Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<NSNumber<SDLInt> *> *supportedDiagModes;
SWIFT
var supportedDiagModes: [NSNumber & SDLInt]? { get set }
sdlVersion
The SmartDeviceLink version
Optional, String max length 100
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLHMICapabilities *hmiCapabilities;
SWIFT
var hmiCapabilities: SDLHMICapabilities? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *sdlVersion;
systemSoftwareVersion
The software version of the system that implements the SmartDeviceLink core
Optional, String max length 100
SWIFT
var sdlVersion: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *systemSoftwareVersion;
SWIFT
var systemSoftwareVersion: String? { get set }
SDLRemoteControlCapabilities ClassReference
Section Contents
• -
initWithClimateControlCapabilities:radioControlCapabilities:buttonCapabilities:• climateControlCapabilities• radioControlCapabilities• buttonCapabilities
Overview
Undocumented
-
initWithClimateControlCapabilities:radioControlCapabilities:buttonCapabilities:
Undocumented
OBJECTIVE-C
- (instancetype)initWithClimateControlCapabilities:(nullable NSArray<SDLClimateControlCapabilities *> *)climateControlCapabilities radioControlCapabilities:(nullable NSArray<SDLRadioControlCapabilities *> *)radioControlCapabilities buttonCapabilities:(nullable NSArray<SDLButtonCapabilities *> *)buttonCapabilities;
climateControlCapabilities
@abstract If included, the platform supports RC climate controls. For this
baseline version, maxsize=1. i.e. only one climate control module is supported.
Optional, Array of SDLClimateControlCapabilities, Array length 1 - 100
SWIFT
init(climateControlCapabilities: [SDLClimateControlCapabilities]?, radioControlCapabilities: [SDLRadioControlCapabilities]?, buttonCapabilities: [SDLButtonCapabilities]?)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLClimateControlCapabilities *> *climateControlCapabilities;
SWIFT
var climateControlCapabilities: [SDLClimateControlCapabilities]? { get set }
radioControlCapabilities
@abstract If included, the platform supports RC radio controls. For this baseline
version, maxsize=1. i.e. only one radio control module is supported.
Optional, Array of SDLRadioControlCapabilities, Array length 1 - 100
buttonCapabilities
@abstract If included, the platform supports RC button controls with the
included button names.
Optional, Array of SDLButtonCapabilities, Array length 1 - 100
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLRadioControlCapabilities *> *radioControlCapabilities;
SWIFT
var radioControlCapabilities: [SDLRadioControlCapabilities]? { get set }
SDLResetGlobalProperties ClassReference
Section Contents
• -initWithProperties:• properties
Overview
Resets the passed global properties to their default values as defined by SDL
The HELPPROMPT global property default value is generated by SDL consists of
the first vrCommand of each Command Menu item defined at the moment PTT
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLButtonCapabilities *> *buttonCapabilities;
SWIFT
var buttonCapabilities: [SDLButtonCapabilities]? { get set }
is pressed
The TIMEOUTPROMPT global property default value is the same as the
HELPPROMPT global property default value
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 1.0 See SetGlobalProperties
-initWithProperties:
Undocumented
properties
@abstract An array of one or more GlobalProperty enumeration elements
indicating which global properties to reset to their default value
OBJECTIVE-C
- (instancetype)initWithProperties:(NSArray<SDLGlobalProperty> *)properties;
SWIFT
init(properties: [SDLGlobalProperty])
SDLScreenParams Class Reference
Section Contents
• resolution• touchEventAvailable
Overview
Undocumented
resolution
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLGlobalProperty> *_Nonnull properties;
SWIFT
var properties: [SDLGlobalProperty] { get set }
touchEventAvailable
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLImageResolution *resolution
SWIFT
var resolution: SDLImageResolution { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLTouchEventCapabilities *touchEventAvailable
SWIFT
var touchEventAvailable: SDLTouchEventCapabilities? { get set }
SDLScrollableMessage Class Reference
Section Contents
• -initWithMessage:• -initWithMessage:timeout:softButtons:• scrollableMessageBody• timeout• softButtons
Overview
Creates a full screen overlay containing a large block of formatted text that can
be scrolled with up to 8 SoftButtons defined
Function Group: ScrollableMessage
HMILevel needs to be FULL
-initWithMessage:
Undocumented
OBJECTIVE-C
- (instancetype)initWithMessage:(NSString *)message;
-initWithMessage:timeout:softButtons:
Undocumented
scrollableMessageBody
@abstract A Body of text that can include newlines and tabs @discussion A
String value representing the Body of text that can include newlines and tabs
Notes: Maxlength=500
SWIFT
init(message: String)
OBJECTIVE-C
- (instancetype)initWithMessage:(NSString *)message timeout:(UInt16)timeout softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(message: String, timeout: UInt16, softButtons: [SDLSoftButton]?)
timeout
@abstract Gets/Sets an App defined timeout. Indicates how long of a timeout in
milliseconds from the last action @discussion An Integer value representing an
App defined timeout in milliseconds
Notes:Minval=0; Maxval=65535;Default=30000
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull scrollableMessageBody;
SWIFT
var scrollableMessageBody: String { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *timeout;
softButtons
@abstract Gets/Sets App defined SoftButtons.If omitted on supported displays,
only the system defined “Close” SoftButton will be displayed @discussion A
Vector value representing App defined SoftButtons
Notes: Minsize=0, Maxsize=8
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLSoftButton *> *softButtons;
SWIFT
var softButtons: [SDLSoftButton]? { get set }
SDLSendHapticData Class Reference
Section Contents
• -initWithHapticRectData:• hapticRectData
Overview
Sends the spatial data gathered from SDLCarWindow or VirtualDisplayEncoder
to the HMI. This data will be utilized by the HMI to determine how and when
haptic events should occur.
-initWithHapticRectData:
Constructs a new SDLSendHapticData object indicated by the hapticSpatialData
parameter
OBJECTIVE-C
- (nonnull instancetype)initWithHapticRectData: (nonnull NSArray<SDLHapticRect *> *)hapticRectData;
SWIFT
init(hapticRectData: [SDLHapticRect])
hapticRectData
Array of spatial data structures
hapticRectData
Array of spatial data structures that represent the locations of all user controls
present on the HMI. This data should be updated if/when the application
presents a new screen. When a request is sent, if successful, it will replace all
spatial data previously sent through RPC. If an empty array is sent, the existing
spatial data will be cleared
Optional, Array of SDLHapticRect, Array size 0 - 1,000
PARAMETERS
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLHapticRect *> *hapticRectData;
SWIFT
var hapticRectData: [SDLHapticRect]? { get set }
SDLSendLocation Class Reference
Section Contents
• -
initWithLongitude:latitude:locationName:locationDescription:address:phoneNumber:image:• -
initWithLongitude:latitude:locationName:locationDescription:displayAddressLines:phoneNumber:image:deliv• longitudeDegrees• latitudeDegrees• locationName• locationDescription• addressLines• phoneNumber• locationImage• deliveryMode• timeStamp• address
Overview
Undocumented
-
initWithLongitude:latitude:locationName:locationDescription:address:phoneNum
Undocumented
-
initWithLongitude:latitude:locationName:locationDescription:displayAddressLin
Undocumented
OBJECTIVE-C
- (instancetype)initWithLongitude:(double)longitude latitude:(double)latitude locationName:(nullable NSString *)locationName locationDescription:(nullable NSString *)locationDescription address:(nullable NSArray<NSString *> *)address phoneNumber:(nullable NSString *)phoneNumber image:(nullable SDLImage *)image;
SWIFT
init(longitude: Double, latitude: Double, locationName: String?, locationDescription: String?, address: [String]?, phoneNumber: String?, image: SDLImage?)
longitudeDegrees
The longitudinal coordinate of the location.
Float, Required, -180.0 - 180.0
OBJECTIVE-C
- (instancetype)initWithLongitude:(double)longitude latitude:(double)latitude locationName:(nullable NSString *)locationName locationDescription:(nullable NSString *)locationDescription displayAddressLines:(nullable NSArray<NSString *> *)displayAddressLines phoneNumber:(nullable NSString *)phoneNumber image:(nullable SDLImage *)image deliveryMode:(nullable SDLDeliveryMode)deliveryMode timeStamp:(nullable SDLDateTime *)timeStamp address:(nullable SDLOasisAddress *)address;
SWIFT
init(longitude: Double, latitude: Double, locationName: String?, locationDescription: String?, displayAddressLines: [String]?, phoneNumber: String?, image: SDLImage?, deliveryMode: SDLDeliveryMode?, timeStamp: SDLDateTime?, address: SDLOasisAddress?)
latitudeDegrees
The latitudinal coordinate of the location.
Float, Required, -90.0 - 90.0
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSNumber<SDLFloat> *longitudeDegrees;
SWIFT
@NSCopying var longitudeDegrees: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSNumber<SDLFloat> *latitudeDegrees;
locationName
Name / title of intended location
Optional, Maxlength = 500 char
locationDescription
Description of the intended location / establishment
Optional, MaxLength = 500 char
SWIFT
@NSCopying var latitudeDegrees: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *locationName;
SWIFT
var locationName: String? { get set }
addressLines
Location address for display purposes only
Contains String, Optional, Max Array Length = 4, Max String Length = 500
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *locationDescription;
SWIFT
var locationDescription: String? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSArray<NSString *> *addressLines;
phoneNumber
Phone number of intended location / establishment
Optional, Max Length = 500
locationImage
Image / icon of intended location
Optional
SWIFT
var addressLines: [String]? { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSString *phoneNumber;
SWIFT
var phoneNumber: String? { get set }
deliveryMode
Mode in which the sendLocation request is sent
Optional
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImage *locationImage;
SWIFT
var locationImage: SDLImage? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLDeliveryMode deliveryMode;
timeStamp
Arrival time of Location. If multiple SendLocations are sent, this will be used for
sorting as well.
Optional
address
Address to be used for setting destination
SWIFT
var deliveryMode: SDLDeliveryMode? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLDateTime *timeStamp;
SWIFT
var timeStamp: SDLDateTime? { get set }
Optional
SDLSetAppIcon Class Reference
Section Contents
• -initWithFileName:• syncFileName
Overview
Used to set existing local file on SDL as the app’s icon. Not supported on first
generation SDL modules.
Since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLOasisAddress *address;
SWIFT
var address: SDLOasisAddress? { get set }
-initWithFileName:
Undocumented
syncFileName
@abstract A file reference name @discussion A String value representing a file
reference name
Notes: Maxlength=500
OBJECTIVE-C
- (instancetype)initWithFileName:(NSString *)fileName;
SWIFT
init(fileName: String)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull syncFileName;
SDLSetDisplayLayout Class Reference
Section Contents
• -initWithPredefinedLayout:• -initWithLayout:• displayLayout
Overview
Used to set an alternate display layout. If not sent, default screen for given
platform will be shown
Since SmartDeviceLink 2.0
-initWithPredefinedLayout:
Undocumented
SWIFT
var syncFileName: String { get set }
-initWithLayout:
Undocumented
OBJECTIVE-C
- (instancetype)initWithPredefinedLayout:(SDLPredefinedLayout)predefinedLayout;
SWIFT
init(predefinedLayout: SDLPredefinedLayout)
OBJECTIVE-C
- (instancetype)initWithLayout:(NSString *)displayLayout;
SWIFT
init(layout displayLayout: String)
displayLayout
@abstract A display layout. Predefined or dynamically created screen layout.
Currently only predefined screen layouts are defined. Predefined layouts
include: “ONSCREEN_PRESETS” Custom screen containing app-defined
onscreen presets. Currently defined for GEN2
SDLSetDisplayLayoutResponse ClassReference
Section Contents
• displayCapabilities• buttonCapabilities
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull displayLayout;
SWIFT
var displayLayout: String { get set }
• softButtonCapabilities• presetBankCapabilities
Overview
Set Display Layout Response is sent, when SetDisplayLayout has been called
Since SmartDeviceLink 2.0
displayCapabilities
Undocumented
buttonCapabilities
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLDisplayCapabilities *displayCapabilities
SWIFT
var displayCapabilities: SDLDisplayCapabilities? { get set }
softButtonCapabilities
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<SDLButtonCapabilities *> *buttonCapabilities
SWIFT
var buttonCapabilities: [SDLButtonCapabilities]? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<SDLSoftButtonCapabilities *> *softButtonCapabilities
SWIFT
var softButtonCapabilities: [SDLSoftButtonCapabilities]? { get set }
presetBankCapabilities
Undocumented
SDLSetGlobalProperties ClassReference
Section Contents
• -initWithHelpText:timeoutText:• -initWithHelpText:timeoutText:vrHelpTitle:vrHelp:• -
initWithHelpText:timeoutText:vrHelpTitle:vrHelp:menuTitle:menuIcon:keyboardProperties:• helpPrompt
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLPresetBankCapabilities *presetBankCapabilities
SWIFT
var presetBankCapabilities: SDLPresetBankCapabilities? { get set }
• timeoutPrompt• vrHelpTitle• vrHelp• menuTitle• menuIcon• keyboardProperties
Overview
Sets value(s) for the specified global property(ies)
Function Group: Base
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 1.0 See SDLResetGlobalProperties
-initWithHelpText:timeoutText:
Undocumented
OBJECTIVE-C
- (instancetype)initWithHelpText:(nullable NSString *)helpText timeoutText:(nullable NSString *)timeoutText;
SWIFT
init(helpText: String?, timeoutText: String?)
-initWithHelpText:timeoutText:vrHelpTitle:vrHelp:
Undocumented
-
initWithHelpText:timeoutText:vrHelpTitle:vrHelp:menuTitle:menuIcon:keyboard
Undocumented
OBJECTIVE-C
- (instancetype)initWithHelpText:(nullable NSString *)helpText timeoutText:(nullable NSString *)timeoutText vrHelpTitle:(nullable NSString *)vrHelpTitle vrHelp:(nullable NSArray<SDLVRHelpItem *> *)vrHelp;
SWIFT
init(helpText: String?, timeoutText: String?, vrHelpTitle: String?, vrHelp: [SDLVRHelpItem]?)
helpPrompt
@abstract Sets a Vector for Help Prompt that Array of one or more TTSChunk
elements specifying the help prompt used in an interaction started by PTT
@discussion helpPrompt a Vector of one or more TTSChunk elements
Notes:
• Array must have at least one element• Only optional it timeoutPrompt has been specified
OBJECTIVE-C
- (instancetype)initWithHelpText:(nullable NSString *)helpText timeoutText:(nullable NSString *)timeoutText vrHelpTitle:(nullable NSString *)vrHelpTitle vrHelp:(nullable NSArray<SDLVRHelpItem *> *)vrHelp menuTitle:(nullable NSString *)menuTitle menuIcon:(nullable SDLImage *)menuIcon keyboardProperties:(nullable SDLKeyboardProperties *)keyboardProperties;
SWIFT
init(helpText: String?, timeoutText: String?, vrHelpTitle: String?, vrHelp: [SDLVRHelpItem]?, menuTitle: String?, menuIcon: SDLImage?, keyboardProperties: SDLKeyboardProperties?)
timeoutPrompt
@abstract A Vector for Timeout Prompt representing Array of one or more
TTSChunk elements specifying the help prompt used in an interaction started
by PTT
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *helpPrompt;
SWIFT
var helpPrompt: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTTSChunk *> *timeoutPrompt;
vrHelpTitle
@abstract Sets a voice recognition Help Title
@discussion A String value representing a voice recognition Help Title
Notes:
• If omitted on supported displays, the default SDL help title will be used• If omitted and one or more vrHelp items are provided, the request will be
rejected.• String Maxlength = 500
@since SmartDeviceLink 2.0
SWIFT
var timeoutPrompt: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *vrHelpTitle;
SWIFT
var vrHelpTitle: String? { get set }
vrHelp
@abstract Sets the items listed in the VR help screen used in an interaction
started by PTT
@discussion A Vector value representing items listed in the VR help screen
used in an interaction started by PTT
Notes:
• If omitted on supported displays, the default SmartDeviceLink VR help /
What Can I Say? screen will be used• If the list of VR Help Items contains nonsequential positions (e.g. [1,2,4]),
the RPC will be rejected• If omitted and a vrHelpTitle is provided, the request will be rejected• Array Minsize: = 1• Array Maxsize = 100
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLVRHelpItem *> *vrHelp;
SWIFT
var vrHelp: [SDLVRHelpItem]? { get set }
menuTitle
Undocumented
menuIcon
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *menuTitle
SWIFT
var menuTitle: String? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLImage *menuIcon
keyboardProperties
Undocumented
SWIFT
var menuIcon: SDLImage? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLKeyboardProperties *keyboardProperties
SWIFT
var keyboardProperties: SDLKeyboardProperties? { get set }
SDLSetInteriorVehicleData ClassReference
Section Contents
• -initWithModuleData:• moduleData
Overview
This RPC allows a remote control type mobile application to change the settings
of a specific remote control module.
-initWithModuleData:
Undocumented
OBJECTIVE-C
- (instancetype)initWithModuleData:(SDLModuleData *)moduleData;
SWIFT
init(moduleData: SDLModuleData)
moduleData
The module data to set for the requested RC module.
SDLSetInteriorVehicleDataResponseClass Reference
Section Contents
• moduleData
Overview
Used to set the values of one remote control module
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLModuleData *_Nonnull moduleData;
SWIFT
var moduleData: SDLModuleData { get set }
moduleData
The module data to set for the requested remote control module.
SDLSetMediaClockTimer ClassReference
Section Contents
• -initWithUpdateMode:hours:minutes:seconds:• -initWithUpdateMode:• startTime• endTime• updateMode
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLModuleData *_Nonnull moduleData;
SWIFT
var moduleData: SDLModuleData { get set }
Overview
Sets the media clock/timer value and the update method (e.g.count-up, count-
down, etc.)
Function Group: Base
HMILevel needs to be FULL, LIMITIED or BACKGROUND
Since SmartDeviceLink 1.0
-initWithUpdateMode:hours:minutes:seconds:
Undocumented
-initWithUpdateMode:
Undocumented
OBJECTIVE-C
- (instancetype)initWithUpdateMode:(SDLUpdateMode)updateMode hours:(UInt8)hours minutes:(UInt8)minutes seconds:(UInt8)seconds;
SWIFT
init(updateMode: SDLUpdateMode, hours: UInt8, minutes: UInt8, seconds: UInt8)
startTime
@abstract A Start Time with specifying hour, minute, second values
@discussion A startTime object with specifying hour, minute, second values
Notes:
• If “updateMode” is COUNTUP or COUNTDOWN, this parameter must be
provided• Will be ignored for PAUSE/RESUME and CLEAR
OBJECTIVE-C
- (instancetype)initWithUpdateMode:(SDLUpdateMode)updateMode;
SWIFT
init(updateMode: SDLUpdateMode)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLStartTime *startTime;
endTime
@abstract An END time of type SDLStartTime, specifying hour, minute, second
values
@discussion An SDLStartTime object with specifying hour, minute, second
values
SWIFT
var startTime: SDLStartTime? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLStartTime *endTime;
SWIFT
var endTime: SDLStartTime? { get set }
updateMode
@abstract The media clock/timer update mode (COUNTUP/COUNTDOWN/
PAUSE/RESUME)
@discussion a Enumeration value (COUNTUP/COUNTDOWN/PAUSE/RESUME)
Notes:
• When updateMode is PAUSE, RESUME or CLEAR, the start time value is
ignored• When updateMode is RESUME, the timer resumes counting from the
timer’s value when it was paused
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLUpdateMode _Nonnull updateMode;
SWIFT
var updateMode: SDLUpdateMode { get set }
SDLShow Class Reference
Section Contents
• -initWithMainField1:mainField2:alignment:• -initWithMainField1:mainField1Type:mainField2:mainField2Type:alignment:• -initWithMainField1:mainField2:mainField3:mainField4:alignment:• -
initWithMainField1:mainField1Type:mainField2:mainField2Type:mainField3:mainField3Type:mainField4:mainF• -
initWithMainField1:mainField2:alignment:statusBar:mediaClock:mediaTrack:• -
initWithMainField1:mainField2:mainField3:mainField4:alignment:statusBar:mediaClock:mediaTrack:graphic:s• mainField1• mainField2• mainField3• mainField4• alignment• statusBar• mediaClock• mediaTrack• graphic• secondaryGraphic• softButtons• customPresets• metadataTags
Overview
Updates the application’s display text area, regardless of whether or not this
text area is visible to the user at the time of the request. The application’s
display text area remains unchanged until updated by subsequent calls to Show
The content of the application’s display text area is visible to the user when the
application is FULL or LIMITED, and the SDLSystemContext=MAIN and no
SDLAlert is in progress
The Show operation cannot be used to create an animated scrolling screen. To
avoid distracting the driver, Show commands cannot be issued more than once
every 4 seconds. Requests made more frequently than this will be rejected
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 1.0 See SDLAlert SDLSetMediaClockTimer
-initWithMainField1:mainField2:alignment:
Undocumented
OBJECTIVE-C
- (instancetype)initWithMainField1:(nullable NSString *)mainField1 mainField2:(nullable NSString *)mainField2 alignment:(nullable SDLTextAlignment)alignment;
SWIFT
init(mainField1: String?, mainField2: String?, alignment: SDLTextAlignment?)
-
initWithMainField1:mainField1Type:mainField2:mainField2Type:alignment:
Undocumented
-
initWithMainField1:mainField2:mainField3:mainField4:alignment:
Undocumented
OBJECTIVE-C
- (instancetype)initWithMainField1:(nullable NSString *)mainField1 mainField1Type:(nullable SDLMetadataType)mainField1Type mainField2:(nullable NSString *)mainField2 mainField2Type:(nullable SDLMetadataType)mainField2Type alignment:(nullable SDLTextAlignment)alignment;
SWIFT
init(mainField1: String?, mainField1Type: SDLMetadataType?, mainField2: String?, mainField2Type: SDLMetadataType?, alignment: SDLTextAlignment?)
-
initWithMainField1:mainField1Type:mainField2:mainField2Type:mainField3:main
Undocumented
OBJECTIVE-C
- (instancetype)initWithMainField1:(nullable NSString *)mainField1 mainField2:(nullable NSString *)mainField2 mainField3:(nullable NSString *)mainField3 mainField4:(nullable NSString *)mainField4 alignment:(nullable SDLTextAlignment)alignment;
SWIFT
init(mainField1: String?, mainField2: String?, mainField3: String?, mainField4: String?, alignment: SDLTextAlignment?)
-
initWithMainField1:mainField2:alignment:statusBar:mediaClock:mediaTrack:
Undocumented
OBJECTIVE-C
- (instancetype)initWithMainField1:(nullable NSString *)mainField1 mainField1Type:(nullable SDLMetadataType)mainField1Type mainField2:(nullable NSString *)mainField2 mainField2Type:(nullable SDLMetadataType)mainField2Type mainField3:(nullable NSString *)mainField3 mainField3Type:(nullable SDLMetadataType)mainField3Type mainField4:(nullable NSString *)mainField4 mainField4Type:(nullable SDLMetadataType)mainField4Type alignment:(nullable SDLTextAlignment)alignment;
SWIFT
init(mainField1: String?, mainField1Type: SDLMetadataType?, mainField2: String?, mainField2Type: SDLMetadataType?, mainField3: String?, mainField3Type: SDLMetadataType?, mainField4: String?, mainField4Type: SDLMetadataType?, alignment: SDLTextAlignment?)
-
initWithMainField1:mainField2:mainField3:mainField4:alignment:statusBar:med
Undocumented
OBJECTIVE-C
- (instancetype)initWithMainField1:(nullable NSString *)mainField1 mainField2:(nullable NSString *)mainField2 alignment:(nullable SDLTextAlignment)alignment statusBar:(nullable NSString *)statusBar mediaClock:(nullable NSString *)mediaClock mediaTrack:(nullable NSString *)mediaTrack;
SWIFT
init(mainField1: String?, mainField2: String?, alignment: SDLTextAlignment?, statusBar: String?, mediaClock: String?, mediaTrack: String?)
mainField1
@abstract The text displayed in a single-line display, or in the upper display
line in a two-line display @discussion The String value representing the text
displayed in a single-line display, or in the upper display line in a two-line
display
Notes:
• If this parameter is omitted, the text of mainField1 does not change
OBJECTIVE-C
- (instancetype)initWithMainField1:(nullable NSString *)mainField1 mainField2:(nullable NSString *)mainField2 mainField3:(nullable NSString *)mainField3 mainField4:(nullable NSString *)mainField4 alignment:(nullable SDLTextAlignment)alignment statusBar:(nullable NSString *)statusBar mediaClock:(nullable NSString *)mediaClock mediaTrack:(nullable NSString *)mediaTrack graphic:(nullable SDLImage *)graphic softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons customPresets:(nullable NSArray<NSString *> *)customPresets textFieldMetadata:(nullable SDLMetadataTags *)metadata;
SWIFT
init(mainField1: String?, mainField2: String?, mainField3: String?, mainField4: String?, alignment: SDLTextAlignment?, statusBar: String?, mediaClock: String?, mediaTrack: String?, graphic: SDLImage?, softButtons: [SDLSoftButton]?, customPresets: [String]?, textFieldMetadata metadata: SDLMetadataTags?)
• If this parameter is an empty string, the field will be cleared
mainField2
@abstract The text displayed on the second display line of a two-line display
@discussion The String value representing the text displayed on the second
display line of a two-line display
Notes:
• If this parameter is omitted, the text of mainField2 does not change• If this parameter is an empty string, the field will be cleared• If provided and the display is a single-line display, the parameter is
ignored• Maxlength = 500
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *mainField1;
SWIFT
var mainField1: String? { get set }
mainField3
@abstract The text displayed on the first display line of the second page
@discussion The String value representing the text displayed on the first
display line of the second page
Notes:
• If this parameter is omitted, the text of mainField3 does not change• If this parameter is an empty string, the field will be cleared• If provided and the display is a single-line display, the parameter is
ignored• Maxlength = 500
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *mainField2;
SWIFT
var mainField2: String? { get set }
mainField4
@abstract The text displayed on the second display line of the second page
@discussion The String value representing the text displayed on the second
display line of the second page
Notes:
• If this parameter is omitted, the text of mainField4 does not change• If this parameter is an empty string, the field will be cleared• If provided and the display is a single-line display, the parameter is
ignored• Maxlength = 500
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *mainField3;
SWIFT
var mainField3: String? { get set }
alignment
@abstract The alignment that Specifies how mainField1 and mainField2 text
should be aligned on display
@discussion An Enumeration value
Notes:
• Applies only to mainField1 and mainField2 provided on this call, not to
what is already showing in display• If this parameter is omitted, text in both mainField1 and mainField2 will be
centered• Has no effect with navigation display
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *mainField4;
SWIFT
var mainField4: String? { get set }
statusBar
@abstract Text in the Status Bar
@discussion A String representing the text you want to add in the Status Bar
Notes: The status bar only exists on navigation displays
• If this parameter is omitted, the status bar text will remain unchanged• If this parameter is an empty string, the field will be cleared• If provided and the display has no status bar, this parameter is ignored
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLTextAlignment alignment;
SWIFT
var alignment: SDLTextAlignment? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *statusBar;
mediaClock
@abstract This property is deprecated use SetMediaClockTimer instead.
The value for the MediaClock field using a format described in the
MediaClockFormat enumeration
@discussion A String value for the MediaClock
Notes:
• Must be properly formatted as described in the MediaClockFormat
enumeration• If a value of five spaces is provided, this will clear that field on the display
(i.e. the media clock timer field will not display anything)
SWIFT
var statusBar: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *mediaClock;
mediaTrack
@abstract The text in the track field
@discussion A String value disaplayed in the track field
Notes:
• If parameter is omitted, the track field remains unchanged• If an empty string is provided, the field will be cleared• This field is only valid for media applications on navigation displays
SWIFT
var mediaClock: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *mediaTrack;
SWIFT
var mediaTrack: String? { get set }
graphic
@abstract An image to be shown on supported displays
@discussion The value representing the image shown on supported displays
Notes: If omitted on supported displays, the displayed graphic shall not
change
@since SmartDeviceLink 2.0
secondaryGraphic
@abstract An image to be shown on supported displays
@discussion The value representing the image shown on supported displays
Notes: If omitted on supported displays, the displayed graphic shall not
change
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImage *graphic;
SWIFT
var graphic: SDLImage? { get set }
softButtons
@abstract The the Soft buttons defined by the App
@discussion A Vector value represemting the Soft buttons defined by the App
Notes:
• If omitted on supported displays, the currently displayed SoftButton
values will not change• Array Minsize: 0• Array Maxsize: 8
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImage *secondaryGraphic;
SWIFT
var secondaryGraphic: SDLImage? { get set }
customPresets
@abstract The Custom Presets defined by the App
@discussion A Vector value representing the Custom Presets defined by the
App
• If omitted on supported displays, the presets will be shown as not defined• Array Minsize: 0• Array Maxsize: 6
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLSoftButton *> *softButtons;
SWIFT
var softButtons: [SDLSoftButton]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<NSString *> *customPresets;
metadataTags
@abstract Text Field Metadata
@discussion A Vector value representing the Custom Presets defined by the
App
App defined metadata information. See MetadataStruct. Uses mainField1,
mainField2, mainField3, mainField4. If omitted on supported displays, the
currently set metadata tags will not change. If any text field contains no tags or
the none tag, the metadata tag for that textfield should be removed. @since
SmartDeviceLink 2.0
SWIFT
var customPresets: [String]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLMetadataTags *metadataTags;
SWIFT
var metadataTags: SDLMetadataTags? { get set }
SDLShowConstantTBT Class Reference
Section Contents
• -
initWithNavigationText1:navigationText2:eta:timeToDestination:totalDistance:turnIcon:nextTurnIcon:distance• navigationText1• navigationText2• eta• timeToDestination• totalDistance• turnIcon• nextTurnIcon• distanceToManeuver• distanceToManeuverScale• maneuverComplete• softButtons
Overview
This RPC is used to update the user with navigation information
• for the constantly shown screen (base screen),but also for the• alert type screen. *• @since SmartDeviceLink 2.0
-
initWithNavigationText1:navigationText2:eta:timeToDestination:totalDistance:tu
Undocumented
navigationText1
Undocumented
OBJECTIVE-C
- (instancetype)initWithNavigationText1:(nullable NSString *)navigationText1 navigationText2:(nullable NSString *)navigationText2 eta:(nullable NSString *)eta timeToDestination:(nullable NSString *)timeToDestination totalDistance:(nullable NSString *)totalDistance turnIcon:(nullable SDLImage *)turnIcon nextTurnIcon:(nullable SDLImage *)nextTurnIcon distanceToManeuver:(double)distanceToManeuver distanceToManeuverScale:(double)distanceToManeuverScale maneuverComplete:(BOOL)maneuverComplete softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(navigationText1: String?, navigationText2: String?, eta: String?, timeToDestination: String?, totalDistance: String?, turnIcon: SDLImage?, nextTurnIcon: SDLImage?, distanceToManeuver: Double, distanceToManeuverScale: Double, maneuverComplete: Bool, softButtons: [SDLSoftButton]?)
navigationText2
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *navigationText1
SWIFT
var navigationText1: String? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *navigationText2
SWIFT
var navigationText2: String? { get set }
eta
Undocumented
timeToDestination
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *eta
SWIFT
var eta: String? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *timeToDestination
totalDistance
Undocumented
turnIcon
Undocumented
SWIFT
var timeToDestination: String? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *totalDistance
SWIFT
var totalDistance: String? { get set }
nextTurnIcon
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLImage *turnIcon
SWIFT
var turnIcon: SDLImage? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLImage *nextTurnIcon
SWIFT
var nextTurnIcon: SDLImage? { get set }
distanceToManeuver
Undocumented
distanceToManeuverScale
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLFloat> *distanceToManeuver
SWIFT
var distanceToManeuver: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLFloat> *distanceToManeuverScale
maneuverComplete
Undocumented
softButtons
Undocumented
SWIFT
var distanceToManeuverScale: (NSNumber & SDLFloat)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *maneuverComplete
SWIFT
var maneuverComplete: (NSNumber & SDLBool)? { get set }
SDLSingleTireStatus Class Reference
Section Contents
• status
Overview
Tire pressure status of a single tire.
@since SmartDeviceLink 2.0
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSArray<SDLSoftButton *> *softButtons
SWIFT
var softButtons: [SDLSoftButton]? { get set }
status
@abstract The volume status of a single tire
SDLSlider Class Reference
Section Contents
• -initWithNumTicks:position:• -initWithNumTicks:position:sliderHeader:sliderFooter:timeout:• -initWithNumTicks:position:sliderHeader:sliderFooters:timeout:• numTicks• position• sliderHeader• sliderFooter
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLComponentVolumeStatus _Nonnull status;
SWIFT
var status: SDLComponentVolumeStatus { get set }
• timeout
Overview
Creates a full screen or pop-up overlay (depending on platform) with a single
user controlled slider
HMILevel needs to be FULL
Since SmartDeviceLink 2.0
-initWithNumTicks:position:
Create an SDLSlider with only the number of ticks and position. Note that this is
not enough to get a SUCCESS response. You must supply additional data. See
below for required parameters.
OBJECTIVE-C
- (nonnull instancetype)initWithNumTicks:(UInt8)numTicks position:(UInt8)position;
SWIFT
init(numTicks: UInt8, position: UInt8)
numTicks
The number of ticks present on the slider.
position
The default starting position of the slider.
An SDLSlider RPC Request.
-
initWithNumTicks:position:sliderHeader:sliderFooter:timeout:
Create an SDLSlider with all required data and a static footer (or no footer).
PARAMETERS
RETURN VALUE
OBJECTIVE-C
- (nonnull instancetype)initWithNumTicks:(UInt8)numTicks position:(UInt8)position sliderHeader:(nonnull NSString *)sliderHeader sliderFooter:(nullable NSString *)sliderFooter timeout:(UInt16)timeout;
numTicks
The number of ticks present on the slider.
position
The default starting position of the slider.
sliderHeader
The header describing the slider.
sliderFooter
A static footer with text, or nil for no footer.
timeout
The length of time in milliseconds the popup should be displayed
before automatically disappearing.
SWIFT
init(numTicks: UInt8, position: UInt8, sliderHeader: String, sliderFooter: String?, timeout: UInt16)
PARAMETERS
An SDLSlider RPC Request.
-
initWithNumTicks:position:sliderHeader:sliderFooters:timeout:
Create an SDLSlider with all required data and a dynamic footer (or no footer).
RETURN VALUE
OBJECTIVE-C
- (nonnull instancetype)initWithNumTicks:(UInt8)numTicks position:(UInt8)position sliderHeader:(nonnull NSString *)sliderHeader sliderFooters: (nullable NSArray<NSString *> *)sliderFooters timeout:(UInt16)timeout;
SWIFT
init(numTicks: UInt8, position: UInt8, sliderHeader: String, sliderFooters: [String]?, timeout: UInt16)
numTicks
The number of ticks present on the slider.
position
The default starting position of the slider.
sliderHeader
The header describing the slider.
sliderFooters
An array of footers. This should be the same length as numTicks as
each footer should correspond to a tick, or no footer if nil.
timeout
The length of time in milliseconds the popup should be displayed
before automatically disappearing.
An SDLSlider RPC Request.
PARAMETERS
RETURN VALUE
numTicks
@abstract Represents a number of selectable items on a horizontal axis
Required, Integer, 2 - 26
position
@abstract An Initial position of slider control
Required, Integer, 1 - 26
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull numTicks;
SWIFT
var numTicks: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull position;
sliderHeader
@abstract A text header to display
Required, Max length 500 chars
sliderFooter
@abstract A text footer to display
SWIFT
var position: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull sliderHeader;
SWIFT
var sliderHeader: String { get set }
@discussion For a static text footer, only one footer string shall be provided in
the array.
For a dynamic text footer, the number of footer text string in the array must
match the numTicks value.
For a dynamic text footer, text array string should correlate with potential slider
position index.
If omitted on supported displays, no footer text shall be displayed.
Optional, Array of Strings, Array length 1 - 26, Max string length 500 chars
timeout
@abstract An App defined timeout in milliseconds
@discussion Indicates how long of a timeout from the last action (i.e. sliding
control resets timeout).
If omitted, the value is set to 10000.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<NSString *> *sliderFooter;
SWIFT
var sliderFooter: [String]? { get set }
Optional, Integer, 1000 - 65535
SDLSliderResponse Class Reference
Section Contents
• sliderPosition
Overview
Slider Response is sent, when Slider has been called
Since SmartDeviceLink 2.0
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *timeout;
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
sliderPosition
@abstract The selected position of the slider.
SDLSoftButton Class Reference
Section Contents
• -initWithHandler:• -initWithType:text:image:highlighted:buttonId:systemAction:handler:• handler• type• text• image• isHighlighted
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *sliderPosition;
SWIFT
var sliderPosition: (NSNumber & SDLInt)? { get set }
• softButtonID• systemAction
Overview
Undocumented
-initWithHandler:
Undocumented
-
initWithType:text:image:highlighted:buttonId:systemAction:handler:
Undocumented
OBJECTIVE-C
- (instancetype)initWithHandler:(nullable SDLRPCButtonNotificationHandler)handler;
SWIFT
init(handler: SDLRPCButtonNotificationHandler? = nil)
handler
Undocumented
OBJECTIVE-C
- (instancetype)initWithType:(SDLSoftButtonType)type text:(nullable NSString *)text image:(nullable SDLImage *)image highlighted:(BOOL)highlighted buttonId:(UInt16)buttonId systemAction:(nullable SDLSystemAction)systemAction handler:(nullable SDLRPCButtonNotificationHandler)handler;
SWIFT
init(type: SDLSoftButtonType, text: String?, image: SDLImage?, highlighted: Bool, buttonId: UInt16, systemAction: SDLSystemAction?, handler: SDLRPCButtonNotificationHandler? = nil)
OBJECTIVE-C
@property (copy, nonatomic) SDLRPCButtonNotificationHandler handler
type
Undocumented
text
Undocumented
SWIFT
var handler: SDLRPCButtonNotificationHandler { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSoftButtonType type
SWIFT
var type: SDLSoftButtonType { get set }
image
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *text
SWIFT
var text: String? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLImage *image
SWIFT
var image: SDLImage? { get set }
isHighlighted
Undocumented
softButtonID
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *isHighlighted
SWIFT
var isHighlighted: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *softButtonID
systemAction
Undocumented
SWIFT
var softButtonID: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLSystemAction systemAction
SWIFT
var systemAction: SDLSystemAction? { get set }
SDLSoftButtonCapabilities ClassReference
Section Contents
• shortPressAvailable• longPressAvailable• upDownAvailable• imageSupported
Overview
Contains information about a SoftButton’s capabilities.
@since SDL 2.0
shortPressAvailable
@abstract The button supports a short press.
@discussion Whenever the button is pressed short, onButtonPressed(SHORT)
will be invoked.
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull shortPressAvailable;
longPressAvailable
@abstract The button supports a LONG press.
@discussion Whenever the button is pressed long, onButtonPressed(LONG) will
be invoked.
Required, Boolean
SWIFT
var shortPressAvailable: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull longPressAvailable;
SWIFT
var longPressAvailable: NSNumber & SDLBool { get set }
upDownAvailable
@abstract The button supports “button down” and “button up”.
@discussion Whenever the button is pressed, onButtonEvent(DOWN) will be
invoked. Whenever the button is released, onButtonEvent(UP) will be invoked.
Required, Boolean
imageSupported
@abstract The button supports referencing a static or dynamic image.
Required, Boolean
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull upDownAvailable;
SWIFT
var upDownAvailable: NSNumber & SDLBool { get set }
SDLSpeak Class Reference
Section Contents
• -initWithTTS:• -initWithTTSChunks:• ttsChunks
Overview
Speaks a phrase over the vehicle audio system using SDL’s TTS (text-to-
speech) engine. The provided text to be spoken can be simply a text phrase, or
it can consist of phoneme specifications to direct SDL’s TTS engine to speak a “
speech-sculpted” phrase.
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLBool> *_Nonnull imageSupported;
SWIFT
var imageSupported: NSNumber & SDLBool { get set }
Receipt of the Response indicates the completion of the Speak operation,
regardless of how the Speak operation may have completed (i.e. successfully,
interrupted, terminated, etc.).
Requesting a new Speak operation while the application has another Speak
operation already in progress (i.e. no corresponding Response for that in-
progress Speak operation has been received yet) will terminate the in-progress
Speak operation (causing its corresponding Response to be sent by SDL) and
begin the requested Speak operation
Requesting a new Speak operation while the application has an SDLAlert
operation already in progress (i.e. no corresponding Response for that in-
progress SDLAlert operation has been received yet) will result in the Speak
operation request being rejected (indicated in the Response to the Request)
Requesting a new SDLAlert operation while the application has a Speak
operation already in progress (i.e. no corresponding Response for that in-
progress Speak operation has been received yet) will terminate the in-progress
Speak operation (causing its corresponding Response to be sent by SDL) and
begin the requested SDLAlert operation
Requesting a new Speak operation while the application has a
SDLPerformInteraction operation already in progress (i.e. no corresponding
Response for that in-progress SDLPerformInteraction operation has been
received yet) will result in the Speak operation request being rejected
(indicated in the Response to the Request)
Requesting a SDLPerformInteraction operation while the application has a
Speak operation already in progress (i.e. no corresponding Response for that in-
progress Speak operation has been received yet) will terminate the in-progress
Speak operation (causing its corresponding Response to be sent by SDL) and
begin the requested SDLPerformInteraction operation
HMI Status Requirements: • HMILevel: FULL, Limited• AudioStreamingState: Any• SystemContext: MAIN, MENU, VR
Notes: • When SDLAlert is issued with MENU in effect, SDLAlert is queued and “played”
when MENU interaction is completed (i.e. SystemContext reverts to MAIN).
When SDLAlert is issued with VR in effect, SDLAlert is queued and “played”when VR interaction is completed (i.e. SystemContext reverts to MAIN)
• When both SDLAlert and Speak are queued during MENU or VR, they are “played” back in the order in which they were queued, with all existing rules for “collisions” still in effect
Additional Notes: • Total character limit depends on platform.• Chunks are limited to 500 characters; however you can have multiple TTS
chunks.• On old systems there is a total character limit of 500 characters across all
chunks. This could vary according to the VCA.
@since SmartDeviceLink 1.0
SeeSDLAlert
-initWithTTS:
Undocumented
-initWithTTSChunks:
Undocumented
OBJECTIVE-C
- (instancetype)initWithTTS:(NSString *)ttsText;
SWIFT
init(tts ttsText: String)
ttsChunks
@abstract An array of TTSChunk structs which, taken together, specify the
phrase to be spoken
@discussion The total length of the phrase composed from the ttsChunks
provided must be less than 500 characters or the request will be rejected
Required, Array of SDLTTSChunk, Array size 1 - 100
SeeSDLTTSChunk
OBJECTIVE-C
- (instancetype)initWithTTSChunks:(NSArray<SDLTTSChunk *> *)ttsChunks;
SWIFT
init(ttsChunks: [SDLTTSChunk])
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLTTSChunk *> *_Nonnull ttsChunks;
SDLStartTime Class Reference
Section Contents
• -initWithHours:minutes:seconds:• hours• minutes• seconds
Overview
Describes the hour, minute and second values used to set the media clock.
@since SDL 1.0
-initWithHours:minutes:seconds:
Undocumented
SWIFT
var ttsChunks: [SDLTTSChunk] { get set }
hours
@abstract The hour of the media clock
@discussion Some display types only support a max value of 19. If out of
range, it will be rejected.
Required, Integer, 0 - 59
OBJECTIVE-C
- (instancetype)initWithHours:(UInt8)hours minutes:(UInt8)minutes seconds:(UInt8)seconds;
SWIFT
init(hours: UInt8, minutes: UInt8, seconds: UInt8)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull hours;
minutes
@abstract The minute of the media clock
Required, Integer, 0 - 59
seconds
@abstract The second of the media clock
Required, Integer, 0 - 59
SWIFT
var hours: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull minutes;
SWIFT
var minutes: NSNumber & SDLInt { get set }
SDLStreamingMediaConfiguration ClassReference
Section Contents
• securityManagers• maximumDesiredEncryption• customVideoEncoderSettings• dataSource• window• rootViewController• carWindowRenderingType• enableForcedFramerateSync• -init
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull seconds;
SWIFT
var seconds: NSNumber & SDLInt { get set }
• -
initWithSecurityManagers:encryptionFlag:videoSettings:dataSource:window:• -
initWithSecurityManagers:encryptionFlag:videoSettings:dataSource:rootViewController:• -initWithSecurityManagers:• +secureConfigurationWithSecurityManagers:• +insecureConfiguration• +autostreamingInsecureConfigurationWithInitialViewController:• +autostreamingSecureConfigurationWithSecurityManagers:initialViewController:
Overview
Undocumented
securityManagers
Set security managers which could be used. This is primarily used with video
streaming applications to authenticate and perhaps encrypt traffic data.
maximumDesiredEncryption
What encryption level video/audio streaming should be. The default is
SDLStreamingEncryptionFlagAuthenticateAndEncrypt.
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSArray<Class<SDLSecurityType>> *securityManagers;
customVideoEncoderSettings
Properties to use for applications that utilize the video encoder for streaming.
See VTCompressionProperties.h for more details. For example, you can set
kVTCompressionPropertyKey_ExpectedFrameRate to set your framerate. Setting
the framerate this way will also set the framerate if you use CarWindow
automatic streaming.
Other properties you may want to try adjusting include
kVTCompressionPropertyKey_AverageBitRate and
kVTCompressionPropertyKey_DataRateLimits.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) SDLStreamingEncryptionFlag maximumDesiredEncryption;
SWIFT
var maximumDesiredEncryption: SDLStreamingEncryptionFlag { get set }
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) NSDictionary<NSString *, id> *customVideoEncoderSettings;
dataSource
Usable to change run time video stream setup behavior. Only use this and
modify the results if you really know what you’re doing. The head unit defaults
are generally good.
window
Set the window your video streaming content is within.
Activates the haptic view parser when set. If the window contains UIView
based views, these will be discovered and automatically sent to the head unit if
it uses a haptic interface. Whether or not it supports the haptic interace, this
library will also use that information to attempt to return the touched view to
you in SDLTouchManagerDelegate .
Warning
SWIFT
var customVideoEncoderSettings: [String : Any]? { get set }
OBJECTIVE-C
@property (readwrite, nonatomic, nullable) id<SDLStreamingMediaManagerDataSource> dataSource;
Apps using views outside of the UIView heirarchy (such as OpenGL) are
currently unsupported. If you app uses partial views in the heirarchy, only those
views will be discovered. Your OpenGL views will not be discoverable to a haptic
interface head unit and you will have to manually make these views
discoverable via the SDLSendHapticData RPC request.
Warning
This is a weak property and it’s therefore your job to hold a strong reference to
this window.
rootViewController
Set the initial view controller your video streaming content is within.
Activates the haptic view parser and CarWindow systems when set. This library
will also use that information to attempt to return the touched view to you in
SDLTouchManagerDelegate .
Note
OBJECTIVE-C
@property (readwrite, nonatomic, nullable) UIWindow *window;
SWIFT
weak var window: UIWindow? { get set }
If you wish to alter this rootViewController while streaming via CarWindow,
you must set a new rootViewController on SDLStreamingMediaManager and
this will update both the haptic view parser and CarWindow.
Warning
Apps using views outside of the UIView heirarchy (such as OpenGL) are
currently unsupported. If you app uses partial views in the heirarchy, only those
views will be discovered. Your OpenGL views will not be discoverable to a haptic
interface head unit and you will have to manually make these views
discoverable via the SDLSendHapticData RPC request.
Warning
If the rootViewController is app UI and is set from the UIViewController class,
it should only be set after viewDidAppear:animated is called. Setting the
rootViewController in viewDidLoad or viewWillAppear:animated can cause
weird behavior when setting the new frame.
Warning
If setting the rootViewController when the app returns to the foreground, the
app should register for the UIApplicationDidBecomeActive notification and not
the UIApplicationWillEnterForeground notification. Setting the frame after a
notification from the latter can also cause weird behavior when setting the new
frame.
Warning
While viewDidLoad will fire, appearance methods will not.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) UIViewController *rootViewController;
carWindowRenderingType
Declares if CarWindow will use layer rendering or view rendering. Defaults to
layer rendering.
enableForcedFramerateSync
When YES, the StreamingMediaManager will run a CADisplayLink with the
framerate set to the video encoder settings
SWIFT
var rootViewController: UIViewController? { get set }
OBJECTIVE-C
@property (assign, readwrite, nonatomic) SDLCarWindowRenderingType carWindowRenderingType;
SWIFT
var carWindowRenderingType: SDLCarWindowRenderingType { get set }
kVTCompressionPropertyKey_ExpectedFrameRate. This then forces
TouchManager (and CarWindow, if used) to sync their callbacks to the
framerate. If using CarWindow, this must be YES. If NO, enableSyncedPanning
on SDLTouchManager will be set to NO. Defaults to YES.
-init
Create an insecure video streaming configuration. No security managers will be
provided and the encryption flag will be set to None. If you’d like custom video
encoder settings, you can set the property manually.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) BOOL enableForcedFramerateSync;
SWIFT
var enableForcedFramerateSync: Bool { get set }
OBJECTIVE-C
- (nonnull instancetype)init;
The configuration
-
initWithSecurityManagers:encryptionFlag:videoSettings:dataSource:window:
Manually set all the properties to the streaming media configuration
SWIFT
init()
RETURN VALUE
OBJECTIVE-C
- (nonnull instancetype)initWithSecurityManagers: (nullable NSArray<Class<SDLSecurityType>> *)securityManagers encryptionFlag:(SDLStreamingEncryptionFlag)encryptionFlag videoSettings:(nullable NSDictionary<NSString *, id> *)videoSettings dataSource: (nullable id<SDLStreamingMediaManagerDataSource>)dataSource window:(nullable UIWindow *)window;
securityManagers
The security managers to use or nil for none.
encryptionFlag
The maximum encrpytion supported. If the connected head unit
supports less than set here, it will still connect, but if it supports more
than set here, it will not connect.
videoSettings
Custom video encoder settings to be used in video streaming.
window
The UIWindow you are running the content that is being streamed on,
to use for haptics if needed and possible (only works for UIViews)
The configuration
PARAMETERS
RETURN VALUE
-
initWithSecurityManagers:encryptionFlag:videoSettings:dataSource:rootViewCo
Manually set all the properties to the streaming media configuration
securityManagers
The security managers to use or nil for none.
encryptionFlag
The maximum encrpytion supported. If the connected head unit
supports less than set here, it will still connect, but if it supports more
than set here, it will not connect.
OBJECTIVE-C
- (nonnull instancetype)initWithSecurityManagers: (nullable NSArray<Class<SDLSecurityType>> *)securityManagers encryptionFlag:(SDLStreamingEncryptionFlag)encryptionFlag videoSettings:(nullable NSDictionary<NSString *, id> *)videoSettings dataSource: (nullable id<SDLStreamingMediaManagerDataSource>)dataSource rootViewController:(nullable UIViewController *)rootViewController;
PARAMETERS
videoSettings
Custom video encoder settings to be used in video streaming.
rootViewController
The UIViewController wih the content that is being streamed on, to use
for haptics if needed and possible (only works for UIViews)
The configuration
-initWithSecurityManagers:
Create a secure configuration for each of the security managers provided.
securityManagers
RETURN VALUE
OBJECTIVE-C
- (nonnull instancetype)initWithSecurityManagers: (nonnull NSArray<Class<SDLSecurityType>> *)securityManagers;
PARAMETERS
The security managers to be used. The encryption flag will be set to
AuthenticateAndEncrypt if any security managers are set.
The configuration
+secureConfigurationWithSecurityManagers:
Create a secure configuration for each of the security managers provided.
securityManagers
The security managers to be used. The encryption flag will be set to
AuthenticateAndEncrypt if any security managers are set.
RETURN VALUE
OBJECTIVE-C
+ (nonnull instancetype)secureConfigurationWithSecurityManagers: (nonnull NSArray<Class<SDLSecurityType>> *)securityManagers;
PARAMETERS
The configuration
+insecureConfiguration
Create an insecure video streaming configuration. No security managers will be
provided and the encryption flag will be set to None. If you’d like custom video
encoder settings, you can set the property manually. This is equivalent to init .
The configuration
+autostreamingInsecureConfigurationWithInitialViewController:
Create a CarWindow insecure configuration with a view controller
RETURN VALUE
OBJECTIVE-C
+ (nonnull instancetype)insecureConfiguration;
RETURN VALUE
initialViewController
The initial view controller that will be streamed
The configuration
OBJECTIVE-C
+ (nonnull instancetype)autostreamingInsecureConfigurationWithInitialViewController: (nonnull UIViewController *)initialViewController;
SWIFT
class func autostreamingInsecureConfiguration(withInitialViewController initialViewController: UIViewController) -> Self
PARAMETERS
RETURN VALUE
+autostreamingSecureConfigurationWithSecurityManagers:initialViewControlle
Create a CarWindow secure configuration with a view controller and security
managers
securityManagers
The security managers available for secure streaming use
initialViewController
The initial view controller that will be streamed, this can be a basic
UIViewController if you need to set your actual streaming view
controller at a later time on
SDLManager.streamingManager.rootViewController .
OBJECTIVE-C
+ (nonnull instancetype)autostreamingSecureConfigurationWithSecurityManagers: (nonnull NSArray<Class<SDLSecurityType>> *)securityManagers initialViewController: (nonnull UIViewController *) initialViewController;
PARAMETERS
The configuration
SDLStreamingMediaManager ClassReference
Section Contents
• touchManager• audioManager• rootViewController• focusableItemManager• streamingSupported• videoConnected• videoEncrypted• audioConnected• audioEncrypted• videoStreamingPaused• screenSize• videoFormat• supportedFormats• pixelBufferPool• requestedEncryptionType• -init• -initWithConnectionManager:configuration:• -startWithProtocol:• -stop• -sendVideoData:• -sendVideoData:presentationTimestamp:
RETURN VALUE
• -sendAudioData:
Overview
Undocumented
touchManager
Touch Manager responsible for providing touch event notifications.
audioManager
Undocumented
OBJECTIVE-C
@property (readonly, strong, nonatomic) SDLTouchManager *_Nonnull touchManager;
SWIFT
var touchManager: SDLTouchManager { get }
rootViewController
This property is used for SDLCarWindow, the ability to stream any view
controller. To start, you must set an initial view controller on
SDLStreamingMediaConfiguration rootViewController . After streaming
begins, you can replace that view controller with a new root by placing the new
view controller into this property.
OBJECTIVE-C
@property (nonatomic, strong, readonly) SDLAudioStreamManager *audioManager
SWIFT
var audioManager: SDLAudioStreamManager { get }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) UIViewController *_Nonnull rootViewController;
focusableItemManager
A haptic interface that can be updated to reparse views within the window
you’ve provided. Send a SDLDidUpdateProjectionView notification or call the
updateInterfaceLayout method to reparse. The “output” of this haptic
interface occurs in the touchManager property where it will call the delegate.
streamingSupported
Whether or not video streaming is supported
See
SWIFT
var rootViewController: UIViewController { get set }
OBJECTIVE-C
@property (readonly, strong, nonatomic, nullable) id<SDLFocusableItemLocatorType> focusableItemManager;
SDLRegisterAppInterface SDLDisplayCapabilities
videoConnected
Whether or not the video session is connected.
OBJECTIVE-C
@property (readonly, getter=isStreamingSupported, assign, nonatomic) BOOL streamingSupported;
SWIFT
var isStreamingSupported: Bool { get }
OBJECTIVE-C
@property (readonly, getter=isVideoConnected, assign, nonatomic) BOOL videoConnected;
videoEncrypted
Whether or not the video session is encrypted. This may be different than the
requestedEncryptionType.
audioConnected
Whether or not the audio session is connected.
SWIFT
var isVideoConnected: Bool { get }
OBJECTIVE-C
@property (readonly, getter=isVideoEncrypted, assign, nonatomic) BOOL videoEncrypted;
SWIFT
var isVideoEncrypted: Bool { get }
audioEncrypted
Whether or not the audio session is encrypted. This may be different than the
requestedEncryptionType.
OBJECTIVE-C
@property (readonly, getter=isAudioConnected, assign, nonatomic) BOOL audioConnected;
SWIFT
var isAudioConnected: Bool { get }
OBJECTIVE-C
@property (readonly, getter=isAudioEncrypted, assign, nonatomic) BOOL audioEncrypted;
videoStreamingPaused
Whether or not the video stream is paused due to either the application being
backgrounded, the HMI state being either NONE or BACKGROUND, or the video
stream not being ready.
SWIFT
var isAudioEncrypted: Bool { get }
OBJECTIVE-C
@property (readonly, getter=isVideoStreamingPaused, assign, nonatomic) BOOL videoStreamingPaused;
SWIFT
var isVideoStreamingPaused: Bool { get }
screenSize
This is the current screen size of a connected display. This will be the size the
video encoder uses to encode the raw image data.
videoFormat
This is the agreed upon format of video encoder that is in use, or nil if not
currently connected.
OBJECTIVE-C
@property (readonly, assign, nonatomic) CGSize screenSize;
SWIFT
var screenSize: CGSize { get }
OBJECTIVE-C
@property (readonly, strong, nonatomic, nullable) SDLVideoStreamingFormat *videoFormat;
supportedFormats
A list of all supported video formats by this manager
pixelBufferPool
The pixel buffer pool reference returned back from an active
VTCompressionSessionRef encoder.
WarningThis will only return a valid pixel buffer pool after the encoder has beeninitialized (when the video session has started). @discussion Clients may call
SWIFT
var videoFormat: SDLVideoStreamingFormat? { get }
OBJECTIVE-C
@property (readonly, strong, nonatomic) NSArray<SDLVideoStreamingFormat *> *_Nonnull supportedFormats;
SWIFT
var supportedFormats: [SDLVideoStreamingFormat] { get }
this once and retain the resulting pool, this call is cheap enough that it’s OK tocall it once per frame.
requestedEncryptionType
The requested encryption type when a session attempts to connect. This
setting applies to both video and audio sessions.
DEFAULT: SDLStreamingEncryptionFlagAuthenticateAndEncrypt
OBJECTIVE-C
@property (readonly, assign, nonatomic, nullable) CVPixelBufferPoolRef pixelBufferPool;
SWIFT
unowned(unsafe) var pixelBufferPool: CVPixelBufferPool? { get }
OBJECTIVE-C
@property (assign, readwrite, nonatomic) SDLStreamingEncryptionFlag requestedEncryptionType;
-init
Undocumented
-initWithConnectionManager:configuration:
Create a new streaming media manager for navigation and VPM apps with a
specified configuration
SWIFT
var requestedEncryptionType: SDLStreamingEncryptionFlag { get set }
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
OBJECTIVE-C
- (nonnull instancetype)initWithConnectionManager: (nonnull id<SDLConnectionManagerType>)connectionManager configuration: (nonnull SDLStreamingMediaConfiguration *)configuration;
connectionManager
The pass-through for RPCs
configuration
The configuration of this streaming media session
A new streaming manager
-startWithProtocol:
Start the manager with a completion block that will be called when startup
completes. This is used internally. To use an SDLStreamingMediaManager, you
should use the manager found on SDLManager .
PARAMETERS
RETURN VALUE
OBJECTIVE-C
- (void)startWithProtocol:(nonnull SDLAbstractProtocol *)protocol;
-stop
Stop the manager. This method is used internally.
-sendVideoData:
This method receives raw image data and will run iOS8+‘s hardware video
encoder to turn the data into a video stream, which will then be passed to the
connected head unit.
SWIFT
func start(with protocol: SDLAbstractProtocol)
OBJECTIVE-C
- (void)stop;
SWIFT
func stop()
imageBuffer
A CVImageBufferRef to be encoded by Video Toolbox
Whether or not the data was successfully encoded and sent.
OBJECTIVE-C
- (BOOL)sendVideoData:(nonnull CVImageBufferRef)imageBuffer;
SWIFT
func sendVideoData(_ imageBuffer: CVImageBuffer) -> Bool
PARAMETERS
RETURN VALUE
-sendVideoData:presentationTimestamp:
This method receives raw image data and will run iOS8+‘s hardware video
encoder to turn the data into a video stream, which will then be passed to the
connected head unit.
imageBuffer
A CVImageBufferRef to be encoded by Video Toolbox
presentationTimestamp
OBJECTIVE-C
- (BOOL)sendVideoData:(nonnull CVImageBufferRef)imageBuffer presentationTimestamp:(CMTime)presentationTimestamp;
SWIFT
func sendVideoData(_ imageBuffer: CVImageBuffer, presentationTimestamp: CMTime) -> Bool
PARAMETERS
A presentation timestamp for the frame, or kCMTimeInvalid if
timestamp is unknown. If it’s valid, it must be greater than the previous
one.
Whether or not the data was successfully encoded and sent.
-sendAudioData:
This method receives PCM audio data and will attempt to send that data across
to the head unit for immediate playback
RETURN VALUE
OBJECTIVE-C
- (BOOL)sendAudioData:(nonnull NSData *)audioData;
SWIFT
func sendAudioData(_ audioData: Data) -> Bool
audioData
The data in PCM audio format, to be played
Whether or not the data was successfully sent.
SDLSubscribeButton Class Reference
Section Contents
• -initWithHandler:• -initWithButtonName:handler:• handler• buttonName
Overview
Establishes a subscription to button notifications for HMI buttons. Buttons are
not necessarily physical buttons, but can also be “soft” buttons on a touch
screen, depending on the display in the vehicle. Once subscribed to a particular
button, an application will receive both SDLOnButtonEvent and
SDLOnButtonPress notifications whenever that button is pressed. The
PARAMETERS
RETURN VALUE
application may also unsubscribe from notifications for a button by invoking the
SDLUnsubscribeButton operation
When a button is depressed, an SDLOnButtonEvent notification is sent to the
application with a ButtonEventMode of BUTTONDOWN. When that same button
is released, an SDLOnButtonEvent notification is sent to the application with a
ButtonEventMode of BUTTONUP
When the duration of a button depression (that is, time between depression
and release) is less than two seconds, an SDLOnButtonPress notification is sent
to the application (at the moment the button is released) with a
ButtonPressMode of SHORT. When the duration is two or more seconds, an
SDLOnButtonPress notification is sent to the application (at the moment the
two seconds have elapsed) with a ButtonPressMode of LONG
The purpose of SDLOnButtonPress notifications is to allow for programmatic
detection of long button presses similar to those used to store presets while
listening to the radio, for example
When a button is depressed and released, the sequence in which notifications
will be sent to the application is as follows:
For short presses:
• OnButtonEvent (ButtonEventMode = BUTTONDOWN)• OnButtonEvent (ButtonEventMode = BUTTONUP)• OnButtonPress (ButtonPressMode = SHORT)
For long presses:
• OnButtonEvent (ButtonEventMode = BUTTONDOWN)• OnButtonEvent (ButtonEventMode = BUTTONUP)• OnButtonPress (ButtonPressMode = LONG)
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 1.0
See SDLUnsubscribeButton
-initWithHandler:
Construct a SDLSubscribeButton with a handler callback when an event occurs.
handler
A callback that will be called when a button event occurs for the
subscribed button.
An SDLSubscribeButton object
OBJECTIVE-C
- (nonnull instancetype)initWithHandler: (nullable SDLRPCButtonNotificationHandler)handler;
SWIFT
init(handler: SDLRPCButtonNotificationHandler? = nil)
PARAMETERS
RETURN VALUE
-initWithButtonName:handler:
Undocumented
handler
A handler that will let you know when the button you subscribed to is selected.
WarningThis will only work if you use SDLManager.
OBJECTIVE-C
- (instancetype)initWithButtonName:(SDLButtonName)buttonName handler:(nullable SDLRPCButtonNotificationHandler)handler;
SWIFT
init(buttonName: SDLButtonName, handler: SDLRPCButtonNotificationHandler? = nil)
OBJECTIVE-C
@property (readwrite, copy, nonatomic) SDLRPCButtonNotificationHandler _Nonnull handler;
buttonName
@abstract The name of the button to subscribe to @discussion An enum value,
see SDLButtonName
SWIFT
var handler: SDLRPCButtonNotificationHandler { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonName _Nonnull buttonName;
SWIFT
var buttonName: SDLButtonName { get set }
SDLSubscribeVehicleData ClassReference
Section Contents
• -
initWithAccelerationPedalPosition:airbagStatus:beltStatus:bodyInformation:clusterModeStatus:deviceStatus:• gps• speed• rpm• fuelLevel• fuelLevel_State• instantFuelConsumption• externalTemperature• prndl• tirePressure• odometer• beltStatus• bodyInformation• deviceStatus• driverBraking• wiperStatus• headLampStatus• engineTorque• accPedalPosition• steeringWheelAngle• eCallInfo• airbagStatus• emergencyEvent• clusterModeStatus
• myKey
Overview
Subscribes for specific published vehicle data items. The data will be only sent,
if it has changed. The application will be notified by the onVehicleData
notification whenever new data is available. The update rate is very much
dependent on sensors, vehicle architecture and vehicle type. Be also prepared
for the situation that a signal is not available on a vehicle
Function Group: Location, VehicleInfo and DrivingChara
HMILevel needs to be FULL, LIMITED or BACKGROUND
Since SmartDeviceLink 2.0
See SDLUnsubscribeVehicleData SDLGetVehicleData
-
initWithAccelerationPedalPosition:airbagStatus:beltStatus:bodyInformation:clu
Undocumented
OBJECTIVE-C
- (instancetype)initWithAccelerationPedalPosition:(BOOL)accelerationPedalPosition airbagStatus:(BOOL)airbagStatus beltStatus:(BOOL)beltStatus bodyInformation:(BOOL)bodyInformation clusterModeStatus:(BOOL)clusterModeStatus deviceStatus:(BOOL)deviceStatus driverBraking:(BOOL)driverBraking eCallInfo:(BOOL)eCallInfo emergencyEvent:(BOOL)emergencyEvent engineTorque:(BOOL)engineTorque externalTemperature:(BOOL)externalTemperature fuelLevel:(BOOL)fuelLevel fuelLevelState:(BOOL)fuelLevelState gps:(BOOL)gps headLampStatus:(BOOL)headLampStatus instantFuelConsumption:(BOOL)instantFuelConsumption myKey:(BOOL)myKey odometer:(BOOL)odometer prndl:(BOOL)prndl rpm:(BOOL)rpm speed:(BOOL)speed steeringWheelAngle:(BOOL)steeringWheelAngle tirePressure:(BOOL)tirePressure wiperStatus:(BOOL)wiperStatus;
gps
@abstract A boolean value. If true, subscribes Gps data
SWIFT
init(accelerationPedalPosition: Bool, airbagStatus: Bool, beltStatus: Bool, bodyInformation: Bool, clusterModeStatus: Bool, deviceStatus: Bool, driverBraking: Bool, eCallInfo: Bool, emergencyEvent: Bool, engineTorque: Bool, externalTemperature: Bool, fuelLevel: Bool, fuelLevelState: Bool, gps: Bool, headLampStatus: Bool, instantFuelConsumption: Bool, myKey: Bool, odometer: Bool, prndl: Bool, rpm: Bool, speed: Bool, steeringWheelAngle: Bool, tirePressure: Bool, wiperStatus: Bool)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *gps;
SWIFT
var gps: (NSNumber & SDLBool)? { get set }
speed
@abstract A boolean value. If true, subscribes speed data
rpm
@abstract A boolean value. If true, subscribes rpm data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *speed;
SWIFT
var speed: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *rpm;
fuelLevel
@abstract A boolean value. If true, subscribes FuelLevel data
fuelLevel_State
@abstract A boolean value. If true, subscribes fuelLevel_State data
SWIFT
var rpm: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *fuelLevel;
SWIFT
var fuelLevel: (NSNumber & SDLBool)? { get set }
instantFuelConsumption
@abstract A boolean value. If true, subscribes instantFuelConsumption data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *fuelLevel_State;
SWIFT
var fuelLevel_State: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *instantFuelConsumption;
SWIFT
var instantFuelConsumption: (NSNumber & SDLBool)? { get set }
externalTemperature
@abstract A boolean value. If true, subscribes externalTemperature data
prndl
@abstract A boolean value. If true, subscribes Currently selected gear data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *externalTemperature;
SWIFT
var externalTemperature: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *prndl;
tirePressure
@abstract A boolean value. If true, subscribes tire pressure status data
odometer
@abstract A boolean value. If true, subscribes odometer data
SWIFT
var prndl: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *tirePressure;
SWIFT
var tirePressure: (NSNumber & SDLBool)? { get set }
beltStatus
@abstract A boolean value. If true, subscribes belt Status data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *odometer;
SWIFT
var odometer: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *beltStatus;
SWIFT
var beltStatus: (NSNumber & SDLBool)? { get set }
bodyInformation
@abstract A boolean value. If true, subscribes body Information data
deviceStatus
@abstract A boolean value. If true, subscribes device Status data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *bodyInformation;
SWIFT
var bodyInformation: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *deviceStatus;
driverBraking
@abstract A boolean value. If true, subscribes driver Braking data
wiperStatus
@abstract A boolean value. If true, subscribes wiper Status data
SWIFT
var deviceStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *driverBraking;
SWIFT
var driverBraking: (NSNumber & SDLBool)? { get set }
headLampStatus
@abstract A boolean value. If true, subscribes Head Lamp Status data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *wiperStatus;
SWIFT
var wiperStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *headLampStatus;
SWIFT
var headLampStatus: (NSNumber & SDLBool)? { get set }
engineTorque
@abstract A boolean value. If true, subscribes Engine Torque data
accPedalPosition
@abstract A boolean value. If true, means the accPedalPosition data has been
subscribed.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *engineTorque;
SWIFT
var engineTorque: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *accPedalPosition;
steeringWheelAngle
@abstract A boolean value. If true, means the steeringWheelAngle data has
been subscribed.
eCallInfo
Undocumented
SWIFT
var accPedalPosition: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *steeringWheelAngle;
SWIFT
var steeringWheelAngle: (NSNumber & SDLBool)? { get set }
airbagStatus
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *eCallInfo
SWIFT
var eCallInfo: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *airbagStatus
SWIFT
var airbagStatus: (NSNumber & SDLBool)? { get set }
emergencyEvent
Undocumented
clusterModeStatus
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *emergencyEvent
SWIFT
var emergencyEvent: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *clusterModeStatus
myKey
Undocumented
SWIFT
var clusterModeStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *myKey
SWIFT
var myKey: (NSNumber & SDLBool)? { get set }
SDLSubscribeVehicleDataResponseClass Reference
Section Contents
• gps• speed• rpm• fuelLevel• fuelLevel_State• instantFuelConsumption• externalTemperature• prndl• tirePressure• odometer• beltStatus• bodyInformation• deviceStatus• driverBraking• wiperStatus• headLampStatus• engineTorque• accPedalPosition• steeringWheelAngle• eCallInfo• airbagStatus• emergencyEvent• clusterModes• myKey
Overview
Subscribe Vehicle Data Response is sent, when SDLSubscribeVehicleData has
been called
Since SmartDeviceLink 2.0
gps
@abstract A SDLVehicleDataResult* value. See GPSData.
speed
@abstract A SDLVehicleDataResult* value. The vehicle speed in kilometers per
hour.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *gps;
SWIFT
var gps: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *speed;
rpm
@abstract A SDLVehicleDataResult* value. The number of revolutions per
minute of the engine.
fuelLevel
@abstract A SDLVehicleDataResult* value. The fuel level in the tank
(percentage)
SWIFT
var speed: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *rpm;
SWIFT
var rpm: SDLVehicleDataResult? { get set }
fuelLevel_State
@abstract A SDLVehicleDataResult* value. The fuel level state.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *fuelLevel;
SWIFT
var fuelLevel: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *fuelLevel_State;
SWIFT
var fuelLevel_State: SDLVehicleDataResult? { get set }
instantFuelConsumption
@abstract A SDLVehicleDataResult* value. The instantaneous fuel consumption
in microlitres.
externalTemperature
@abstract A SDLVehicleDataResult* value. The external temperature in degrees
celsius.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *instantFuelConsumption;
SWIFT
var instantFuelConsumption: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *externalTemperature;
prndl
@abstract A SDLVehicleDataResult* value. See PRNDL.
tirePressure
@abstract A SDLVehicleDataResult* value. See TireStatus.
SWIFT
var externalTemperature: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *prndl;
SWIFT
var prndl: SDLVehicleDataResult? { get set }
odometer
@abstract A SDLVehicleDataResult* value. Odometer in km.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *tirePressure;
SWIFT
var tirePressure: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *odometer;
SWIFT
var odometer: SDLVehicleDataResult? { get set }
beltStatus
@abstract A SDLVehicleDataResult* value. The status of the seat belts.
bodyInformation
@abstract A SDLVehicleDataResult* value. The body information including
power modes.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *beltStatus;
SWIFT
var beltStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *bodyInformation;
deviceStatus
@abstract A SDLVehicleDataResult* value. The device status including signal
and battery strength.
driverBraking
@abstract A SDLVehicleDataResult* value. The status of the brake pedal.
SWIFT
var bodyInformation: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *deviceStatus;
SWIFT
var deviceStatus: SDLVehicleDataResult? { get set }
wiperStatus
@abstract A SDLVehicleDataResult* value. The status of the wipers.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *driverBraking;
SWIFT
var driverBraking: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *wiperStatus;
SWIFT
var wiperStatus: SDLVehicleDataResult? { get set }
headLampStatus
@abstract A SDLVehicleDataResult* value. Status of the head lamps.
engineTorque
@abstract A SDLVehicleDataResult* value. Torque value for engine (in Nm) on
non-diesel variants.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *headLampStatus;
SWIFT
var headLampStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *engineTorque;
accPedalPosition
@abstract A SDLVehicleDataResult* value. Accelerator pedal position
(percentage depressed)
steeringWheelAngle
@abstract A SDLVehicleDataResult* value. Current angle of the steering wheel
(in deg)
SWIFT
var engineTorque: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *accPedalPosition;
SWIFT
var accPedalPosition: SDLVehicleDataResult? { get set }
eCallInfo
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *steeringWheelAngle;
SWIFT
var steeringWheelAngle: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *eCallInfo
SWIFT
var eCallInfo: SDLVehicleDataResult? { get set }
airbagStatus
Undocumented
emergencyEvent
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *airbagStatus
SWIFT
var airbagStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *emergencyEvent
clusterModes
Undocumented
myKey
Undocumented
SWIFT
var emergencyEvent: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *clusterModes
SWIFT
var clusterModes: SDLVehicleDataResult? { get set }
SDLSyncMsgVersion Class Reference
Section Contents
• -initWithMajorVersion:minorVersion:patchVersion:• majorVersion• minorVersion• patchVersion
Overview
Specifies the version number of the SDL V4 interface. This is used by both the
application and SDL to declare what interface version each is using.
@since SDL 1.0
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *myKey
SWIFT
var myKey: SDLVehicleDataResult? { get set }
-initWithMajorVersion:minorVersion:patchVersion:
Undocumented
majorVersion
@abstract The major version indicates versions that is not-compatible to
previous versions
Required, Integer, 1 - 10
OBJECTIVE-C
- (instancetype)initWithMajorVersion:(UInt8)majorVersion minorVersion:(UInt8)minorVersion patchVersion:(UInt8)patchVersion;
SWIFT
init(majorVersion: UInt8, minorVersion: UInt8, patchVersion: UInt8)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull majorVersion;
minorVersion
@abstract The minor version indicates a change to a previous version that
should still allow to be run on an older version (with limited functionality)
Required, Integer, 0 - 1000
patchVersion
@abstract Optional, allows backward-compatible fixes to the API without
increasing the minor version of the interface
SWIFT
var majorVersion: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull minorVersion;
SWIFT
var minorVersion: NSNumber & SDLInt { get set }
SDLSystemCapability Class Reference
Section Contents
• -initWithNavigationCapability:• -initWithPhoneCapability:• -initWithVideoStreamingCapability:• -initWithRemoteControlCapability:• systemCapabilityType• navigationCapability• phoneCapability• videoStreamingCapability
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *patchVersion;
SWIFT
var patchVersion: (NSNumber & SDLInt)? { get set }
• remoteControlCapability
Overview
The systemCapabilityType indicates which type of data should be changed and
identifies which data object exists in this struct. For example, if the
SystemCapability Type is NAVIGATION then a “navigationCapability” should
exist.
• First implemented in SDL Core v4.4
-initWithNavigationCapability:
Undocumented
-initWithPhoneCapability:
Undocumented
OBJECTIVE-C
- (instancetype)initWithNavigationCapability:(SDLNavigationCapability *)capability;
SWIFT
init(navigationCapability capability: SDLNavigationCapability)
-initWithVideoStreamingCapability:
Undocumented
OBJECTIVE-C
- (instancetype)initWithPhoneCapability:(SDLPhoneCapability *)capability;
SWIFT
init(phoneCapability capability: SDLPhoneCapability)
OBJECTIVE-C
- (instancetype)initWithVideoStreamingCapability:(SDLVideoStreamingCapability *)capability;
SWIFT
init(videoStreamingCapability capability: SDLVideoStreamingCapability)
-initWithRemoteControlCapability:
Undocumented
systemCapabilityType
Undocumented
OBJECTIVE-C
- (instancetype)initWithRemoteControlCapability:(SDLRemoteControlCapabilities *)capability;
SWIFT
init(remoteControlCapability capability: SDLRemoteControlCapabilities)
OBJECTIVE-C
@property (strong, nonatomic) SDLSystemCapabilityType systemCapabilityType
navigationCapability
Undocumented
phoneCapability
Undocumented
SWIFT
var systemCapabilityType: SDLSystemCapabilityType { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLNavigationCapability *navigationCapability
SWIFT
var navigationCapability: SDLNavigationCapability? { get set }
videoStreamingCapability
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLPhoneCapability *phoneCapability
SWIFT
var phoneCapability: SDLPhoneCapability? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLVideoStreamingCapability *videoStreamingCapability
remoteControlCapability
Undocumented
SWIFT
var videoStreamingCapability: SDLVideoStreamingCapability? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLRemoteControlCapabilities *remoteControlCapability
SWIFT
var remoteControlCapability: SDLRemoteControlCapabilities? { get set }
SDLTCPTransport Class Reference
Section Contents
• socket• hostName• portNumber
Overview
Undocumented
socket
Undocumented
hostName
Undocumented
OBJECTIVE-C
_Nullable CFSocketRef socket
portNumber
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *hostName
SWIFT
var hostName: String { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSString *portNumber
SWIFT
var portNumber: String { get set }
SDLTTSChunk Class Reference
Section Contents
• -initWithText:type:• +textChunksFromString:• +sapiChunksFromString:• +lhPlusChunksFromString:• +prerecordedChunksFromString:• +silenceChunks• text• type
Overview
Specifies what is to be spoken. This can be simply a text phrase, which SDL will
speak according to its own rules. It can also be phonemes from either the
Microsoft SAPI phoneme set, or from the LHPLUS phoneme set. It can also be a
pre-recorded sound in WAV format (either developer-defined, or provided by the
SDL platform).
In SDL, words, and therefore sentences, can be built up from phonemes and are
used to explicitly provide the proper pronounciation to the TTS engine. For
example, to have SDL pronounce the word “read” as “red”, rather than as when
it is pronounced like “reed”, the developer would use phonemes to express this
desired pronounciation.
For more information about phonemes, see http://en.wikipedia.org/wiki/
Phoneme.
Parameter List
Name Type DescriptionSmartDeviceLink Ver.Available
@since SmartDeviceLink 1.0
-initWithText:type:
Undocumented
text String
Text to be spoken,or a phonemespecification, orthe name of apre-recordedsound. Thecontents of thisfield are indicatedby the “type”field.
SmartDeviceLink 1.0
type SpeechCapabilities
Indicates the typeof information inthe “text” field(e.g. phrase to bespoken, phonemespecification,name of pre-recorded sound).
SmartDeviceLink 1.0
OBJECTIVE-C
- (instancetype)initWithText:(NSString *)text type:(SDLSpeechCapabilities)type;
SWIFT
init(text: String, type: SDLSpeechCapabilities)
+textChunksFromString:
Undocumented
+sapiChunksFromString:
Undocumented
OBJECTIVE-C
+ (NSArray<SDLTTSChunk *> *)textChunksFromString:(NSString *)string;
SWIFT
class func textChunks(from string: String) -> [SDLTTSChunk]
OBJECTIVE-C
+ (NSArray<SDLTTSChunk *> *)sapiChunksFromString:(NSString *)string;
+lhPlusChunksFromString:
Undocumented
+prerecordedChunksFromString:
Undocumented
SWIFT
class func sapiChunks(from string: String) -> [SDLTTSChunk]
OBJECTIVE-C
+ (NSArray<SDLTTSChunk *> *)lhPlusChunksFromString:(NSString *)string;
SWIFT
class func lhPlusChunks(from string: String) -> [SDLTTSChunk]
+silenceChunks
Undocumented
OBJECTIVE-C
+ (NSArray<SDLTTSChunk *> *)prerecordedChunksFromString:(NSString *)string;
SWIFT
class func prerecordedChunks(from string: String) -> [SDLTTSChunk]
OBJECTIVE-C
+ (NSArray<SDLTTSChunk *> *)silenceChunks;
SWIFT
class func silenceChunks() -> [SDLTTSChunk]
text
@abstract Text to be spoken, or a phoneme specification, or the name of a pre-
recorded sound. The contents of this field are indicated by the “type” field.
Required, Max length 500
type
@abstract The type of information in the “text” field (e.g. phrase to be spoken,
phoneme specification, name of pre-recorded sound).
Required
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSString *_Nonnull text;
SWIFT
var text: String { get set }
SDLTemperature Class Reference
Section Contents
• -initWithUnit:value:• unit• value
Overview
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLSpeechCapabilities _Nonnull type;
SWIFT
var type: SDLSpeechCapabilities { get set }
-initWithUnit:value:
Undocumented
unit
@abstract Temperature Unit
OBJECTIVE-C
- (instancetype)initWithUnit:(SDLTemperatureUnit)unit value:(float)value;
SWIFT
init(unit: SDLTemperatureUnit, value: Float)
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLTemperatureUnit _Nonnull unit;
value
@abstract Temperature Value in TemperatureUnit specified unit. Range depends
on OEM and is not checked by SDL
FLoat value
SWIFT
var unit: SDLTemperatureUnit { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLFloat> *_Nonnull value;
SWIFT
var value: NSNumber & SDLFloat { get set }
SDLTextField Class Reference
Section Contents
• name• characterSet• width• rows
Overview
Struct defining the characteristics of a displayed field on the HMI.
Parameter List
Name Type DescriptionSmartDeviceLink Ver.Available
name TextFieldNameEnumerationidentifying thefield.
SDL 1.0
characterSet CharacterSetThe character setthat is supportedin this field.
SDL 1.0
width Int16
The number ofcharacters in onerow of this field.
• Minvalue
=“1”• maxvalu
e=“500”
SDL 1.0
rows Int16
The number ofrows for this textfield.
• Minvalue
=“1”• maxvalu
e=“3”
SDL 1.0
@since SDL 1.0
name
@abstract The enumeration identifying the field.
SeeSDLTextFieldName Required
characterSet
@abstract The character set that is supported in this field.
SeeSDLCharacterSet Required
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLTextFieldName _Nonnull name;
SWIFT
var name: SDLTextFieldName { get set }
width
@abstract The number of characters in one row of this field.
Required, Integer 1 - 500
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLCharacterSet _Nonnull characterSet;
SWIFT
var characterSet: SDLCharacterSet { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull width;
rows
@abstract The number of rows for this text field.
Required, Integer 1 - 8
SWIFT
var width: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull rows;
SWIFT
var rows: NSNumber & SDLInt { get set }
SDLTireStatus Class Reference
Section Contents
• pressureTelltale• leftFront• rightFront• leftRear• rightRear• innerLeftRear• innerRightRear
Overview
Undocumented
pressureTelltale
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLWarningLightStatus pressureTelltale
leftFront
Undocumented
rightFront
Undocumented
SWIFT
var pressureTelltale: SDLWarningLightStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *leftFront
SWIFT
var leftFront: SDLSingleTireStatus { get set }
leftRear
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *rightFront
SWIFT
var rightFront: SDLSingleTireStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *leftRear
SWIFT
var leftRear: SDLSingleTireStatus { get set }
rightRear
Undocumented
innerLeftRear
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *rightRear
SWIFT
var rightRear: SDLSingleTireStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *innerLeftRear
innerRightRear
Undocumented
SWIFT
var innerLeftRear: SDLSingleTireStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *innerRightRear
SWIFT
var innerRightRear: SDLSingleTireStatus { get set }
SDLTouch Class Reference
Section Contents
• -initWithTouchEvent:• identifier• location• timeStamp• isFirstFinger• isSecondFinger
Overview
Undocumented
-initWithTouchEvent:
@abstract Initializes a touch.
OBJECTIVE-C
- (nonnull instancetype)initWithTouchEvent:(nonnull SDLTouchEvent *)touchEvent;
touchEvent
Incoming touch event from onOnTouchEvent notification.
SDLTouch Instance of SDLTouch.
identifier
@abstract Identifier of the touch’s finger. Refer to SDLTouchIdentifier for valid
identifiers.
SWIFT
init(touchEvent: SDLTouchEvent)
PARAMETERS
RETURN VALUE
OBJECTIVE-C
@property (readonly, assign, nonatomic) NSInteger identifier;
location
@abstract Location of touch point, in the head unit’s coordinate system.
timeStamp
@abstract Timestamp in which the touch occured.
SWIFT
var identifier: Int { get }
OBJECTIVE-C
@property (readonly, assign, nonatomic) CGPoint location;
SWIFT
var location: CGPoint { get }
isFirstFinger
@abstract Returns whether or not this touch is a first finger.
OBJECTIVE-C
@property (readonly, assign, nonatomic) NSUInteger timeStamp;
SWIFT
var timeStamp: UInt { get }
OBJECTIVE-C
@property (readonly, assign, nonatomic) BOOL isFirstFinger;
SWIFT
var isFirstFinger: Bool { get }
isSecondFinger
@abstract Returns whether or not this touch is a second finger.
SDLTouchCoord Class Reference
Section Contents
• x• y
Overview
Undocumented
OBJECTIVE-C
@property (readonly, assign, nonatomic) BOOL isSecondFinger;
SWIFT
var isSecondFinger: Bool { get }
x
Undocumented
y
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLFloat> *x
SWIFT
var x: NSNumber & SDLFloat { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLFloat> *y
SDLTouchEvent Class Reference
Section Contents
• touchEventId• timeStamp• coord
Overview
Undocumented
touchEventId
A touch’s unique identifier. The application can track the current touch events
by id. If a touch event has type begin, the id should be added to the set of
touches. If a touch event has type end, the id should be removed from the set
of touches.
Mandatory, 0-9
SWIFT
var y: NSNumber & SDLFloat { get set }
timeStamp
The time that the touch was recorded. This number can the time since the
beginning of the session or something else as long as the units are in
milliseconds.
The timestamp is used to determined the rate of change of position of a touch.
The application also uses the time to verify whether two touches, with different
ids, are part of a single action by the user.
If there is only a single timestamp in this array, it is the same for every
coordinate in the coordinates array.
Mandatory, array size 1-1000, contains size 0-5000000000
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSNumber<SDLInt> *_Nonnull touchEventId;
SWIFT
var touchEventId: NSNumber & SDLInt { get set }
coord
Mandatory, array size 1-1000, contains SDLTouchCoord
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<NSNumber<SDLInt> *> *_Nonnull timeStamp;
SWIFT
var timeStamp: [NSNumber & SDLInt] { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) NSArray<SDLTouchCoord *> *_Nonnull coord;
SWIFT
var coord: [SDLTouchCoord] { get set }
SDLTouchEventCapabilities ClassReference
Section Contents
• pressAvailable• multiTouchAvailable• doublePressAvailable
Overview
Undocumented
pressAvailable
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLBool> *pressAvailable
SWIFT
var pressAvailable: NSNumber & SDLBool { get set }
multiTouchAvailable
Undocumented
doublePressAvailable
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLBool> *multiTouchAvailable
SWIFT
var multiTouchAvailable: NSNumber & SDLBool { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLBool> *doublePressAvailable
SDLTouchManager Class Reference
Section Contents
• touchEventDelegate• touchEventHandler• tapDistanceThreshold• tapTimeThreshold• movementTimeThreshold• enableSyncedPanning• touchEnabled• -cancelPendingTouches• -init• -initWithHitTester:• -syncFrame
Overview
Undocumented
touchEventDelegate
Notified of processed touches such as pinches, pans, and taps
SWIFT
var doublePressAvailable: NSNumber & SDLBool { get set }
touchEventHandler
@abstract Returns all OnTouchEvent notifications as SDLTouch and
SDLTouchType objects.
tapDistanceThreshold
Distance between two taps on the screen, in the head unit’s coordinate system,
used for registering double-tap callbacks.
OBJECTIVE-C
@property (readwrite, nonatomic, nullable) id<SDLTouchManagerDelegate> touchEventDelegate;
OBJECTIVE-C
@property (readwrite, copy, nonatomic, nullable) SDLTouchEventHandler touchEventHandler;
SWIFT
var touchEventHandler: SDLTouchEventHandler? { get set }
NoteDefaults to 50 px.
tapTimeThreshold
@abstract Time (in seconds) between tap events to register a double-tap
callback. @remark Default is 0.4 seconds.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) CGFloat tapDistanceThreshold;
SWIFT
var tapDistanceThreshold: CGFloat { get set }
OBJECTIVE-C
@property (assign, readwrite, nonatomic) CGFloat tapTimeThreshold;
movementTimeThreshold
@abstract Time (in seconds) between movement events to register panning or
pinching callbacks. @remark Default is 0.05 seconds.
enableSyncedPanning
If set to NO, the display link syncing will be ignored and
movementTimeThreshold will be used. Defaults to YES.
SWIFT
var tapTimeThreshold: CGFloat { get set }
OBJECTIVE-C
@property (assign, readwrite, nonatomic) CGFloat movementTimeThreshold;
SWIFT
var movementTimeThreshold: CGFloat { get set }
touchEnabled
@abstract Boolean denoting whether or not the touch manager should deliver
touch event callbacks. @remark Default is true.
OBJECTIVE-C
@property (assign, readwrite, nonatomic) BOOL enableSyncedPanning;
SWIFT
var enableSyncedPanning: Bool { get set }
OBJECTIVE-C
@property (getter=isTouchEnabled, assign, readwrite, nonatomic) BOOL touchEnabled;
SWIFT
var isTouchEnabled: Bool { get set }
-cancelPendingTouches
@abstract Cancels pending touch event timers that may be in progress.
@remark Currently only impacts the timer used to register single taps.
-init
Undocumented
OBJECTIVE-C
- (void)cancelPendingTouches;
SWIFT
func cancelPendingTouches()
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
-initWithHitTester:
Initialize a touch manager with a hit tester if available
hitTester
The hit tester to be used to correlate a point with a view
The initialized touch manager
-syncFrame
Called by SDLStreamingMediaManager in sync with the streaming framerate.
This helps to moderate panning gestures by allowing the UI to be modified in
time with the framerate.
OBJECTIVE-C
- (nonnull instancetype)initWithHitTester: (nullable id<SDLFocusableItemHitTester>)hitTester;
PARAMETERS
RETURN VALUE
SDLTurn Class Reference
Section Contents
• -initWithNavigationText:turnIcon:• navigationText• turnIcon
Overview
Undocumented
-initWithNavigationText:turnIcon:
Undocumented
OBJECTIVE-C
- (void)syncFrame;
SWIFT
func syncFrame()
navigationText
Undocumented
OBJECTIVE-C
- (instancetype)initWithNavigationText:(nullable NSString *)navigationText turnIcon:(nullable SDLImage *)icon;
SWIFT
init(navigationText: String?, turnIcon icon: SDLImage?)
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *navigationText
SWIFT
var navigationText: String? { get set }
turnIcon
Undocumented
SDLUnsubscribeButton Class Reference
Section Contents
• -initWithButtonName:• buttonName
Overview
Deletes a subscription to button notifications for the specified button. For more
information about button subscriptions, see SDLSubscribeButton
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLImage *turnIcon
SWIFT
var turnIcon: SDLImage? { get set }
Application can unsubscribe from a button that is currently being pressed (i.e.
has not yet been released), but app will not get button event
HMILevel needs to be FULL, LIMITED or BACKGROUND
@since SmartDeviceLink 1.0
See SDLSubscribeButton
-initWithButtonName:
Undocumented
buttonName
@abstract A name of the button to unsubscribe from @discussion An
Enumeration value, see SDLButtonName
OBJECTIVE-C
- (instancetype)initWithButtonName:(SDLButtonName)buttonName;
SWIFT
init(buttonName: SDLButtonName)
SDLUnsubscribeVehicleData ClassReference
Section Contents
• -
initWithAccelerationPedalPosition:airbagStatus:beltStatus:bodyInformation:clusterModeStatus:deviceStatus:• gps• speed• rpm• fuelLevel• fuelLevel_State• instantFuelConsumption• externalTemperature• prndl
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLButtonName _Nonnull buttonName;
SWIFT
var buttonName: SDLButtonName { get set }
• tirePressure• odometer• beltStatus• bodyInformation• deviceStatus• driverBraking• wiperStatus• headLampStatus• engineTorque• accPedalPosition• steeringWheelAngle• eCallInfo• airbagStatus• emergencyEvent• clusterModeStatus• myKey
Overview
This function is used to unsubscribe the notifications from the
subscribeVehicleData function
Function Group: Location, VehicleInfo and DrivingChara
HMILevel needs to be FULL, LIMITED or BACKGROUND
@since SmartDeviceLink 2.0
See SDLSubscribeVehicleData SDLGetVehicleData
-
initWithAccelerationPedalPosition:airbagStatus:beltStatus:bodyInformation:clu
Undocumented
gps
@abstract A boolean value. If true, unsubscribes Gps data
OBJECTIVE-C
- (instancetype)initWithAccelerationPedalPosition:(BOOL)accelerationPedalPosition airbagStatus:(BOOL)airbagStatus beltStatus:(BOOL)beltStatus bodyInformation:(BOOL)bodyInformation clusterModeStatus:(BOOL)clusterModeStatus deviceStatus:(BOOL)deviceStatus driverBraking:(BOOL)driverBraking eCallInfo:(BOOL)eCallInfo emergencyEvent:(BOOL)emergencyEvent engineTorque:(BOOL)engineTorque externalTemperature:(BOOL)externalTemperature fuelLevel:(BOOL)fuelLevel fuelLevelState:(BOOL)fuelLevelState gps:(BOOL)gps headLampStatus:(BOOL)headLampStatus instantFuelConsumption:(BOOL)instantFuelConsumption myKey:(BOOL)myKey odometer:(BOOL)odometer prndl:(BOOL)prndl rpm:(BOOL)rpm speed:(BOOL)speed steeringWheelAngle:(BOOL)steeringWheelAngle tirePressure:(BOOL)tirePressure wiperStatus:(BOOL)wiperStatus;
SWIFT
init(accelerationPedalPosition: Bool, airbagStatus: Bool, beltStatus: Bool, bodyInformation: Bool, clusterModeStatus: Bool, deviceStatus: Bool, driverBraking: Bool, eCallInfo: Bool, emergencyEvent: Bool, engineTorque: Bool, externalTemperature: Bool, fuelLevel: Bool, fuelLevelState: Bool, gps: Bool, headLampStatus: Bool, instantFuelConsumption: Bool, myKey: Bool, odometer: Bool, prndl: Bool, rpm: Bool, speed: Bool, steeringWheelAngle: Bool, tirePressure: Bool, wiperStatus: Bool)
speed
@abstract A boolean value. If true, unsubscribes speed data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *gps;
SWIFT
var gps: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *speed;
SWIFT
var speed: (NSNumber & SDLBool)? { get set }
rpm
@abstract A boolean value. If true, unsubscribe data
fuelLevel
@abstract A boolean value. If true, unsubscribes FuelLevel data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *rpm;
SWIFT
var rpm: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *fuelLevel;
fuelLevel_State
@abstract A boolean value. If true, unsubscribes fuelLevel_State data
instantFuelConsumption
@abstract A boolean value. If true, unsubscribes instantFuelConsumption data
SWIFT
var fuelLevel: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *fuelLevel_State;
SWIFT
var fuelLevel_State: (NSNumber & SDLBool)? { get set }
externalTemperature
@abstract A boolean value. If true, unsubscribes externalTemperature data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *instantFuelConsumption;
SWIFT
var instantFuelConsumption: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *externalTemperature;
SWIFT
var externalTemperature: (NSNumber & SDLBool)? { get set }
prndl
@abstract A boolean value. If true, unsubscribes Currently selected gear data
tirePressure
@abstract A boolean value. If true, unsubscribes tire pressure status data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *prndl;
SWIFT
var prndl: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *tirePressure;
odometer
@abstract A boolean value. If true, unsubscribes odometer data
beltStatus
@abstract A boolean value. If true, unsubscribes belt Status data
SWIFT
var tirePressure: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *odometer;
SWIFT
var odometer: (NSNumber & SDLBool)? { get set }
bodyInformation
@abstract A boolean value. If true, unsubscribes body Information data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *beltStatus;
SWIFT
var beltStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *bodyInformation;
SWIFT
var bodyInformation: (NSNumber & SDLBool)? { get set }
deviceStatus
@abstract A boolean value. If true, unsubscribes device Status data
driverBraking
@abstract A boolean value. If true, unsubscribes driver Braking data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *deviceStatus;
SWIFT
var deviceStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *driverBraking;
wiperStatus
@abstract A boolean value. If true, unsubscribes wiper Status data
headLampStatus
@abstract A boolean value. If true, unsubscribes Head Lamp Status data
SWIFT
var driverBraking: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *wiperStatus;
SWIFT
var wiperStatus: (NSNumber & SDLBool)? { get set }
engineTorque
@abstract A boolean value. If true, unsubscribes Engine Torque data
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *headLampStatus;
SWIFT
var headLampStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *engineTorque;
SWIFT
var engineTorque: (NSNumber & SDLBool)? { get set }
accPedalPosition
@abstract A boolean value. If true, unsubscribes accPedalPosition data
steeringWheelAngle
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *accPedalPosition;
SWIFT
var accPedalPosition: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *steeringWheelAngle
eCallInfo
Undocumented
airbagStatus
Undocumented
SWIFT
var steeringWheelAngle: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *eCallInfo
SWIFT
var eCallInfo: (NSNumber & SDLBool)? { get set }
emergencyEvent
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *airbagStatus
SWIFT
var airbagStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *emergencyEvent
SWIFT
var emergencyEvent: (NSNumber & SDLBool)? { get set }
clusterModeStatus
Undocumented
myKey
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *clusterModeStatus
SWIFT
var clusterModeStatus: (NSNumber & SDLBool)? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSNumber<SDLBool> *myKey
SDLUnsubscribeVehicleDataResponseClass Reference
Section Contents
• gps• speed• rpm• fuelLevel• fuelLevel_State• instantFuelConsumption• externalTemperature• prndl• tirePressure• odometer• beltStatus• bodyInformation• deviceStatus• driverBraking• wiperStatus• headLampStatus• engineTorque• accPedalPosition• steeringWheelAngle
SWIFT
var myKey: (NSNumber & SDLBool)? { get set }
• eCallInfo• airbagStatus• emergencyEvent• clusterModes• myKey
Overview
Unsubscribe Vehicle Data Response is sent, when UnsubscribeVehicleData has
been called
@since SmartDeviceLink 2.0
gps
@abstract A SDLVehicleDataResult* value. See GPSData.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *gps;
SWIFT
var gps: SDLVehicleDataResult? { get set }
speed
@abstract A SDLVehicleDataResult* value. The vehicle speed in kilometers per
hour.
rpm
@abstract A SDLVehicleDataResult* value. The number of revolutions per
minute of the engine.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *speed;
SWIFT
var speed: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *rpm;
fuelLevel
@abstract A SDLVehicleDataResult* value. The fuel level in the tank
(percentage)
fuelLevel_State
@abstract A SDLVehicleDataResult* value. The fuel level state.
SWIFT
var rpm: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *fuelLevel;
SWIFT
var fuelLevel: SDLVehicleDataResult? { get set }
instantFuelConsumption
@abstract A SDLVehicleDataResult* value. The instantaneous fuel consumption
in microlitres.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *fuelLevel_State;
SWIFT
var fuelLevel_State: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *instantFuelConsumption;
externalTemperature
@abstract A SDLVehicleDataResult* value. The external temperature in degrees
celsius.
prndl
@abstract A SDLVehicleDataResult* value. See PRNDL.
SWIFT
var instantFuelConsumption: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *externalTemperature;
SWIFT
var externalTemperature: SDLVehicleDataResult? { get set }
tirePressure
@abstract A SDLVehicleDataResult* value. See TireStatus.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *prndl;
SWIFT
var prndl: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *tirePressure;
SWIFT
var tirePressure: SDLVehicleDataResult? { get set }
odometer
@abstract A SDLVehicleDataResult* value. Odometer in km.
beltStatus
@abstract A SDLVehicleDataResult* value. The status of the seat belts.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *odometer;
SWIFT
var odometer: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *beltStatus;
bodyInformation
@abstract A SDLVehicleDataResult* value. The body information including
power modes.
deviceStatus
@abstract A SDLVehicleDataResult* value. The device status including signal
and battery strength.
SWIFT
var beltStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *bodyInformation;
SWIFT
var bodyInformation: SDLVehicleDataResult? { get set }
driverBraking
@abstract A SDLVehicleDataResult* value. The status of the brake pedal.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *deviceStatus;
SWIFT
var deviceStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *driverBraking;
SWIFT
var driverBraking: SDLVehicleDataResult? { get set }
wiperStatus
@abstract A SDLVehicleDataResult* value. The status of the wipers.
headLampStatus
@abstract A SDLVehicleDataResult* value. Status of the head lamps.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *wiperStatus;
SWIFT
var wiperStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *headLampStatus;
engineTorque
@abstract A SDLVehicleDataResult* value. Torque value for engine (in Nm) on
non-diesel variants.
accPedalPosition
@abstract A SDLVehicleDataResult* value. Accelerator pedal position
(percentage depressed)
SWIFT
var headLampStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *engineTorque;
SWIFT
var engineTorque: SDLVehicleDataResult? { get set }
steeringWheelAngle
@abstract A SDLVehicleDataResult* value. Current angle of the steering wheel
(in deg)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *accPedalPosition;
SWIFT
var accPedalPosition: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLVehicleDataResult *steeringWheelAngle;
eCallInfo
Undocumented
airbagStatus
Undocumented
SWIFT
var steeringWheelAngle: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *eCallInfo
SWIFT
var eCallInfo: SDLVehicleDataResult? { get set }
emergencyEvent
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *airbagStatus
SWIFT
var airbagStatus: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *emergencyEvent
SWIFT
var emergencyEvent: SDLVehicleDataResult? { get set }
clusterModes
Undocumented
myKey
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *clusterModes
SWIFT
var clusterModes: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *myKey
SDLUpdateTurnList Class Reference
Section Contents
• -initWithTurnList:softButtons:• turnList• softButtons
Overview
Updates the list of next maneuvers, which can be requested by the user
pressing the softbutton
• “Turns” on the Navigation base screen. Three softbuttons are predefined
by the system: Up, Down, Close. *• @since SmartDeviceLink 2.0
-initWithTurnList:softButtons:
Undocumented
SWIFT
var myKey: SDLVehicleDataResult? { get set }
turnList
Optional, SDLTurn, 1 - 100 entries
OBJECTIVE-C
- (instancetype)initWithTurnList:(nullable NSArray<SDLTurn *> *)turnList softButtons:(nullable NSArray<SDLSoftButton *> *)softButtons;
SWIFT
init(turnList: [SDLTurn]?, softButtons: [SDLSoftButton]?)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLTurn *> *turnList;
SWIFT
var turnList: [SDLTurn]? { get set }
softButtons
Required, SDLSoftButton, 0 - 1 Entries
SDLVRHelpItem Class Reference
Section Contents
• -initWithText:image:• -initWithText:image:position:• text• image• position
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLSoftButton *> *softButtons;
SWIFT
var softButtons: [SDLSoftButton]? { get set }
Overview
Undocumented
-initWithText:image:
Undocumented
-initWithText:image:position:
Undocumented
OBJECTIVE-C
- (instancetype)initWithText:(NSString *)text image:(nullable SDLImage *)image;
SWIFT
init(text: String, image: SDLImage?)
text
Undocumented
OBJECTIVE-C
- (instancetype)initWithText:(NSString *)text image:(nullable SDLImage *)image position:(UInt8)position;
SWIFT
init(text: String, image: SDLImage?, position: UInt8)
OBJECTIVE-C
@property (strong, nonatomic) NSString *text
SWIFT
var text: String { get set }
image
Undocumented
position
Undocumented
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLImage *image
SWIFT
var image: SDLImage? { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *position
SDLVehicleDataResult Class Reference
Section Contents
• dataType• resultCode
Overview
Undocumented
dataType
Undocumented
SWIFT
var position: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataType dataType
resultCode
Undocumented
SWIFT
var dataType: SDLVehicleDataType { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataResultCode resultCode
SWIFT
var resultCode: SDLVehicleDataResultCode { get set }
SDLVehicleType Class Reference
Section Contents
• make• model• modelYear• trim
Overview
Describes the type of vehicle the mobile phone is connected with.
@since SDL 2.0
make
@abstract The make of the vehicle
@discussion For example, “Ford”, “Lincoln”, etc.
Optional, Max String length 500 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *make;
model
@abstract The model of the vehicle
@discussion For example, “Fiesta”, “Focus”, etc.
Optional, Max String length 500 chars
modelYear
@abstract The model year of the vehicle
SWIFT
var make: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *model;
SWIFT
var model: String? { get set }
@discussion For example, “2013”
Optional, Max String length 500 chars
trim
@abstract The trim of the vehicle
@discussion For example, “SE”, “SEL”
Optional, Max String length 500 chars
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *modelYear;
SWIFT
var modelYear: String? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSString *trim;
SDLVideoStreamingCapability ClassReference
Section Contents
• -
initWithPreferredResolution:maxBitrate:supportedFormats:hapticDataSupported:• preferredResolution• maxBitrate• supportedFormats• hapticSpatialDataSupported
Overview
Undocumented
-
initWithPreferredResolution:maxBitrate:supportedFormats:hapticDataSupporte
Undocumented
SWIFT
var trim: String? { get set }
preferredResolution
@abstract The preferred resolution of a video stream for decoding and
rendering on HMI, optional
OBJECTIVE-C
- (instancetype)initWithPreferredResolution:(nullable SDLImageResolution *)preferredResolution maxBitrate:(int32_t)maxBitrate supportedFormats:(nullable NSArray<SDLVideoStreamingFormat *> *)supportedFormats hapticDataSupported:(BOOL)hapticDataSupported;
SWIFT
init(preferredResolution: SDLImageResolution?, maxBitrate: Int32, supportedFormats: [SDLVideoStreamingFormat]?, hapticDataSupported: Bool)
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) SDLImageResolution *preferredResolution;
maxBitrate
@abstract The maximum bitrate of video stream that is supported, in kbps,
optional
minvalue= 0
maxvalue= 2147483647
SWIFT
var preferredResolution: SDLImageResolution? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLInt> *maxBitrate;
SWIFT
var maxBitrate: (NSNumber & SDLInt)? { get set }
supportedFormats
@abstract Detailed information on each format supported by this system, in its
preferred order, optional
hapticSpatialDataSupported
True if the system can utilize the haptic spatial data from the source being
streamed.
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSArray<SDLVideoStreamingFormat *> *supportedFormats;
SWIFT
var supportedFormats: [SDLVideoStreamingFormat]? { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic, nullable) NSNumber<SDLBool> *hapticSpatialDataSupported;
SDLVideoStreamingFormat ClassReference
Section Contents
• protocol• codec• -initWithCodec:protocol:
Overview
Undocumented
protocol
@abstract Protocol type, see VideoStreamingProtocol, mandatory
SWIFT
var hapticSpatialDataSupported: (NSNumber & SDLBool)? { get set }
codec
@abstract Codec type, see VideoStreamingCodec, mandatory
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLVideoStreamingProtocol _Nonnull protocol;
SWIFT
var `protocol`: SDLVideoStreamingProtocol { get set }
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLVideoStreamingCodec _Nonnull codec;
SWIFT
var codec: SDLVideoStreamingCodec { get set }
-initWithCodec:protocol:
Undocumented
SDLArtworkImageFormat EnumerationReference
Section Contents
• SDLArtworkImageFormatPNG
OBJECTIVE-C
- (instancetype)initWithCodec:(SDLVideoStreamingCodec)codec protocol:(SDLVideoStreamingProtocol)protocol;
SWIFT
init(codec: SDLVideoStreamingCodec, protocol: SDLVideoStreamingProtocol)
• SDLArtworkImageFormatJPG
Overview
Undocumented
SDLArtworkImageFormatPNG
Undocumented
SDLArtworkImageFormatJPG
Undocumented
OBJECTIVE-C
SDLArtworkImageFormatPNG
SWIFT
case PNG = 0
OBJECTIVE-C
SDLArtworkImageFormatJPG
SDLAudioStreamManagerErrorEnumeration Reference
Section Contents
• SDLAudioStreamManagerErrorNotConnected• SDLAudioStreamManagerErrorNoQueuedAudio
Overview
Undocumented
SDLAudioStreamManagerErrorNotConnected
Undocumented
SWIFT
case JPG = 1
OBJECTIVE-C
SDLAudioStreamManagerErrorNotConnected = -1
SDLAudioStreamManagerErrorNoQueuedAudio
Undocumented
SWIFT
case notConnected = -1
OBJECTIVE-C
SDLAudioStreamManagerErrorNoQueuedAudio = -2
SWIFT
case noQueuedAudio = -2
SDLCarWindowRenderingTypeEnumeration Reference
Section Contents
• SDLCarWindowRenderingTypeLayer• SDLCarWindowRenderingTypeViewAfterScreenUpdates• SDLCarWindowRenderingTypeViewBeforeScreenUpdates
Overview
Undocumented
SDLCarWindowRenderingTypeLayer
Undocumented
OBJECTIVE-C
SDLCarWindowRenderingTypeLayer
SWIFT
case layer = 0
SDLCarWindowRenderingTypeViewAfterScreenUpdates
Undocumented
SDLCarWindowRenderingTypeViewBeforeScreenUpdates
Undocumented
OBJECTIVE-C
SDLCarWindowRenderingTypeViewAfterScreenUpdates
SWIFT
case viewAfterScreenUpdates = 1
OBJECTIVE-C
SDLCarWindowRenderingTypeViewBeforeScreenUpdates
SDLFileManagerError EnumerationReference
Section Contents
• SDLFileManagerErrorCannotOverwrite• SDLFileManagerErrorNoKnownFile• SDLFileManagerErrorUnableToStart• SDLFileManagerErrorUnableToUpload• SDLFileManagerErrorFileDoesNotExist• SDLFileManagerUploadCanceled• SDLFileManagerMultipleFileUploadTasksFailed• SDLFileManagerMultipleFileDeleteTasksFailed
Overview
Errors associated with the SDLFileManager class.
SDLFileManagerErrorCannotOverwrite
A file attempted to send, but a file with that name already exists on the remote
head unit, and the file was not configured to overwrite.
SWIFT
case viewBeforeScreenUpdates = 2
SDLFileManagerErrorNoKnownFile
A file was attempted to be accessed but it does not exist.
OBJECTIVE-C
SDLFileManagerErrorCannotOverwrite = -1
SWIFT
case errorCannotOverwrite = -1
OBJECTIVE-C
SDLFileManagerErrorNoKnownFile = -2
SWIFT
case errorNoKnownFile = -2
SDLFileManagerErrorUnableToStart
The file manager attempted to start but encountered an error.
SDLFileManagerErrorUnableToUpload
The file manager was unable to send this file.
OBJECTIVE-C
SDLFileManagerErrorUnableToStart = -3
SWIFT
case errorUnableToStart = -3
OBJECTIVE-C
SDLFileManagerErrorUnableToUpload = -4
SDLFileManagerErrorFileDoesNotExist
The file manager could not find the local file.
SDLFileManagerUploadCanceled
The file manager could not find the local file.
SWIFT
case errorUnableToUpload = -4
OBJECTIVE-C
SDLFileManagerErrorFileDoesNotExist = -5
SWIFT
case errorFileDoesNotExist = -5
SDLFileManagerMultipleFileUploadTasksFailed
The file manager could not find the local file.
OBJECTIVE-C
SDLFileManagerUploadCanceled = -6
SWIFT
case uploadCanceled = -6
OBJECTIVE-C
SDLFileManagerMultipleFileUploadTasksFailed = -7
SWIFT
case multipleFileUploadTasksFailed = -7
SDLFileManagerMultipleFileDeleteTasksFailed
The file manager could not find the local file.
SDLFrameInfo Enumeration Reference
Section Contents
• SDLFrameInfoHeartbeat• SDLFrameInfoStartService• SDLFrameInfoStartServiceACK• SDLFrameInfoStartServiceNACK• SDLFrameInfoEndService• SDLFrameInfoEndServiceACK• SDLFrameInfoEndServiceNACK• SDLFrameInfoServiceDataAck
OBJECTIVE-C
SDLFileManagerMultipleFileDeleteTasksFailed = -8
SWIFT
case multipleFileDeleteTasksFailed = -8
• SDLFrameInfoHeartbeatACK• SDLFrameInfoSingleFrame• SDLFrameInfoFirstFrame• SDLFrameInfoConsecutiveLastFrame
Overview
Undocumented
SDLFrameInfoHeartbeat
Undocumented
SDLFrameInfoStartService
Undocumented
OBJECTIVE-C
SDLFrameInfoHeartbeat = 0x00
SWIFT
case heartbeat = 0
SDLFrameInfoStartServiceACK
Undocumented
OBJECTIVE-C
SDLFrameInfoStartService = 0x01
SWIFT
case startService = 1
OBJECTIVE-C
SDLFrameInfoStartServiceACK = 0x02
SWIFT
case startServiceACK = 2
SDLFrameInfoStartServiceNACK
Undocumented
SDLFrameInfoEndService
Undocumented
OBJECTIVE-C
SDLFrameInfoStartServiceNACK = 0x03
SWIFT
case startServiceNACK = 3
OBJECTIVE-C
SDLFrameInfoEndService = 0x04
SDLFrameInfoEndServiceACK
Undocumented
SDLFrameInfoEndServiceNACK
Undocumented
SWIFT
case endService = 4
OBJECTIVE-C
SDLFrameInfoEndServiceACK = 0x05
SWIFT
case endServiceACK = 5
SDLFrameInfoServiceDataAck
Undocumented
OBJECTIVE-C
SDLFrameInfoEndServiceNACK = 0x06
SWIFT
case endServiceNACK = 6
OBJECTIVE-C
SDLFrameInfoServiceDataAck = 0xFE
SWIFT
case serviceDataAck = 254
SDLFrameInfoHeartbeatACK
Undocumented
SDLFrameInfoSingleFrame
Undocumented
OBJECTIVE-C
SDLFrameInfoHeartbeatACK = 0xFF
SWIFT
case heartbeatACK = 255
OBJECTIVE-C
SDLFrameInfoSingleFrame = 0x00
SDLFrameInfoFirstFrame
Undocumented
SDLFrameInfoConsecutiveLastFrame
Undocumented
SWIFT
static var singleFrame: SDLFrameInfo { get }
OBJECTIVE-C
SDLFrameInfoFirstFrame = 0x00
SWIFT
static var firstFrame: SDLFrameInfo { get }
SDLFrameType Enumeration Reference
Section Contents
• SDLFrameTypeControl• SDLFrameTypeSingle• SDLFrameTypeFirst• SDLFrameTypeConsecutive
Overview
Undocumented
OBJECTIVE-C
SDLFrameInfoConsecutiveLastFrame = 0x00
SWIFT
static var consecutiveLastFrame: SDLFrameInfo { get }
SDLFrameTypeControl
Undocumented
SDLFrameTypeSingle
Undocumented
OBJECTIVE-C
SDLFrameTypeControl = 0x00
SWIFT
case control = 0
OBJECTIVE-C
SDLFrameTypeSingle = 0x01
SDLFrameTypeFirst
Undocumented
SDLFrameTypeConsecutive
Undocumented
SWIFT
case single = 1
OBJECTIVE-C
SDLFrameTypeFirst = 0x02
SWIFT
case first = 2
SDLLogBytesDirection EnumerationReference
Section Contents
• SDLLogBytesDirectionTransmit• SDLLogBytesDirectionReceive
Overview
Undocumented
OBJECTIVE-C
SDLFrameTypeConsecutive = 0x03
SWIFT
case consecutive = 3
SDLLogBytesDirectionTransmit
Undocumented
SDLLogBytesDirectionReceive
Undocumented
OBJECTIVE-C
SDLLogBytesDirectionTransmit
SWIFT
case transmit = 0
OBJECTIVE-C
SDLLogBytesDirectionReceive
SDLLogFlag Enumeration Reference
Section Contents
• SDLLogFlagError• SDLLogFlagWarning• SDLLogFlagDebug• SDLLogFlagVerbose
Overview
Flags used for SDLLogLevel to provide correct enum values. This is purely for
internal use.
• SDLLogFlagVerbose: Verbose level logging• SDLLogFlagDebug: Debug level logging• SDLLogFlagWarning: Warning level logging• SDLLogFlagError: Error level logging.
SDLLogFlagError
Undocumented
SWIFT
case receive = 1
SDLLogFlagWarning
Undocumented
OBJECTIVE-C
SDLLogFlagError = 1 << 0
SWIFT
static var error: SDLLogFlag { get }
OBJECTIVE-C
SDLLogFlagWarning = 1 << 1
SWIFT
static var warning: SDLLogFlag { get }
SDLLogFlagDebug
Undocumented
SDLLogFlagVerbose
Undocumented
OBJECTIVE-C
SDLLogFlagDebug = 1 << 2
SWIFT
static var debug: SDLLogFlag { get }
OBJECTIVE-C
SDLLogFlagVerbose = 1 << 3
SDLLogFormatType EnumerationReference
Section Contents
• SDLLogFormatTypeSimple• SDLLogFormatTypeDefault• SDLLogFormatTypeDetailed
Overview
The output format of logs; how they will appear when printed out into a string.
• SDLLogFormatTypeSimple: A bare-bones log format: 01F53909:52:07:324
(SDL)Protocol – a random test i guess• SDLLogFormatTypeDefault: A middle detail default log format:
01F53909:52:07:324 (SDL)Protocol:SDLV2ProtocolHeader:25 – Some log
message• SDLLogFormatTypeDetailed: A very detailed log format: 01F
53909:52:07:324
DEBUG com.apple.main-thread:(SDL)Protocol:[SDLV2ProtocolHeader
parse:]:74 – Some log message
SWIFT
static var verbose: SDLLogFlag { get }
SDLLogFormatTypeSimple
Undocumented
SDLLogFormatTypeDefault
Undocumented
OBJECTIVE-C
SDLLogFormatTypeSimple
SWIFT
case simple = 0
OBJECTIVE-C
SDLLogFormatTypeDefault
SDLLogFormatTypeDetailed
Undocumented
SWIFT
case `default` = 1
OBJECTIVE-C
SDLLogFormatTypeDetailed
SWIFT
case detailed = 2
SDLLogLevel Enumeration Reference
Section Contents
• SDLLogLevelDefault• SDLLogLevelOff• SDLLogLevelError• SDLLogLevelWarning• SDLLogLevelDebug• SDLLogLevelVerbose
Overview
An enum describing a level of logging.
• SDLLogLevelDefault: This is used to describe that a “specific” logging will
instead use the global log level, for example, a module may use the global
log level instead of its own by specifying this level.• SDLLogLevelOff: This is used to describe a level that involves absolutely
no logs being output.• SDLLogLevelError: Only error level logs will be output.• SDLLogLevelWarning: Both error and warning level logs will be output.• SDLLogLevelDebug: Error, warning, and debug level logs will be output.
This level will never be output in RELEASE environments.• SDLLogLevelVerbose: All level logs will be output. This level will never be
output in RELEASE environments.
SDLLogLevelDefault
Undocumented
SDLLogLevelOff
Undocumented
OBJECTIVE-C
SDLLogLevelDefault = -1
SWIFT
case `default` = -1
OBJECTIVE-C
SDLLogLevelOff = 0
SWIFT
case off = 0
SDLLogLevelError
Undocumented
SDLLogLevelWarning
Undocumented
OBJECTIVE-C
SDLLogLevelError = SDLLogFlagError
SWIFT
case error = 1
OBJECTIVE-C
SDLLogLevelWarning = (SDLLogFlagError | SDLLogFlagWarning)
SDLLogLevelDebug
Undocumented
SDLLogLevelVerbose
Undocumented
SWIFT
case warning = 3
OBJECTIVE-C
SDLLogLevelDebug = (SDLLogFlagWarning | SDLLogFlagDebug)
SWIFT
case debug = 6
SDLManagerError EnumerationReference
Section Contents
• SDLManagerErrorRPCRequestFailed• SDLManagerErrorNotConnected• SDLManagerErrorNotReady• SDLManagerErrorUnknownRemoteError• SDLManagerErrorManagersFailedToStart• SDLManagerErrorRegistrationFailed
OBJECTIVE-C
SDLLogLevelVerbose = (SDLLogFlagDebug | SDLLogFlagVerbose)
SWIFT
case verbose = 12
• SDLManagerErrorRegistrationSuccessWithWarning
Overview
Errors associated with the SDLManager class.
SDLManagerErrorRPCRequestFailed
An RPC request failed to send.
SDLManagerErrorNotConnected
Some action was attempted that requires a connection to the remote head unit.
OBJECTIVE-C
SDLManagerErrorRPCRequestFailed = -1
SWIFT
case rpcRequestFailed = -1
OBJECTIVE-C
SDLManagerErrorNotConnected = -2
SDLManagerErrorNotReady
Some action was attempted before the ready state was reached.
SDLManagerErrorUnknownRemoteError
The remote system encountered an unknown error.
SWIFT
case notConnected = -2
OBJECTIVE-C
SDLManagerErrorNotReady = -3
SWIFT
case notReady = -3
SDLManagerErrorManagersFailedToStart
One or more of the sub-managers failed to start.
OBJECTIVE-C
SDLManagerErrorUnknownRemoteError = -4
SWIFT
case unknownRemoteError = -4
OBJECTIVE-C
SDLManagerErrorManagersFailedToStart = -5
SWIFT
case managersFailedToStart = -5
SDLManagerErrorRegistrationFailed
Registering with the remote system failed.
SDLManagerErrorRegistrationSuccessWithWarning
Registering with the remote system was successful, but had a warning.
OBJECTIVE-C
SDLManagerErrorRegistrationFailed = -6
SWIFT
case registrationFailed = -6
OBJECTIVE-C
SDLManagerErrorRegistrationSuccessWithWarning = -7
SDLPermissionGroupStatusEnumeration Reference
Section Contents
• SDLPermissionGroupStatusAllowed• SDLPermissionGroupStatusDisallowed• SDLPermissionGroupStatusMixed• SDLPermissionGroupStatusUnknown
Overview
The status of the group of RPCs permissions.
SDLPermissionGroupStatusAllowed
Every RPC in the group is currently allowed.
SWIFT
case registrationSuccessWithWarning = -7
SDLPermissionGroupStatusDisallowed
Every RPC in the group is currently disallowed.
OBJECTIVE-C
SDLPermissionGroupStatusAllowed
SWIFT
case allowed = 0
OBJECTIVE-C
SDLPermissionGroupStatusDisallowed
SWIFT
case disallowed = 1
SDLPermissionGroupStatusMixed
Some RPCs in the group are allowed and some disallowed.
SDLPermissionGroupStatusUnknown
The current status of the group is unknown.
OBJECTIVE-C
SDLPermissionGroupStatusMixed
SWIFT
case mixed = 2
OBJECTIVE-C
SDLPermissionGroupStatusUnknown
SDLPermissionGroupType EnumerationReference
Section Contents
• SDLPermissionGroupTypeAllAllowed• SDLPermissionGroupTypeAny
Overview
A permission group type which will be used to tell the system what type of
changes you want to be notified about for the group.
SDLPermissionGroupTypeAllAllowed
Be notified when all of the RPC in the group are allowed, or, when they all stop
being allowed in some sense, that is, when they were all allowed, and now they
are not.
SWIFT
case unknown = 3
SDLPermissionGroupTypeAny
Be notified when any change in availability occurs among the group.
OBJECTIVE-C
SDLPermissionGroupTypeAllAllowed
SWIFT
case allAllowed = 0
OBJECTIVE-C
SDLPermissionGroupTypeAny
SWIFT
case any = 1
SDLProtocolError EnumerationReference
Section Contents
• SDLProtocolErrorNoSecurityManager
Overview
Undocumented
SDLProtocolErrorNoSecurityManager
Undocumented
OBJECTIVE-C
SDLProtocolErrorNoSecurityManager
SWIFT
case noSecurityManager = 0
SDLRPCMessageType EnumerationReference
Section Contents
• SDLRPCMessageTypeRequest• SDLRPCMessageTypeResponse• SDLRPCMessageTypeNotification
Overview
Undocumented
SDLRPCMessageTypeRequest
Undocumented
OBJECTIVE-C
SDLRPCMessageTypeRequest = 0
SWIFT
case request = 0
SDLRPCMessageTypeResponse
Undocumented
SDLRPCMessageTypeNotification
Undocumented
OBJECTIVE-C
SDLRPCMessageTypeResponse
SWIFT
case response = 1
OBJECTIVE-C
SDLRPCMessageTypeNotification
SDLServiceType Enumeration Reference
Section Contents
• SDLServiceTypeControl• SDLServiceTypeRPC• SDLServiceTypeAudio• SDLServiceTypeVideo• SDLServiceTypeBulkData
Overview
Undocumented
SDLServiceTypeControl
Undocumented
SWIFT
case notification = 2
SDLServiceTypeRPC
Undocumented
OBJECTIVE-C
SDLServiceTypeControl = 0x00
SWIFT
case control = 0
OBJECTIVE-C
SDLServiceTypeRPC NS_SWIFT_NAME(rpc) = 0x07
SWIFT
case rpc = 7
SDLServiceTypeAudio
Undocumented
SDLServiceTypeVideo
Undocumented
OBJECTIVE-C
SDLServiceTypeAudio = 0x0A
SWIFT
case audio = 10
OBJECTIVE-C
SDLServiceTypeVideo = 0x0B
SDLServiceTypeBulkData
Undocumented
SWIFT
case video = 11
OBJECTIVE-C
SDLServiceTypeBulkData = 0x0F
SWIFT
case bulkData = 15
SDLStreamingEncryptionFlagEnumeration Reference
Section Contents
• SDLStreamingEncryptionFlagNone• SDLStreamingEncryptionFlagAuthenticateOnly• SDLStreamingEncryptionFlagAuthenticateAndEncrypt
Overview
Undocumented
SDLStreamingEncryptionFlagNone
Undocumented
OBJECTIVE-C
SDLStreamingEncryptionFlagNone
SWIFT
case none = 0
SDLStreamingEncryptionFlagAuthenticateOnly
Undocumented
SDLStreamingEncryptionFlagAuthenticateAndEncrypt
Undocumented
OBJECTIVE-C
SDLStreamingEncryptionFlagAuthenticateOnly
SWIFT
case authenticateOnly = 1
OBJECTIVE-C
SDLStreamingEncryptionFlagAuthenticateAndEncrypt
SDLAudioStreamManagerDelegateProtocol Reference
Section Contents
• -audioStreamManager:fileDidFinishPlaying:successfully:• -audioStreamManager:errorDidOccurForFile:error:
Overview
Undocumented
-
audioStreamManager:fileDidFinishPlaying:successfully:
Undocumented
SWIFT
case authenticateAndEncrypt = 2
-audioStreamManager:errorDidOccurForFile:error:
Undocumented
OBJECTIVE-C
- (void)audioStreamManager:(SDLAudioStreamManager *)audioManager fileDidFinishPlaying:(NSURL *)fileURL successfully:(BOOL)successfully;
SWIFT
func audioStreamManager(_ audioManager: SDLAudioStreamManager, fileDidFinishPlaying fileURL: URL, successfully: Bool)
OBJECTIVE-C
- (void)audioStreamManager:(SDLAudioStreamManager *)audioManager errorDidOccurForFile:(NSURL *)fileURL error:(NSError *)error;
SDLIAPSessionDelegate ProtocolReference
Section Contents
• -onSessionInitializationCompleteForSession:• -onSessionStreamsEnded:
Overview
Undocumented
-onSessionInitializationCompleteForSession:
Undocumented
SWIFT
func audioStreamManager(_ audioManager: SDLAudioStreamManager, errorDidOccurForFile fileURL: URL, error: Error)
-onSessionStreamsEnded:
Undocumented
OBJECTIVE-C
- (void)onSessionInitializationCompleteForSession:(SDLIAPSession *)session;
SWIFT
func onSessionInitializationComplete(for session: SDLIAPSession)
OBJECTIVE-C
- (void)onSessionStreamsEnded:(SDLIAPSession *)session;
SWIFT
func onSessionStreamsEnded(_ session: SDLIAPSession)
SDLLogTarget Protocol Reference
Section Contents
• +logger• -setupLogger• -logWithLog:formattedLog:• -teardownLogger
Overview
Undocumented
+logger
A simple convenience initializer to create the object. This should not start up
the logger.
OBJECTIVE-C
+ (nonnull id<SDLLogTarget>)logger;
SWIFT
static func logger() -> SDLLogTarget
An instance of the logger.
-setupLogger
A call to setup the logger in whatever manner it needs to do so.
Whether or not the logger set up correctly.
RETURN VALUE
OBJECTIVE-C
- (BOOL)setupLogger;
SWIFT
func setupLogger() -> Bool
RETURN VALUE
-logWithLog:formattedLog:
Log a particular log using the model and the formatted log message to the
target.
log
The log model, if you can log additional data, such as the log level, use
this
stringLog
The formatted message
OBJECTIVE-C
- (void)logWithLog:(nonnull SDLLogModel *)log formattedLog:(nonnull NSString *)stringLog;
SWIFT
func log(withLog log: SDLLogModel, formattedLog stringLog: String)
PARAMETERS
-teardownLogger
Undocumented
SDLManagerDelegate ProtocolReference
Section Contents
• -managerDidDisconnect• -hmiLevel:didChangeToLevel:• -audioStreamingState:didChangeToState:
OBJECTIVE-C
- (void)teardownLogger;
SWIFT
func teardownLogger()
• -systemContext:didChangeToContext:
Overview
Undocumented
-managerDidDisconnect
Called upon a disconnection from the remote system.
-hmiLevel:didChangeToLevel:
Called when the HMI level state of this application changes on the remote
system. This is equivalent to the application’s state changes in iOS such as
foreground, background, or closed.
OBJECTIVE-C
- (void)managerDidDisconnect;
SWIFT
func managerDidDisconnect()
oldLevel
The previous level which has now been left.
newLevel
The current level.
-audioStreamingState:didChangeToState:
Called when the audio streaming state of this application changes on the
remote system. This refers to when streaming audio is audible to the user.
OBJECTIVE-C
- (void)hmiLevel:(nonnull SDLHMILevel)oldLevel didChangeToLevel:(nonnull SDLHMILevel)newLevel;
SWIFT
func hmiLevel(_ oldLevel: SDLHMILevel, didChangeToLevel newLevel: SDLHMILevel)
PARAMETERS
oldState
The previous state which has now been left.
newState
OBJECTIVE-C
- (void)audioStreamingState:(nullable SDLAudioStreamingState)oldState didChangeToState:(nonnull SDLAudioStreamingState)newState;
SWIFT
optional func audioStreamingState(_ oldState: SDLAudioStreamingState?, didChangeToState newState: SDLAudioStreamingState)
PARAMETERS
The current state.
-systemContext:didChangeToContext:
Called when the system context of this application changes on the remote
system. This refers to whether or not a user-initiated interaction is in progress,
and if so, what it is.
oldContext
The previous context which has now been left.
newContext
OBJECTIVE-C
- (void)systemContext:(nullable SDLSystemContext)oldContext didChangeToContext:(nonnull SDLSystemContext)newContext;
SWIFT
optional func systemContext(_ oldContext: SDLSystemContext?, didChangeToContext newContext: SDLSystemContext)
PARAMETERS
The current context.
SDLProtocolListener Protocol Reference
Section Contents
• -handleProtocolStartServiceACKMessage:• -handleProtocolStartServiceNAKMessage:• -handleProtocolEndServiceACKMessage:• -handleProtocolEndServiceNAKMessage:• -handleHeartbeatForSession:• -handleHeartbeatACK• -onProtocolMessageReceived:• -onProtocolOpened• -onProtocolClosed• -onError:exception:
Overview
Undocumented
-handleProtocolStartServiceACKMessage:
Undocumented
OBJECTIVE-C
- (void)handleProtocolStartServiceACKMessage:(SDLProtocolMessage *)startServiceACK;
-handleProtocolStartServiceNAKMessage:
Undocumented
-handleProtocolEndServiceACKMessage:
Undocumented
SWIFT
optional func handleProtocolStartServiceACKMessage(_ startServiceACK: SDLProtocolMessage)
OBJECTIVE-C
- (void)handleProtocolStartServiceNAKMessage:(SDLProtocolMessage *)startServiceNAK;
SWIFT
optional func handleProtocolStartServiceNAKMessage(_ startServiceNAK: SDLProtocolMessage)
-handleProtocolEndServiceNAKMessage:
Undocumented
OBJECTIVE-C
- (void)handleProtocolEndServiceACKMessage:(SDLProtocolMessage *)endServiceACK;
SWIFT
optional func handleProtocolEndServiceACKMessage(_ endServiceACK: SDLProtocolMessage)
OBJECTIVE-C
- (void)handleProtocolEndServiceNAKMessage:(SDLProtocolMessage *)endServiceNAK;
-handleHeartbeatForSession:
Undocumented
-handleHeartbeatACK
Undocumented
SWIFT
optional func handleProtocolEndServiceNAKMessage(_ endServiceNAK: SDLProtocolMessage)
OBJECTIVE-C
- (void)handleHeartbeatForSession:(Byte)session;
SWIFT
optional func handleHeartbeat(forSession session: UInt8)
-onProtocolMessageReceived:
Undocumented
OBJECTIVE-C
- (void)handleHeartbeatACK;
SWIFT
optional func handleHeartbeatACK()
OBJECTIVE-C
- (void)onProtocolMessageReceived:(SDLProtocolMessage *)msg;
SWIFT
optional func onProtocolMessageReceived(_ msg: SDLProtocolMessage)
-onProtocolOpened
Undocumented
-onProtocolClosed
Undocumented
OBJECTIVE-C
- (void)onProtocolOpened;
SWIFT
optional func onProtocolOpened()
OBJECTIVE-C
- (void)onProtocolClosed;
-onError:exception:
Undocumented
SWIFT
optional func onProtocolClosed()
OBJECTIVE-C
- (void)onError:(NSString *)info exception:(NSException *)e;
SWIFT
optional func onError(_ info: String, exception e: NSException)
SDLProxyListener Protocol Reference
Section Contents
• -onOnDriverDistraction:• -onOnHMIStatus:• -onProxyClosed• -onProxyOpened• -onAddCommandResponse:• -onAddSubMenuResponse:• -onAlertManeuverResponse:• -onAlertResponse:• -onButtonPressResponse:• -onChangeRegistrationResponse:• -onCreateInteractionChoiceSetResponse:• -onDeleteCommandResponse:• -onDeleteFileResponse:• -onDeleteInteractionChoiceSetResponse:• -onDeleteSubMenuResponse:• -onDiagnosticMessageResponse:• -onDialNumberResponse:• -onEncodedSyncPDataResponse:• -onEndAudioPassThruResponse:• -onError:• -onGenericResponse:• -onGetDTCsResponse:• -onGetInteriorVehicleDataResponse:• -onGetSystemCapabilityResponse:• -onGetVehicleDataResponse:• -onGetWayPointsResponse:• -onListFilesResponse:• -onReceivedLockScreenIcon:• -onOnAppInterfaceUnregistered:• -onOnAudioPassThru:• -onOnButtonEvent:
• -onOnButtonPress:• -onOnCommand:• -onOnEncodedSyncPData:• -onOnHashChange:• -onOnInteriorVehicleData:• -onOnKeyboardInput:• -onOnLanguageChange:• -onOnLockScreenNotification:• -onOnPermissionsChange:• -onOnSyncPData:• -onOnSystemRequest:• -onOnTBTClientState:• -onOnTouchEvent:• -onOnVehicleData:• -onOnWayPointChange:• -onPerformAudioPassThruResponse:• -onPerformInteractionResponse:• -onPutFileResponse:• -onReadDIDResponse:• -onRegisterAppInterfaceResponse:• -onResetGlobalPropertiesResponse:• -onScrollableMessageResponse:• -onSendHapticDataResponse:• -onSendLocationResponse:• -onSetAppIconResponse:• -onSetDisplayLayoutResponse:• -onSetGlobalPropertiesResponse:• -onSetInteriorVehicleDataResponse:• -onSetMediaClockTimerResponse:• -onShowConstantTBTResponse:• -onShowResponse:• -onSliderResponse:• -onSpeakResponse:• -onSubscribeButtonResponse:• -onSubscribeVehicleDataResponse:• -onSubscribeWayPointsResponse:• -onSyncPDataResponse:• -onUpdateTurnListResponse:
• -onUnregisterAppInterfaceResponse:• -onUnsubscribeButtonResponse:• -onUnsubscribeVehicleDataResponse:• -onUnsubscribeWayPointsResponse:
Overview
Undocumented
-onOnDriverDistraction:
Undocumented
-onOnHMIStatus:
Undocumented
OBJECTIVE-C
- (void)onOnDriverDistraction:(SDLOnDriverDistraction *)notification;
SWIFT
func on(_ notification: SDLOnDriverDistraction)
-onProxyClosed
Undocumented
OBJECTIVE-C
- (void)onOnHMIStatus:(SDLOnHMIStatus *)notification;
SWIFT
func on(_ notification: SDLOnHMIStatus)
OBJECTIVE-C
- (void)onProxyClosed;
SWIFT
func onProxyClosed()
-onProxyOpened
Undocumented
-onAddCommandResponse:
Undocumented
OBJECTIVE-C
- (void)onProxyOpened;
SWIFT
func onProxyOpened()
OBJECTIVE-C
- (void)onAddCommandResponse:(SDLAddCommandResponse *)response;
-onAddSubMenuResponse:
Undocumented
-onAlertManeuverResponse:
Undocumented
SWIFT
optional func onAddCommandResponse(_ response: SDLAddCommandResponse)
OBJECTIVE-C
- (void)onAddSubMenuResponse:(SDLAddSubMenuResponse *)response;
SWIFT
optional func onAddSubMenuResponse(_ response: SDLAddSubMenuResponse)
-onAlertResponse:
Undocumented
OBJECTIVE-C
- (void)onAlertManeuverResponse:(SDLAlertManeuverResponse *)response;
SWIFT
optional func onAlertManeuverResponse(_ response: SDLAlertManeuverResponse)
OBJECTIVE-C
- (void)onAlertResponse:(SDLAlertResponse *)response;
SWIFT
optional func onAlertResponse(_ response: SDLAlertResponse)
-onButtonPressResponse:
Undocumented
-onChangeRegistrationResponse:
Undocumented
OBJECTIVE-C
- (void)onButtonPressResponse:(SDLButtonPressResponse *)response;
SWIFT
optional func onButtonPressResponse(_ response: SDLButtonPressResponse)
OBJECTIVE-C
- (void)onChangeRegistrationResponse:(SDLChangeRegistrationResponse *)response;
-onCreateInteractionChoiceSetResponse:
Undocumented
-onDeleteCommandResponse:
Undocumented
SWIFT
optional func onChangeRegistrationResponse(_ response: SDLChangeRegistrationResponse)
OBJECTIVE-C
- (void)onCreateInteractionChoiceSetResponse:(SDLCreateInteractionChoiceSetResponse *)response;
SWIFT
optional func onCreateInteractionChoiceSetResponse(_ response: SDLCreateInteractionChoiceSetResponse)
-onDeleteFileResponse:
Undocumented
OBJECTIVE-C
- (void)onDeleteCommandResponse:(SDLDeleteCommandResponse *)response;
SWIFT
optional func onDeleteCommandResponse(_ response: SDLDeleteCommandResponse)
OBJECTIVE-C
- (void)onDeleteFileResponse:(SDLDeleteFileResponse *)response;
-onDeleteInteractionChoiceSetResponse:
Undocumented
-onDeleteSubMenuResponse:
Undocumented
SWIFT
optional func onDeleteFileResponse(_ response: SDLDeleteFileResponse)
OBJECTIVE-C
- (void)onDeleteInteractionChoiceSetResponse:(SDLDeleteInteractionChoiceSetResponse *)response;
SWIFT
optional func onDeleteInteractionChoiceSetResponse(_ response: SDLDeleteInteractionChoiceSetResponse)
-onDiagnosticMessageResponse:
Undocumented
OBJECTIVE-C
- (void)onDeleteSubMenuResponse:(SDLDeleteSubMenuResponse *)response;
SWIFT
optional func onDeleteSubMenuResponse(_ response: SDLDeleteSubMenuResponse)
OBJECTIVE-C
- (void)onDiagnosticMessageResponse:(SDLDiagnosticMessageResponse *)response;
-onDialNumberResponse:
Undocumented
-onEncodedSyncPDataResponse:
Undocumented
SWIFT
optional func onDiagnosticMessageResponse(_ response: SDLDiagnosticMessageResponse)
OBJECTIVE-C
- (void)onDialNumberResponse:(SDLDialNumberResponse *)response;
SWIFT
optional func onDialNumberResponse(_ response: SDLDialNumberResponse)
-onEndAudioPassThruResponse:
Undocumented
OBJECTIVE-C
- (void)onEncodedSyncPDataResponse:(SDLEncodedSyncPDataResponse *)response;
SWIFT
optional func onEncodedSyncPDataResponse(_ response: SDLEncodedSyncPDataResponse)
OBJECTIVE-C
- (void)onEndAudioPassThruResponse:(SDLEndAudioPassThruResponse *)response;
-onError:
Undocumented
-onGenericResponse:
Undocumented
SWIFT
optional func onEndAudioPassThruResponse(_ response: SDLEndAudioPassThruResponse)
OBJECTIVE-C
- (void)onError:(NSException *)e;
SWIFT
optional func onError(_ e: NSException)
-onGetDTCsResponse:
Undocumented
OBJECTIVE-C
- (void)onGenericResponse:(SDLGenericResponse *)response;
SWIFT
optional func onGenericResponse(_ response: SDLGenericResponse)
OBJECTIVE-C
- (void)onGetDTCsResponse:(SDLGetDTCsResponse *)response;
SWIFT
optional func onGetDTCsResponse(_ response: SDLGetDTCsResponse)
-onGetInteriorVehicleDataResponse:
Undocumented
-onGetSystemCapabilityResponse:
Undocumented
OBJECTIVE-C
- (void)onGetInteriorVehicleDataResponse:(SDLGetInteriorVehicleDataResponse *)response;
SWIFT
optional func onGetInteriorVehicleDataResponse(_ response: SDLGetInteriorVehicleDataResponse)
OBJECTIVE-C
- (void)onGetSystemCapabilityResponse:(SDLGetSystemCapabilityResponse *)response;
-onGetVehicleDataResponse:
Undocumented
-onGetWayPointsResponse:
Undocumented
SWIFT
optional func onGetSystemCapabilityResponse(_ response: SDLGetSystemCapabilityResponse)
OBJECTIVE-C
- (void)onGetVehicleDataResponse:(SDLGetVehicleDataResponse *)response;
SWIFT
optional func onGetVehicleDataResponse(_ response: SDLGetVehicleDataResponse)
-onListFilesResponse:
Undocumented
OBJECTIVE-C
- (void)onGetWayPointsResponse:(SDLGetWaypointsResponse *)response;
SWIFT
optional func onGetWayPointsResponse(_ response: SDLGetWaypointsResponse)
OBJECTIVE-C
- (void)onListFilesResponse:(SDLListFilesResponse *)response;
SWIFT
optional func onListFilesResponse(_ response: SDLListFilesResponse)
-onReceivedLockScreenIcon:
Undocumented
-onOnAppInterfaceUnregistered:
Undocumented
OBJECTIVE-C
- (void)onReceivedLockScreenIcon:(UIImage *)icon;
SWIFT
optional func onReceivedLockScreenIcon(_ icon: UIImage)
OBJECTIVE-C
- (void)onOnAppInterfaceUnregistered:(SDLOnAppInterfaceUnregistered *)notification;
-onOnAudioPassThru:
Undocumented
-onOnButtonEvent:
Undocumented
SWIFT
optional func on(_ notification: SDLOnAppInterfaceUnregistered)
OBJECTIVE-C
- (void)onOnAudioPassThru:(SDLOnAudioPassThru *)notification;
SWIFT
optional func on(_ notification: SDLOnAudioPassThru)
-onOnButtonPress:
Undocumented
OBJECTIVE-C
- (void)onOnButtonEvent:(SDLOnButtonEvent *)notification;
SWIFT
optional func on(_ notification: SDLOnButtonEvent)
OBJECTIVE-C
- (void)onOnButtonPress:(SDLOnButtonPress *)notification;
SWIFT
optional func on(_ notification: SDLOnButtonPress)
-onOnCommand:
Undocumented
-onOnEncodedSyncPData:
Undocumented
OBJECTIVE-C
- (void)onOnCommand:(SDLOnCommand *)notification;
SWIFT
optional func on(_ notification: SDLOnCommand)
OBJECTIVE-C
- (void)onOnEncodedSyncPData:(SDLOnEncodedSyncPData *)notification;
-onOnHashChange:
Undocumented
-onOnInteriorVehicleData:
Undocumented
SWIFT
optional func on(_ notification: SDLOnEncodedSyncPData)
OBJECTIVE-C
- (void)onOnHashChange:(SDLOnHashChange *)notification;
SWIFT
optional func on(_ notification: SDLOnHashChange)
-onOnKeyboardInput:
Undocumented
OBJECTIVE-C
- (void)onOnInteriorVehicleData:(SDLOnInteriorVehicleData *)notification;
SWIFT
optional func on(_ notification: SDLOnInteriorVehicleData)
OBJECTIVE-C
- (void)onOnKeyboardInput:(SDLOnKeyboardInput *)notification;
SWIFT
optional func on(_ notification: SDLOnKeyboardInput)
-onOnLanguageChange:
Undocumented
-onOnLockScreenNotification:
Undocumented
OBJECTIVE-C
- (void)onOnLanguageChange:(SDLOnLanguageChange *)notification;
SWIFT
optional func on(_ notification: SDLOnLanguageChange)
OBJECTIVE-C
- (void)onOnLockScreenNotification:(SDLOnLockScreenStatus *)notification;
-onOnPermissionsChange:
Undocumented
-onOnSyncPData:
Undocumented
SWIFT
optional func on(onLockScreenNotification notification: SDLOnLockScreenStatus)
OBJECTIVE-C
- (void)onOnPermissionsChange:(SDLOnPermissionsChange *)notification;
SWIFT
optional func on(_ notification: SDLOnPermissionsChange)
-onOnSystemRequest:
Undocumented
OBJECTIVE-C
- (void)onOnSyncPData:(SDLOnSyncPData *)notification;
SWIFT
optional func on(_ notification: SDLOnSyncPData)
OBJECTIVE-C
- (void)onOnSystemRequest:(SDLOnSystemRequest *)notification;
SWIFT
optional func on(_ notification: SDLOnSystemRequest)
-onOnTBTClientState:
Undocumented
-onOnTouchEvent:
Undocumented
OBJECTIVE-C
- (void)onOnTBTClientState:(SDLOnTBTClientState *)notification;
SWIFT
optional func on(_ notification: SDLOnTBTClientState)
OBJECTIVE-C
- (void)onOnTouchEvent:(SDLOnTouchEvent *)notification;
-onOnVehicleData:
Undocumented
-onOnWayPointChange:
Undocumented
SWIFT
optional func on(_ notification: SDLOnTouchEvent)
OBJECTIVE-C
- (void)onOnVehicleData:(SDLOnVehicleData *)notification;
SWIFT
optional func on(_ notification: SDLOnVehicleData)
-onPerformAudioPassThruResponse:
Undocumented
OBJECTIVE-C
- (void)onOnWayPointChange:(SDLOnWayPointChange *)notification;
SWIFT
optional func on(_ notification: SDLOnWayPointChange)
OBJECTIVE-C
- (void)onPerformAudioPassThruResponse:(SDLPerformAudioPassThruResponse *)response;
SWIFT
optional func onPerformAudioPassThruResponse(_ response: SDLPerformAudioPassThruResponse)
-onPerformInteractionResponse:
Undocumented
-onPutFileResponse:
Undocumented
OBJECTIVE-C
- (void)onPerformInteractionResponse:(SDLPerformInteractionResponse *)response;
SWIFT
optional func onPerformInteractionResponse(_ response: SDLPerformInteractionResponse)
OBJECTIVE-C
- (void)onPutFileResponse:(SDLPutFileResponse *)response;
-onReadDIDResponse:
Undocumented
-onRegisterAppInterfaceResponse:
Undocumented
SWIFT
optional func onPutFileResponse(_ response: SDLPutFileResponse)
OBJECTIVE-C
- (void)onReadDIDResponse:(SDLReadDIDResponse *)response;
SWIFT
optional func onReadDIDResponse(_ response: SDLReadDIDResponse)
-onResetGlobalPropertiesResponse:
Undocumented
OBJECTIVE-C
- (void)onRegisterAppInterfaceResponse:(SDLRegisterAppInterfaceResponse *)response;
SWIFT
optional func onRegisterAppInterfaceResponse(_ response: SDLRegisterAppInterfaceResponse)
OBJECTIVE-C
- (void)onResetGlobalPropertiesResponse:(SDLResetGlobalPropertiesResponse *)response;
-onScrollableMessageResponse:
Undocumented
-onSendHapticDataResponse:
Undocumented
SWIFT
optional func onResetGlobalPropertiesResponse(_ response: SDLResetGlobalPropertiesResponse)
OBJECTIVE-C
- (void)onScrollableMessageResponse:(SDLScrollableMessageResponse *)response;
SWIFT
optional func onScrollableMessageResponse(_ response: SDLScrollableMessageResponse)
-onSendLocationResponse:
Undocumented
OBJECTIVE-C
- (void)onSendHapticDataResponse:(SDLSendHapticDataResponse *)response;
SWIFT
optional func onSendHapticDataResponse(_ response: SDLSendHapticDataResponse)
OBJECTIVE-C
- (void)onSendLocationResponse:(SDLSendLocationResponse *)response;
-onSetAppIconResponse:
Undocumented
-onSetDisplayLayoutResponse:
Undocumented
SWIFT
optional func onSendLocationResponse(_ response: SDLSendLocationResponse)
OBJECTIVE-C
- (void)onSetAppIconResponse:(SDLSetAppIconResponse *)response;
SWIFT
optional func onSetAppIconResponse(_ response: SDLSetAppIconResponse)
-onSetGlobalPropertiesResponse:
Undocumented
OBJECTIVE-C
- (void)onSetDisplayLayoutResponse:(SDLSetDisplayLayoutResponse *)response;
SWIFT
optional func onSetDisplayLayoutResponse(_ response: SDLSetDisplayLayoutResponse)
OBJECTIVE-C
- (void)onSetGlobalPropertiesResponse:(SDLSetGlobalPropertiesResponse *)response;
-onSetInteriorVehicleDataResponse:
Undocumented
-onSetMediaClockTimerResponse:
Undocumented
SWIFT
optional func onSetGlobalPropertiesResponse(_ response: SDLSetGlobalPropertiesResponse)
OBJECTIVE-C
- (void)onSetInteriorVehicleDataResponse:(SDLSetInteriorVehicleDataResponse *)response;
SWIFT
optional func onSetInteriorVehicleDataResponse(_ response: SDLSetInteriorVehicleDataResponse)
-onShowConstantTBTResponse:
Undocumented
OBJECTIVE-C
- (void)onSetMediaClockTimerResponse:(SDLSetMediaClockTimerResponse *)response;
SWIFT
optional func onSetMediaClockTimerResponse(_ response: SDLSetMediaClockTimerResponse)
OBJECTIVE-C
- (void)onShowConstantTBTResponse:(SDLShowConstantTBTResponse *)response;
-onShowResponse:
Undocumented
-onSliderResponse:
Undocumented
SWIFT
optional func onShowConstantTBTResponse(_ response: SDLShowConstantTBTResponse)
OBJECTIVE-C
- (void)onShowResponse:(SDLShowResponse *)response;
SWIFT
optional func onShowResponse(_ response: SDLShowResponse)
-onSpeakResponse:
Undocumented
OBJECTIVE-C
- (void)onSliderResponse:(SDLSliderResponse *)response;
SWIFT
optional func onSliderResponse(_ response: SDLSliderResponse)
OBJECTIVE-C
- (void)onSpeakResponse:(SDLSpeakResponse *)response;
SWIFT
optional func onSpeakResponse(_ response: SDLSpeakResponse)
-onSubscribeButtonResponse:
Undocumented
-onSubscribeVehicleDataResponse:
Undocumented
OBJECTIVE-C
- (void)onSubscribeButtonResponse:(SDLSubscribeButtonResponse *)response;
SWIFT
optional func onSubscribeButtonResponse(_ response: SDLSubscribeButtonResponse)
OBJECTIVE-C
- (void)onSubscribeVehicleDataResponse:(SDLSubscribeVehicleDataResponse *)response;
-onSubscribeWayPointsResponse:
Undocumented
-onSyncPDataResponse:
Undocumented
SWIFT
optional func onSubscribeVehicleDataResponse(_ response: SDLSubscribeVehicleDataResponse)
OBJECTIVE-C
- (void)onSubscribeWayPointsResponse:(SDLSubscribeWayPointsResponse *)response;
SWIFT
optional func onSubscribeWayPointsResponse(_ response: SDLSubscribeWayPointsResponse)
-onUpdateTurnListResponse:
Undocumented
OBJECTIVE-C
- (void)onSyncPDataResponse:(SDLSyncPDataResponse *)response;
SWIFT
optional func onSyncPDataResponse(_ response: SDLSyncPDataResponse)
OBJECTIVE-C
- (void)onUpdateTurnListResponse:(SDLUpdateTurnListResponse *)response;
-onUnregisterAppInterfaceResponse:
Undocumented
-onUnsubscribeButtonResponse:
Undocumented
SWIFT
optional func onUpdateTurnListResponse(_ response: SDLUpdateTurnListResponse)
OBJECTIVE-C
- (void)onUnregisterAppInterfaceResponse:(SDLUnregisterAppInterfaceResponse *)response;
SWIFT
optional func onUnregisterAppInterfaceResponse(_ response: SDLUnregisterAppInterfaceResponse)
-onUnsubscribeVehicleDataResponse:
Undocumented
OBJECTIVE-C
- (void)onUnsubscribeButtonResponse:(SDLUnsubscribeButtonResponse *)response;
SWIFT
optional func onUnsubscribeButtonResponse(_ response: SDLUnsubscribeButtonResponse)
OBJECTIVE-C
- (void)onUnsubscribeVehicleDataResponse:(SDLUnsubscribeVehicleDataResponse *)response;
-onUnsubscribeWayPointsResponse:
Undocumented
SWIFT
optional func onUnsubscribeVehicleDataResponse(_ response: SDLUnsubscribeVehicleDataResponse)
OBJECTIVE-C
- (void)onUnsubscribeWayPointsResponse:(SDLUnsubscribeWayPointsResponse *)response;
SWIFT
optional func onUnsubscribeWayPointsResponse(_ response: SDLUnsubscribeWayPointsResponse)
SDLSecurityType Protocol Reference
Section Contents
• appId• -initializeWithAppId:completionHandler:• -stop• -runHandshakeWithClientData:error:• -encryptData:withError:• -decryptData:withError:• +availableMakes
Overview
Undocumented
appId
Undocumented
OBJECTIVE-C
@property (copy, nonatomic) NSString *appId
-initializeWithAppId:completionHandler:
Undocumented
-stop
Undocumented
SWIFT
var appId: String { get set }
OBJECTIVE-C
- (void)initializeWithAppId:(NSString *)appId completionHandler:(void (^)(NSError *_Nullable error))completionHandler;
SWIFT
func initialize(withAppId appId: String, completionHandler: @escaping (Error?) -> Void)
-runHandshakeWithClientData:error:
Undocumented
OBJECTIVE-C
- (void)stop;
SWIFT
func stop()
OBJECTIVE-C
- (nullable NSData *)runHandshakeWithClientData:(NSData *)data error:(NSError **)error;
SWIFT
func runHandshake(withClientData data: Data) throws -> Data
-encryptData:withError:
Undocumented
-decryptData:withError:
Undocumented
OBJECTIVE-C
- (nullable NSData *)encryptData:(NSData *)data withError:(NSError **)error;
SWIFT
func encryptData(_ data: Data) throws -> Data
OBJECTIVE-C
- (nullable NSData *)decryptData:(NSData *)data withError:(NSError **)error;
+availableMakes
Undocumented
SWIFT
func decryptData(_ data: Data) throws -> Data
OBJECTIVE-C
+ (NSSet<NSString *> *)availableMakes;
SWIFT
static func availableMakes() -> Set<String>
SDLStreamingAudioManagerTypeProtocol Reference
Section Contents
• audioConnected• -sendAudioData:
Overview
Undocumented
audioConnected
Undocumented
OBJECTIVE-C
@property (assign, nonatomic, readonly, getter=isAudioConnected) BOOL audioConnected
SWIFT
var isAudioConnected: Bool { get }
-sendAudioData:
Undocumented
SDLTouchManagerDelegate ProtocolReference
Section Contents
• -touchManager:didReceiveSingleTapForView:atPoint:• -touchManager:didReceiveDoubleTapForView:atPoint:• -touchManager:panningDidStartInView:atPoint:• -touchManager:didReceivePanningFromPoint:toPoint:• -touchManager:panningDidEndInView:atPoint:• -touchManager:panningCanceledAtPoint:
OBJECTIVE-C
- (BOOL)sendAudioData:(NSData *)audioData;
SWIFT
func sendAudioData(_ audioData: Data!) -> Bool
• -touchManager:pinchDidStartInView:atCenterPoint:• -touchManager:didReceivePinchAtCenterPoint:withScale:• -touchManager:didReceivePinchInView:atCenterPoint:withScale:• -touchManager:pinchDidEndInView:atCenterPoint:• -touchManager:pinchCanceledAtCenterPoint:
Overview
Undocumented
-touchManager:didReceiveSingleTapForView:atPoint:
A single tap was received
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager didReceiveSingleTapForView:(UIView *_Nullable)view atPoint:(CGPoint)point;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, didReceiveSingleTapFor view: UIView?, at point: CGPoint)
manager
The SDLTouchManager issuing the callback
view
The view under the touch if it could be determined
point
The point at which the touch occurred in the head unit’s coordinate
system
-
touchManager:didReceiveDoubleTapForView:atPoint:
A double tap was received
PARAMETERS
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager didReceiveDoubleTapForView:(UIView *_Nullable)view atPoint:(CGPoint)point;
manager
The SDLTouchManager issuing the callback
view
The view under the touch if it could be determined
point
Location of the double tap in the head unit’s coordinate system. This is
the average of the first and second tap.
-touchManager:panningDidStartInView:atPoint:
Panning started
SWIFT
optional func touchManager(_ manager: SDLTouchManager, didReceiveDoubleTapFor view: UIView?, at point: CGPoint)
PARAMETERS
manager
The SDLTouchManager issuing the callback
view
The view under where the panning started if it could be determined
point
Location of the panning start point in the head unit’s coordinate
system.
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager panningDidStartInView:(UIView *_Nullable)view atPoint:(CGPoint)point;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, panningDidStartIn view: UIView?, at point: CGPoint)
PARAMETERS
-
touchManager:didReceivePanningFromPoint:toPoint:
Panning moved between points
manager
The SDLTouchManager issuing the callback
fromPoint
Location of the panning’s previous point in the head unit’s coordinate
system
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager didReceivePanningFromPoint:(CGPoint)fromPoint toPoint:(CGPoint)toPoint;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, didReceivePanningFrom fromPoint: CGPoint, to toPoint: CGPoint)
PARAMETERS
toPoint
Location of the panning’s new point in the head unit’s coordinate
system
-touchManager:panningDidEndInView:atPoint:
Panning ended
manager
The SDLTouchManager issuing the callback
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager panningDidEndInView:(UIView *_Nullable)view atPoint:(CGPoint)point;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, panningDidEndIn view: UIView?, at point: CGPoint)
PARAMETERS
view
The view under where the panning ended if it could be determined
point
Location of the panning’s end point in the head unit’s coordinate
system
-touchManager:panningCanceledAtPoint:
Panning canceled
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager panningCanceledAtPoint:(CGPoint)point;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, panningCanceledAt point: CGPoint)
manager
The SDLTouchManager issuing the callback
point
Location of the panning’s end point in the head unit’s coordinate
system
-touchManager:pinchDidStartInView:atCenterPoint:
Pinch did start
PARAMETERS
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager pinchDidStartInView:(UIView *_Nullable)view atCenterPoint:(CGPoint)point;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, pinchDidStartIn view: UIView?, atCenter point: CGPoint)
manager
The SDLTouchManager issuing the callback
view
The view under the center of the pinch start
point
Center point of the pinch in the head unit’s coordinate system
-
touchManager:didReceivePinchAtCenterPoint:withScale:
@abstract Pinch did move.
PARAMETERS
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager didReceivePinchAtCenterPoint:(CGPoint)point withScale:(CGFloat)scale;
manager
Current initalized SDLTouchManager issuing the callback.
point
Center point of the pinch in the head unit’s coordinate system.
scale
Scale relative to the distance between touch points.
-
touchManager:didReceivePinchInView:atCenterPoint:withScale:
Pinch moved and changed scale
SWIFT
optional func touchManager(_ manager: SDLTouchManager, didReceivePinchAtCenter point: CGPoint, withScale scale: CGFloat)
PARAMETERS
manager
The SDLTouchManager issuing the callback
view
The view under the center of the pinch
point
Center point of the pinch in the head unit’s coordinate system
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager didReceivePinchInView:(UIView *_Nullable)view atCenterPoint:(CGPoint)point withScale:(CGFloat)scale;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, didReceivePinchIn view: UIView?, atCenter point: CGPoint, withScale scale: CGFloat)
PARAMETERS
scale
Scale relative to the distance between touch points
-touchManager:pinchDidEndInView:atCenterPoint:
Pinch did end
manager
The SDLTouchManager issuing the callback
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager pinchDidEndInView:(UIView *_Nullable)view atCenterPoint:(CGPoint)point;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, pinchDidEndIn view: UIView?, atCenter point: CGPoint)
PARAMETERS
view
The view under the center of the pinch
point
Center point of the pinch in the head unit’s coordinate system
-touchManager:pinchCanceledAtCenterPoint:
Pinch canceled
OBJECTIVE-C
- (void)touchManager:(nonnull SDLTouchManager *)manager pinchCanceledAtCenterPoint:(CGPoint)point;
SWIFT
optional func touchManager(_ manager: SDLTouchManager, pinchCanceledAtCenter point: CGPoint)
manager
The SDLTouchManager issuing the callback
point
Center point of the pinch in the head unit’s coordinate system
SDLTransportDelegate ProtocolReference
Section Contents
• -onTransportConnected• -onTransportDisconnected• -onDataReceived:
Overview
Undocumented
-onTransportConnected
Undocumented
PARAMETERS
-onTransportDisconnected
Undocumented
OBJECTIVE-C
- (void)onTransportConnected;
SWIFT
func onTransportConnected()
OBJECTIVE-C
- (void)onTransportDisconnected;
SWIFT
func onTransportDisconnected()
-onDataReceived:
Undocumented
SDLTouchIdentifier Type DefinitionReference
Section Contents
•
Overview
Undocumented
OBJECTIVE-C
- (void)onDataReceived:(NSData *)receivedData;
SWIFT
func onDataReceived(_ receivedData: Any!)
UndocumentedSee more
OBJECTIVE-C
enum { SDLTouchIdentifierFirstFinger = 0, SDLTouchIdentifierSecondFinger = 1}
SWIFT
struct SDLTouchIdentifier : RawRepresentable, Equatable