Page 1
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;
Page 2
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
Page 3
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
Page 4
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 }
Page 5
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 }
Page 6
-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;
Page 7
-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)
Page 8
-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
Page 9
-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;
Page 10
-handleBytesFromTransport:
Undocumented
SWIFT
func sendEncryptedRawData(_ data: Data, on serviceType: SDLServiceType)
OBJECTIVE-C
- (void)handleBytesFromTransport:(NSData *)receivedData;
SWIFT
func handleBytes(fromTransport receivedData: Data)
Page 11
SDLAbstractTransport Class Reference
Section Contents
• delegate• debugConsoleGroupName• -connect• -disconnect• -sendData:• -retryDelay
Overview
Undocumented
delegate
Undocumented
OBJECTIVE-C
@property (nullable, weak, nonatomic) id<SDLTransportDelegate> delegate
Page 12
debugConsoleGroupName
Undocumented
-connect
Undocumented
SWIFT
weak var delegate: SDLTransportDelegate? { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSString *debugConsoleGroupName
SWIFT
var debugConsoleGroupName: String { get set }
Page 13
-disconnect
Undocumented
OBJECTIVE-C
- (void)connect;
SWIFT
func connect()
OBJECTIVE-C
- (void)disconnect;
SWIFT
func disconnect()
Page 14
-sendData:
Undocumented
-retryDelay
Undocumented
OBJECTIVE-C
- (void)sendData:(NSData *)dataToSend;
SWIFT
func send(_ dataToSend: Data)
OBJECTIVE-C
- (double)retryDelay;
Page 15
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
Page 16
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)
Page 17
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;
Page 18
-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)
Page 19
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;
Page 20
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 }
Page 21
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 }
Page 22
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 }
Page 23
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 }
Page 24
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)
Page 25
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;
Page 26
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 }
Page 27
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 }
Page 28
• passengerSideAirbagDeployed• passengerKneeAirbagDeployed
Overview
Undocumented
driverAirbagDeployed
Undocumented
driverSideAirbagDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverAirbagDeployed
SWIFT
var driverAirbagDeployed: SDLVehicleDataEventStatus { get set }
Page 29
driverCurtainAirbagDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverSideAirbagDeployed
SWIFT
var driverSideAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverCurtainAirbagDeployed
Page 30
passengerAirbagDeployed
Undocumented
passengerCurtainAirbagDeployed
Undocumented
SWIFT
var driverCurtainAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerAirbagDeployed
SWIFT
var passengerAirbagDeployed: SDLVehicleDataEventStatus { get set }
Page 31
driverKneeAirbagDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerCurtainAirbagDeployed
SWIFT
var passengerCurtainAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverKneeAirbagDeployed
Page 32
passengerSideAirbagDeployed
Undocumented
passengerKneeAirbagDeployed
Undocumented
SWIFT
var driverKneeAirbagDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerSideAirbagDeployed
SWIFT
var passengerSideAirbagDeployed: SDLVehicleDataEventStatus { get set }
Page 33
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 }
Page 34
• -
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
Page 35
-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;
Page 36
-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)
Page 37
-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;
Page 38
-
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)
Page 39
-
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;
Page 40
-
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]?)
Page 41
-
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]?)
Page 42
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 }
Page 43
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;
Page 44
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 }
Page 45
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 }
Page 46
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;
Page 47
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 }
Page 48
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]?)
Page 49
-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
Page 50
softButtons
Undocumented
SWIFT
var ttsChunks: [SDLTTSChunk]? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSArray<SDLSoftButton *> *softButtons
SWIFT
var softButtons: [SDLSoftButton]? { get set }
Page 51
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 }
Page 52
SDLAppInfo Class Reference
Section Contents
• +currentAppInfo• appDisplayName• appBundleID• appVersion
Overview
Undocumented
+currentAppInfo
Undocumented
OBJECTIVE-C
+ (instancetype)currentAppInfo;
SWIFT
class func current() -> Self
Page 53
appDisplayName
Undocumented
appBundleID
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *appDisplayName
SWIFT
var appDisplayName: String { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSString *appBundleID
Page 54
appVersion
Undocumented
SWIFT
var appBundleID: String { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSString *appVersion
SWIFT
var appVersion: String { get set }
Page 55
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
Page 56
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
Page 57
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;
Page 58
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
Page 59
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
Page 60
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
Page 61
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 }
Page 62
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;
Page 63
SDLAudioStreamManager ClassReference
Section Contents
• delegate• playing• queue• -init• -initWithManager:• -pushWithFileURL:• -playNextWhenReady• -stop
Overview
Undocumented
delegate
Undocumented
SWIFT
var audioType: SDLAudioType { get set }
Page 64
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 }
Page 65
-init
Undocumented
-initWithManager:
Undocumented
OBJECTIVE-C
@property (copy, nonatomic, readonly) NSArray<SDLAudioFile *> *queue
SWIFT
var queue: [SDLAudioFile] { get }
OBJECTIVE-C
- (instancetype)init NS_UNAVAILABLE;
Page 66
-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)
Page 67
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()
Page 68
SDLBeltStatus Class Reference
Section Contents
• driverBeltDeployed• passengerBeltDeployed• passengerBuckleBelted• driverBuckleBelted• leftRow2BuckleBelted• passengerChildDetected• rightRow2BuckleBelted• middleRow2BuckleBelted• middleRow3BuckleBelted• leftRow3BuckleBelted• rightRow3BuckleBelted• leftRearInflatableBelted
OBJECTIVE-C
- (void)stop;
SWIFT
func stop()
Page 69
• rightRearInflatableBelted• middleRow1BeltDeployed• middleRow1BuckleBelted
Overview
Undocumented
driverBeltDeployed
Undocumented
passengerBeltDeployed
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverBeltDeployed
SWIFT
var driverBeltDeployed: SDLVehicleDataEventStatus { get set }
Page 70
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 }
Page 71
driverBuckleBelted
Undocumented
leftRow2BuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus driverBuckleBelted
SWIFT
var driverBuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus leftRow2BuckleBelted
Page 72
passengerChildDetected
Undocumented
rightRow2BuckleBelted
Undocumented
SWIFT
var leftRow2BuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus passengerChildDetected
SWIFT
var passengerChildDetected: SDLVehicleDataEventStatus { get set }
Page 73
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 }
Page 74
middleRow3BuckleBelted
Undocumented
leftRow3BuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus middleRow3BuckleBelted
SWIFT
var middleRow3BuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus leftRow3BuckleBelted
Page 75
rightRow3BuckleBelted
Undocumented
leftRearInflatableBelted
Undocumented
SWIFT
var leftRow3BuckleBelted: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus rightRow3BuckleBelted
SWIFT
var rightRow3BuckleBelted: SDLVehicleDataEventStatus { get set }
Page 76
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 }
Page 77
middleRow1BeltDeployed
Undocumented
middleRow1BuckleBelted
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus middleRow1BeltDeployed
SWIFT
var middleRow1BeltDeployed: SDLVehicleDataEventStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus middleRow1BuckleBelted
Page 78
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 }
Page 79
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 }
Page 80
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;
Page 81
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 }
Page 82
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 }
Page 83
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;
Page 84
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 }
Page 85
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;
Page 86
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 }
Page 87
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 }
Page 88
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;
Page 89
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 }
Page 90
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 }
Page 91
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)
Page 92
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;
Page 93
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 }
Page 94
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;
Page 95
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 }
Page 96
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 }
Page 97
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
Page 98
-
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;
Page 99
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 }
Page 100
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;
Page 101
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 }
Page 102
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;
Page 103
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 }
Page 104
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
Page 105
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)
Page 106
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;
Page 107
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 }
Page 108
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;
Page 109
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 }
Page 110
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;
Page 111
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 }
Page 112
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;
Page 113
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 }
Page 114
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
Page 115
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?)
Page 116
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;
Page 117
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 }
Page 118
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;
Page 119
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 }
Page 120
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;
Page 121
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 }
Page 122
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 }
Page 123
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
Page 124
carModeStatus
Undocumented
powerModeStatus
Undocumented
SWIFT
var powerModeQualificationStatus: SDLPowerModeQualificationStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLCarModeStatus carModeStatus
SWIFT
var carModeStatus: SDLCarModeStatus { get set }
Page 125
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 }
Page 126
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;
Page 127
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 }
Page 128
-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;
Page 129
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
Page 130
+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
Page 131
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?)
Page 132
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
Page 133
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
Page 134
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
Page 135
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;
Page 136
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 }
Page 137
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 }
Page 138
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
Page 139
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 }
Page 140
-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;
Page 141
-
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)
Page 142
-
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)
Page 143
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;
Page 144
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 }
Page 145
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;
Page 146
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 }
Page 147
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;
Page 148
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 }
Page 149
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;
Page 150
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 }
Page 151
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)
Page 152
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 }
Page 153
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 }
Page 154
• 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)
Page 155
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 }
Page 156
• 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)
Page 157
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 }
Page 158
• maxNumberRFCOMMPorts
Overview
Undocumented
+currentDevice
Undocumented
hardware
Undocumented
OBJECTIVE-C
+ (instancetype)currentDevice;
SWIFT
class func currentDevice() -> Self
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *hardware
Page 159
firmwareRev
Undocumented
os
Undocumented
SWIFT
var hardware: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *firmwareRev
SWIFT
var firmwareRev: String? { get set }
Page 160
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 }
Page 161
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
Page 162
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 }
Page 163
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
Page 164
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;
Page 165
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 }
Page 166
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;
Page 167
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 }
Page 168
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;
Page 169
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 }
Page 170
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;
Page 171
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 }
Page 172
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;
Page 173
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 }
Page 174
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 }
Page 175
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 }
Page 176
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)
Page 177
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 }
Page 178
• 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 }
Page 179
@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 }
Page 180
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;
Page 181
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 }
Page 182
@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;
Page 183
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 }
Page 184
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 }
Page 185
auxECallNotificationStatus
Undocumented
eCallConfirmationStatus
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataNotificationStatus auxECallNotificationStatus
SWIFT
var auxECallNotificationStatus: SDLVehicleDataNotificationStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLECallConfirmationStatus eCallConfirmationStatus
Page 186
SDLEmergencyEvent Class Reference
Section Contents
• emergencyEventType• fuelCutoffStatus• rolloverEvent• maximumChangeVelocity• multipleEvents
Overview
Undocumented
emergencyEventType
Undocumented
SWIFT
var eCallConfirmationStatus: SDLECallConfirmationStatus { get set }
Page 187
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 }
Page 188
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
Page 189
multipleEvents
Undocumented
SWIFT
var maximumChangeVelocity: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataEventStatus multipleEvents
SWIFT
var multipleEvents: SDLVehicleDataEventStatus { get set }
Page 190
SDLEncodedSyncPData Class Reference
Section Contents
• data
Overview
Undocumented
data
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSArray<NSString *> *data
SWIFT
var data: [String] { get set }
Page 191
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.
Page 192
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 }
Page 193
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;
Page 194
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 }
Page 195
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;
Page 196
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 }
Page 197
-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
Page 198
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
Page 199
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
Page 200
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
Page 201
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)
Page 202
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
Page 203
+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
Page 204
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;
Page 205
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
Page 206
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
Page 207
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;
Page 208
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 }
Page 209
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;
Page 210
-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
Page 211
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
Page 212
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
Page 213
-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;
Page 214
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
Page 215
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
Page 216
-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
Page 217
-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)
Page 218
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;
Page 219
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
Page 220
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
Page 221
• 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;
Page 222
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 }
Page 223
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;
Page 224
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 }
Page 225
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;
Page 226
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 }
Page 227
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;
Page 228
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 }
Page 229
@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;
Page 230
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 }
Page 231
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;
Page 232
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 }
Page 233
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 }
Page 234
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;
Page 235
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 }
Page 236
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 }
Page 237
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
Page 238
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 }
Page 239
-initAndSubscribeToModuleType:
Undocumented
OBJECTIVE-C
- (instancetype)initWithModuleType:(SDLModuleType)moduleType;
SWIFT
init(moduleType: SDLModuleType)
OBJECTIVE-C
- (instancetype)initAndSubscribeToModuleType:(SDLModuleType)moduleType;
SWIFT
init(andSubscribeToModuleType moduleType: SDLModuleType)
Page 240
-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;
Page 241
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 }
Page 242
SDLGetInteriorVehicleDataResponseClass Reference
Section Contents
• moduleData• isSubscribed
Overview
Undocumented
moduleData
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLModuleData *moduleData
SWIFT
var moduleData: SDLModuleData { get set }
Page 243
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 }
Page 244
SDLGetSystemCapability ClassReference
Section Contents
• -initWithType:• systemCapabilityType
Overview
Undocumented
-initWithType:
Undocumented
OBJECTIVE-C
- (instancetype)initWithType:(SDLSystemCapabilityType)type;
SWIFT
init(type: SDLSystemCapabilityType)
Page 245
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 }
Page 246
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 }
Page 247
• 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
Page 248
-
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)
Page 249
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;
Page 250
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 }
Page 251
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 }
Page 252
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;
Page 253
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 }
Page 254
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 }
Page 255
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;
Page 256
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 }
Page 257
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 }
Page 258
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;
Page 259
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 }
Page 260
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;
Page 261
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 }
Page 262
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 }
Page 263
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
Page 264
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 }
Page 265
• 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 }
Page 266
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 }
Page 267
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;
Page 268
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 }
Page 269
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 }
Page 270
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;
Page 271
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 }
Page 272
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;
Page 273
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 }
Page 274
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 }
Page 275
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;
Page 276
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 }
Page 277
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 }
Page 278
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
Page 279
clusterModeStatus
Undocumented
myKey
Undocumented
SWIFT
var emergencyEvent: SDLEmergencyEvent? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLClusterModeStatus *clusterModeStatus
SWIFT
var clusterModeStatus: SDLClusterModeStatus? { get set }
Page 280
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 }
Page 281
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;
Page 282
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 }
Page 283
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;
Page 284
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 }
Page 285
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)
Page 286
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
Page 287
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;
Page 288
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 }
Page 289
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 }
Page 290
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 }
Page 291
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;
Page 292
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 }
Page 293
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 }
Page 294
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
Page 295
imageResolution
Undocumented
SWIFT
var imageTypeSupported: [SDLFileType] { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLImageResolution *imageResolution
SWIFT
var imageResolution: SDLImageResolution? { get set }
Page 296
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 }
Page 297
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;
Page 298
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)
Page 299
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
Page 300
keyboardLayout
Undocumented
keypressMode
Undocumented
SWIFT
var language: SDLLanguage? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLKeyboardLayout keyboardLayout
SWIFT
var keyboardLayout: SDLKeyboardLayout? { get set }
Page 301
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 }
Page 302
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 }
Page 303
• 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;
Page 304
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
Page 305
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)
Page 306
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
Page 307
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 }
Page 308
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;
Page 309
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 }
Page 310
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 }
Page 311
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;
Page 312
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 }
Page 313
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 }
Page 314
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;
Page 315
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
Page 316
spaceAvailable
Undocumented
SWIFT
var filenames: [String]? { get set }
OBJECTIVE-C
@property (strong, nonatomic) NSNumber<SDLInt> *spaceAvailable
SWIFT
var spaceAvailable: NSNumber & SDLInt { get set }
Page 317
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 }
Page 318
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 }
Page 319
• 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 }
Page 320
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;
Page 321
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 }
Page 322
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;
Page 323
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 }
Page 324
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;
Page 325
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 }
Page 326
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 }
Page 327
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;
Page 328
+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
Page 329
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
Page 330
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
Page 331
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
Page 332
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
Page 333
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 }
Page 334
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 }
Page 335
• 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 }
Page 336
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 }
Page 337
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;
Page 338
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 }
Page 339
+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
Page 340
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
Page 341
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;
Page 342
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 }
Page 343
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;
Page 344
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
Page 345
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
Page 346
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
Page 347
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
Page 348
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
Page 349
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
Page 350
-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;
Page 351
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
Page 352
+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
Page 353
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)
Page 354
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;
Page 355
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
Page 356
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
Page 357
+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
Page 358
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
Page 359
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
Page 360
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
Page 361
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
Page 362
• -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 }
Page 363
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 }
Page 364
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
Page 365
asynchronous
Undocumented
errorsAsynchronous
Undocumented
SWIFT
var formatType: SDLLogFormatType { get }
OBJECTIVE-C
@property (assign, nonatomic, readonly, getter=isAsynchronous) BOOL asynchronous
SWIFT
var isAsynchronous: Bool { get }
Page 366
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 }
Page 367
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;
Page 368
+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
Page 369
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
Page 370
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
Page 371
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, ...;
Page 372
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
Page 373
+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
Page 374
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 .
Page 375
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
Page 376
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.
Page 377
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
Page 378
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.
Page 379
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
Page 380
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
Page 381
• 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 }
Page 382
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;
Page 383
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 }
Page 384
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 }
Page 385
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;
Page 386
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
Page 387
-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
Page 388
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
Page 389
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()
Page 390
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
Page 391
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
Page 392
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;
Page 393
-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)
Page 394
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 }
Page 395
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;
Page 396
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 }
Page 397
-
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;
Page 398
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 }
Page 399
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 }
Page 400
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;
Page 401
SDLModuleData Class Reference
Section Contents
• -initWithRadioControlData:• -initWithClimateControlData:• moduleType• radioControlData• climateControlData
Overview
Undocumented
-initWithRadioControlData:
Undocumented
SWIFT
var mainField4: [SDLMetadataType]? { get set }
Page 402
-initWithClimateControlData:
Undocumented
OBJECTIVE-C
- (instancetype)initWithRadioControlData:(SDLRadioControlData *)radioControlData;
SWIFT
init(radioControlData: SDLRadioControlData)
OBJECTIVE-C
- (instancetype)initWithClimateControlData:(SDLClimateControlData *)climateControlData;
SWIFT
init(climateControlData: SDLClimateControlData)
Page 403
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
Page 404
climateControlData
Undocumented
SWIFT
var radioControlData: SDLRadioControlData? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLClimateControlData *climateControlData
SWIFT
var climateControlData: SDLClimateControlData? { get set }
Page 405
SDLMyKey Class Reference
Section Contents
• e911Override
Overview
Undocumented
e911Override
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataStatus e911Override
SWIFT
var e911Override: SDLVehicleDataStatus { get set }
Page 406
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)
Page 407
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;
Page 408
SDLNotificationConstants ClassReference
Section Contents
• +allResponseNames• +allButtonEventNotifications
Overview
Undocumented
+allResponseNames
Undocumented
SWIFT
@NSCopying var getWayPointsEnabled: NSNumber? { get set }
OBJECTIVE-C
+ (NSArray<SDLNotificationName> *)allResponseNames;
Page 409
+allButtonEventNotifications
Undocumented
SWIFT
class func allResponseNames() -> [NSNotification.Name]
OBJECTIVE-C
+ (NSArray<SDLNotificationName> *)allButtonEventNotifications;
SWIFT
class func allButtonEventNotifications() -> [NSNotification.Name]
Page 410
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
Page 411
-
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?)
Page 412
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?)
Page 413
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;
Page 414
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 }
Page 415
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;
Page 416
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 }
Page 417
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;
Page 418
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 }
Page 419
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;
Page 420
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 }
Page 421
◦ 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 }
Page 422
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 }
Page 423
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 }
Page 424
• 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
Page 425
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;
Page 426
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 }
Page 427
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;
Page 428
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 }
Page 429
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)
Page 430
SDLOnEncodedSyncPData ClassReference
Section Contents
• data• URL• Timeout
Overview
Undocumented
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLDriverDistractionState _Nonnull state;
SWIFT
var state: SDLDriverDistractionState { get set }
Page 431
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
Page 432
Timeout
Undocumented
SWIFT
var url: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLInt> *Timeout
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
Page 433
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
Page 434
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;
Page 435
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 }
Page 436
SDLOnHashChange Class Reference
Section Contents
• hashID
Overview
Undocumented
hashID
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *hashID
SWIFT
var hashID: String { get set }
Page 437
SDLOnInteriorVehicleData ClassReference
Section Contents
• moduleData
Overview
Undocumented
moduleData
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLModuleData *moduleData
SWIFT
var moduleData: SDLModuleData { get set }
Page 438
SDLOnKeyboardInput Class Reference
Section Contents
• event• data
Overview
Undocumented
event
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLKeyboardEvent event
SWIFT
var event: SDLKeyboardEvent { get set }
Page 439
data
Undocumented
SDLOnLanguageChange ClassReference
Section Contents
• language
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *data
SWIFT
var data: String? { get set }
Page 440
• 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 }
Page 441
SDLOnLockScreenStatus ClassReference
Section Contents
• driverDistractionStatus• userSelected• lockScreenStatus
OBJECTIVE-C
@property (readwrite, strong, nonatomic) SDLLanguage _Nonnull hmiDisplayLanguage;
SWIFT
var hmiDisplayLanguage: SDLLanguage { get set }
Page 442
• 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;
Page 443
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 }
Page 444
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
Page 445
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
Page 446
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;
Page 447
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
Page 448
Timeout
Undocumented
SWIFT
var url: String? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSNumber<SDLInt> *Timeout
SWIFT
var timeout: (NSNumber & SDLInt)? { get set }
Page 449
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 }
Page 450
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
Page 451
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 }
Page 452
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 }
Page 453
SDLOnTBTClientState Class Reference
Section Contents
• state
Overview
Undocumented
state
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLTBTState state
SWIFT
var state: SDLTBTState { get set }
Page 454
SDLOnTouchEvent Class Reference
Section Contents
• type• event
Overview
Undocumented
type
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLTouchType type
SWIFT
var type: SDLTouchType { get set }
Page 455
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 }
Page 456
• 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;
Page 457
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 }
Page 458
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 }
Page 459
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;
Page 460
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 }
Page 461
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 }
Page 462
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;
Page 463
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 }
Page 464
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;
Page 465
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 }
Page 466
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 }
Page 467
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;
Page 468
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 }
Page 469
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 }
Page 470
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
Page 471
myKey
Undocumented
SWIFT
var clusterModeStatus: SDLClusterModeStatus? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLMyKey *myKey
SWIFT
var myKey: SDLMyKey? { get set }
Page 472
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;
Page 473
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 }
Page 474
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
Page 475
-
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)
Page 476
-
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)
Page 477
-
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)
Page 478
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)
Page 479
• 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;
Page 480
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 }
Page 481
@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;
Page 482
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 }
Page 483
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;
Page 484
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 }
Page 485
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
Page 486
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)
Page 487
-
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;
Page 488
-
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]?)
Page 489
-
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)
Page 490
-
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]?)
Page 491
-
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]?)
Page 492
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?)
Page 493
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;
Page 494
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 }
Page 495
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;
Page 496
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 }
Page 497
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;
Page 498
interactionLayout
Undocumented
SWIFT
var vrHelp: [SDLVRHelpItem]? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLLayoutMode interactionLayout
SWIFT
var interactionLayout: SDLLayoutMode? { get set }
Page 499
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;
Page 500
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 }
Page 501
@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 }
Page 502
rpcName
Undocumented
hmiPermissions
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) NSString *rpcName
SWIFT
var rpcName: String { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLHMIPermissions *hmiPermissions
Page 503
parameterPermissions
Undocumented
SWIFT
var hmiPermissions: SDLHMIPermissions { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLParameterPermissions *parameterPermissions
SWIFT
var parameterPermissions: SDLParameterPermissions { get set }
Page 504
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;
Page 505
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()
Page 506
-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
Page 507
-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
Page 508
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]
Page 509
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
Page 510
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
Page 511
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()
Page 512
-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
Page 513
SDLPhoneCapability Class Reference
Section Contents
• -initWithDialNumber:• dialNumberEnabled
Overview
Undocumented
-initWithDialNumber:
Undocumented
OBJECTIVE-C
- (instancetype)initWithDialNumber:(BOOL)dialNumberEnabled;
SWIFT
init(dialNumber dialNumberEnabled: Bool)
Page 514
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 }
Page 515
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
Page 516
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 }
Page 517
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 }
Page 518
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;
Page 519
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 }
Page 520
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 }
Page 521
• -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?)
Page 522
-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;
Page 523
-sendRPC:
Undocumented
-sendRPC:encrypted:error:
Undocumented
SWIFT
func endService(with serviceType: SDLServiceType)
OBJECTIVE-C
- (void)sendRPC:(SDLRPCMessage *)message;
SWIFT
func sendRPC(_ message: SDLRPCMessage)
Page 524
-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;
Page 525
-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)
Page 526
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)
Page 527
• -parse:• -description• +headerForVersion:• +determineVersion:
Overview
Undocumented
_version
Undocumented
_size
Undocumented
OBJECTIVE-C
UInt8 _version
OBJECTIVE-C
NSUInteger _size
Page 528
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
Page 529
encrypted
Undocumented
frameType
Undocumented
SWIFT
var size: UInt { get }
OBJECTIVE-C
@property (assign, nonatomic) BOOL encrypted
SWIFT
var encrypted: Bool { get set }
Page 530
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 }
Page 531
frameData
Undocumented
sessionID
Undocumented
OBJECTIVE-C
@property (assign, nonatomic) SDLFrameInfo frameData
SWIFT
var frameData: SDLFrameInfo { get set }
OBJECTIVE-C
@property (assign, nonatomic) UInt8 sessionID
Page 532
bytesInPayload
Undocumented
-init
Undocumented
SWIFT
var sessionID: UInt8 { get set }
OBJECTIVE-C
@property (assign, nonatomic) UInt32 bytesInPayload
SWIFT
var bytesInPayload: UInt32 { get set }
Page 533
-data
Undocumented
OBJECTIVE-C
- (instancetype)init;
SWIFT
init()
OBJECTIVE-C
- (nullable NSData *)data;
SWIFT
func data() -> Data?
Page 534
-parse:
Undocumented
-description
Undocumented
OBJECTIVE-C
- (void)parse:(NSData *)data;
SWIFT
func parse(_ data: Data)
OBJECTIVE-C
- (NSString *)description;
Page 535
+headerForVersion:
Undocumented
+determineVersion:
Undocumented
SWIFT
func description() -> String
OBJECTIVE-C
+ (__kindof SDLProtocolHeader *)headerForVersion:(UInt8)version;
SWIFT
/*not inherited*/ init(forVersion version: UInt8)
Page 536
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
Page 537
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
Page 538
data
Undocumented
+messageWithHeader:andPayload:
Undocumented
SWIFT
var payload: Data? { get set }
OBJECTIVE-C
@property (strong, nonatomic, readonly) NSData *data
SWIFT
var data: Data { get }
Page 539
-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
Page 540
-description
Undocumented
-rpcDictionary
Undocumented
OBJECTIVE-C
- (NSString *)description;
SWIFT
func description() -> String
OBJECTIVE-C
- (nullable NSDictionary<NSString *, id> *)rpcDictionary;
Page 541
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]?
Page 542
• -putFileStream:withRequest:
Overview
Undocumented
_version
Undocumented
_bulkSessionID
Undocumented
_isConnected
Undocumented
OBJECTIVE-C
Byte _version
OBJECTIVE-C
Byte _bulkSessionID
Page 543
protocol
Undocumented
transport
Undocumented
OBJECTIVE-C
BOOL _isConnected
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLAbstractProtocol *protocol
SWIFT
var `protocol`: SDLAbstractProtocol? { get set }
Page 544
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 }
Page 545
startSessionTimer
Undocumented
debugConsoleGroupName
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLTimer *startSessionTimer
SWIFT
var startSessionTimer: SDLTimer { get set }
OBJECTIVE-C
@property (copy, nonatomic) NSString *debugConsoleGroupName
Page 546
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 }
Page 547
-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;
Page 548
-removeDelegate:
Undocumented
-sendRPC:
Undocumented
SWIFT
func addDelegate(_ delegate: SDLProxyListener)
OBJECTIVE-C
- (void)removeDelegate:(NSObject<SDLProxyListener> *)delegate;
SWIFT
func removeDelegate(_ delegate: SDLProxyListener)
Page 549
-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])
Page 550
-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;
Page 551
-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)
Page 552
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
Page 553
+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;
Page 554
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
Page 555
-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;
Page 556
-
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)
Page 557
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;
Page 558
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 }
Page 559
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 }
Page 560
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;
Page 561
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
Page 562
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 }
Page 563
-
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?)
Page 564
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;
Page 565
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 }
Page 566
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;
Page 567
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 }
Page 568
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;
Page 569
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 }
Page 570
function
Undocumented
parameters
Undocumented
messageType
Undocumented
OBJECTIVE-C
NSMutableDictionary<NSString *, id> *function
OBJECTIVE-C
NSMutableDictionary<NSString *, id> *parameters
OBJECTIVE-C
NSString *messageType
Page 571
-initWithName:
Undocumented
-initWithDictionary:
Undocumented
OBJECTIVE-C
- (instancetype)initWithName:(NSString *)name;
SWIFT
init(name: String)
OBJECTIVE-C
- (instancetype)initWithDictionary:(NSDictionary<NSString *, id> *)dict;
Page 572
-getFunctionName
Undocumented
-setFunctionName:
Undocumented
SWIFT
init(dictionary dict: [String : Any])
OBJECTIVE-C
- (nullable NSString *)getFunctionName;
SWIFT
func getFunctionName() -> String?
Page 573
-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?
Page 574
-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
Page 575
name
Undocumented
messageType
Undocumented
SWIFT
var bulkData: Data? { get set }
OBJECTIVE-C
@property (strong, nonatomic, readonly) NSString *name
SWIFT
var name: String { get }
Page 576
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 }
Page 577
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;
Page 578
-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
Page 579
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
Page 580
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 }
Page 581
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 }
Page 582
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
Page 583
info
Undocumented
SWIFT
var resultCode: SDLResult { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) NSString *info
SWIFT
var info: String? { get set }
Page 584
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 }
Page 585
-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;
Page 586
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
Page 587
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
Page 588
-initWithDictionary:
Undocumented
-init
Undocumented
OBJECTIVE-C
- (instancetype)initWithDictionary:(NSDictionary<NSString *, id> *)dict;
SWIFT
init(dictionary dict: [String : Any])
OBJECTIVE-C
- (instancetype)init;
Page 589
-serializeAsDictionary:
Undocumented
SWIFT
init()
OBJECTIVE-C
- (NSDictionary<NSString *, id> *)serializeAsDictionary:(Byte)version;
SWIFT
func serialize(asDictionary version: UInt8) -> [String : Any]
Page 590
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
Page 591
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)
Page 592
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;
Page 593
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 }
Page 594
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;
Page 595
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 }
Page 596
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;
Page 597
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 }
Page 598
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 }
Page 599
• 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)?)
Page 600
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 }
Page 601
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;
Page 602
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 }
Page 603
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;
Page 604
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 }
Page 605
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;
Page 606
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 }
Page 607
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;
Page 608
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 }
Page 609
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 }
Page 610
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 }
Page 611
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
Page 612
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;
Page 613
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;
Page 614
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 }
Page 615
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 }
Page 616
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,
Page 617
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
Page 618
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)
Page 619
-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;
Page 620
-
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;
Page 621
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 }
Page 622
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 }
Page 623
• 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 }
Page 624
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;
Page 625
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 }
Page 626
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 }
Page 627
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 }
Page 628
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 }
Page 629
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;
Page 630
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 }
Page 631
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 }
Page 632
• 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;
Page 633
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 }
Page 634
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;
Page 635
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 }
Page 636
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;
Page 637
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 }
Page 638
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;
Page 639
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 }
Page 640
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;
Page 641
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 }
Page 642
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 }
Page 643
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;
Page 644
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 }
Page 645
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;
Page 646
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 }
Page 647
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 }
Page 648
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 }
Page 649
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])
Page 650
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 }
Page 651
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 }
Page 652
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;
Page 653
-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]?)
Page 654
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;
Page 655
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 }
Page 656
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])
Page 657
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 }
Page 658
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
Page 659
-
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?)
Page 660
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?)
Page 661
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;
Page 662
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 }
Page 663
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;
Page 664
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 }
Page 665
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;
Page 666
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 }
Page 667
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 }
Page 668
-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;
Page 669
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 }
Page 670
-initWithLayout:
Undocumented
OBJECTIVE-C
- (instancetype)initWithPredefinedLayout:(SDLPredefinedLayout)predefinedLayout;
SWIFT
init(predefinedLayout: SDLPredefinedLayout)
OBJECTIVE-C
- (instancetype)initWithLayout:(NSString *)displayLayout;
SWIFT
init(layout displayLayout: String)
Page 671
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 }
Page 672
• 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 }
Page 673
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 }
Page 674
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 }
Page 675
• 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?)
Page 676
-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]?)
Page 677
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?)
Page 678
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;
Page 679
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 }
Page 680
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 }
Page 681
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
Page 682
keyboardProperties
Undocumented
SWIFT
var menuIcon: SDLImage? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLKeyboardProperties *keyboardProperties
SWIFT
var keyboardProperties: SDLKeyboardProperties? { get set }
Page 683
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)
Page 684
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 }
Page 685
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 }
Page 686
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)
Page 687
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;
Page 688
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 }
Page 689
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 }
Page 690
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
Page 691
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?)
Page 692
-
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?)
Page 693
-
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?)
Page 694
-
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?)
Page 695
-
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?)
Page 696
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?)
Page 697
• 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 }
Page 698
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 }
Page 699
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 }
Page 700
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 }
Page 701
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;
Page 702
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;
Page 703
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 }
Page 704
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 }
Page 705
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 }
Page 706
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;
Page 707
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 }
Page 708
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
Page 709
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]?)
Page 710
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 }
Page 711
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
Page 712
totalDistance
Undocumented
turnIcon
Undocumented
SWIFT
var timeToDestination: String? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) NSString *totalDistance
SWIFT
var totalDistance: String? { get set }
Page 713
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 }
Page 714
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
Page 715
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 }
Page 716
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 }
Page 717
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 }
Page 718
• 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)
Page 719
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;
Page 720
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
Page 721
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)
Page 722
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
Page 723
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;
Page 724
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 }
Page 725
@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 }
Page 726
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 }
Page 727
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 }
Page 728
• 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)
Page 729
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
Page 730
type
Undocumented
text
Undocumented
SWIFT
var handler: SDLRPCButtonNotificationHandler { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSoftButtonType type
SWIFT
var type: SDLSoftButtonType { get set }
Page 731
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 }
Page 732
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
Page 733
systemAction
Undocumented
SWIFT
var softButtonID: NSNumber & SDLInt { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLSystemAction systemAction
SWIFT
var systemAction: SDLSystemAction? { get set }
Page 734
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;
Page 735
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 }
Page 736
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 }
Page 737
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 }
Page 738
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).
Page 739
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)
Page 740
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;
Page 741
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 }
Page 742
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;
Page 743
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 }
Page 744
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 }
Page 745
• -
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;
Page 746
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;
Page 747
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;
Page 748
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 }
Page 749
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;
Page 750
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 }
Page 751
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;
Page 752
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;
Page 753
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
Page 754
-
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
Page 755
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
Page 756
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
Page 757
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
Page 758
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
Page 759
+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
Page 760
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
Page 761
• -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 }
Page 762
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;
Page 763
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;
Page 764
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;
Page 765
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 }
Page 766
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;
Page 767
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 }
Page 768
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;
Page 769
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 }
Page 770
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;
Page 771
-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;
Page 772
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;
Page 773
-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()
Page 774
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
Page 775
-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
Page 776
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
Page 777
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
Page 778
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.
Page 779
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
Page 780
-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;
Page 781
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 }
Page 782
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
Page 783
• 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;
Page 784
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 }
Page 785
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;
Page 786
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 }
Page 787
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 }
Page 788
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;
Page 789
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 }
Page 790
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 }
Page 791
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;
Page 792
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 }
Page 793
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 }
Page 794
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;
Page 795
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 }
Page 796
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 }
Page 797
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
Page 798
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 }
Page 799
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
Page 800
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;
Page 801
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 }
Page 802
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 }
Page 803
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;
Page 804
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 }
Page 805
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 }
Page 806
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;
Page 807
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 }
Page 808
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 }
Page 809
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;
Page 810
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 }
Page 811
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 }
Page 812
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
Page 813
clusterModes
Undocumented
myKey
Undocumented
SWIFT
var emergencyEvent: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *clusterModes
SWIFT
var clusterModes: SDLVehicleDataResult? { get set }
Page 814
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 }
Page 815
-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;
Page 816
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 }
Page 817
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 }
Page 818
• 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)
Page 819
-initWithVideoStreamingCapability:
Undocumented
OBJECTIVE-C
- (instancetype)initWithPhoneCapability:(SDLPhoneCapability *)capability;
SWIFT
init(phoneCapability capability: SDLPhoneCapability)
OBJECTIVE-C
- (instancetype)initWithVideoStreamingCapability:(SDLVideoStreamingCapability *)capability;
SWIFT
init(videoStreamingCapability capability: SDLVideoStreamingCapability)
Page 820
-initWithRemoteControlCapability:
Undocumented
systemCapabilityType
Undocumented
OBJECTIVE-C
- (instancetype)initWithRemoteControlCapability:(SDLRemoteControlCapabilities *)capability;
SWIFT
init(remoteControlCapability capability: SDLRemoteControlCapabilities)
OBJECTIVE-C
@property (strong, nonatomic) SDLSystemCapabilityType systemCapabilityType
Page 821
navigationCapability
Undocumented
phoneCapability
Undocumented
SWIFT
var systemCapabilityType: SDLSystemCapabilityType { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLNavigationCapability *navigationCapability
SWIFT
var navigationCapability: SDLNavigationCapability? { get set }
Page 822
videoStreamingCapability
Undocumented
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLPhoneCapability *phoneCapability
SWIFT
var phoneCapability: SDLPhoneCapability? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLVideoStreamingCapability *videoStreamingCapability
Page 823
remoteControlCapability
Undocumented
SWIFT
var videoStreamingCapability: SDLVideoStreamingCapability? { get set }
OBJECTIVE-C
@property (nullable, strong, nonatomic) SDLRemoteControlCapabilities *remoteControlCapability
SWIFT
var remoteControlCapability: SDLRemoteControlCapabilities? { get set }
Page 824
SDLTCPTransport Class Reference
Section Contents
• socket• hostName• portNumber
Overview
Undocumented
socket
Undocumented
hostName
Undocumented
OBJECTIVE-C
_Nullable CFSocketRef socket
Page 825
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 }
Page 826
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
Page 827
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)
Page 828
+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;
Page 829
+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]
Page 830
+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]
Page 831
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 }
Page 832
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 }
Page 833
-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;
Page 834
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 }
Page 835
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
Page 836
@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 }
Page 837
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;
Page 838
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 }
Page 839
SDLTireStatus Class Reference
Section Contents
• pressureTelltale• leftFront• rightFront• leftRear• rightRear• innerLeftRear• innerRightRear
Overview
Undocumented
pressureTelltale
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLWarningLightStatus pressureTelltale
Page 840
leftFront
Undocumented
rightFront
Undocumented
SWIFT
var pressureTelltale: SDLWarningLightStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *leftFront
SWIFT
var leftFront: SDLSingleTireStatus { get set }
Page 841
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 }
Page 842
rightRear
Undocumented
innerLeftRear
Undocumented
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *rightRear
SWIFT
var rightRear: SDLSingleTireStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *innerLeftRear
Page 843
innerRightRear
Undocumented
SWIFT
var innerLeftRear: SDLSingleTireStatus { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLSingleTireStatus *innerRightRear
SWIFT
var innerRightRear: SDLSingleTireStatus { get set }
Page 844
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;
Page 845
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;
Page 846
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 }
Page 847
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 }
Page 848
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 }
Page 849
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
Page 850
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 }
Page 851
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 }
Page 852
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 }
Page 853
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 }
Page 854
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
Page 855
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 }
Page 856
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 }
Page 857
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;
Page 858
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 }
Page 859
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 }
Page 860
-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;
Page 861
-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
Page 862
SDLTurn Class Reference
Section Contents
• -initWithNavigationText:turnIcon:• navigationText• turnIcon
Overview
Undocumented
-initWithNavigationText:turnIcon:
Undocumented
OBJECTIVE-C
- (void)syncFrame;
SWIFT
func syncFrame()
Page 863
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 }
Page 864
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 }
Page 865
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)
Page 866
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 }
Page 867
• 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
Page 868
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)
Page 869
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 }
Page 870
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;
Page 871
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 }
Page 872
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 }
Page 873
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;
Page 874
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 }
Page 875
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 }
Page 876
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;
Page 877
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 }
Page 878
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 }
Page 879
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
Page 880
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 }
Page 881
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 }
Page 882
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
Page 883
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 }
Page 884
• 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 }
Page 885
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;
Page 886
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 }
Page 887
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;
Page 888
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 }
Page 889
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 }
Page 890
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;
Page 891
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 }
Page 892
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 }
Page 893
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;
Page 894
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 }
Page 895
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;
Page 896
eCallInfo
Undocumented
airbagStatus
Undocumented
SWIFT
var steeringWheelAngle: SDLVehicleDataResult? { get set }
OBJECTIVE-C
@property (strong, nonatomic, nullable) SDLVehicleDataResult *eCallInfo
SWIFT
var eCallInfo: SDLVehicleDataResult? { get set }
Page 897
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 }
Page 898
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
Page 899
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 }
Page 900
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 }
Page 901
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 }
Page 902
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?)
Page 903
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 }
Page 904
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
Page 905
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
Page 906
resultCode
Undocumented
SWIFT
var dataType: SDLVehicleDataType { get set }
OBJECTIVE-C
@property (strong, nonatomic) SDLVehicleDataResultCode resultCode
SWIFT
var resultCode: SDLVehicleDataResultCode { get set }
Page 907
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;
Page 908
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 }
Page 909
@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;
Page 910
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 }
Page 911
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;
Page 912
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 }
Page 913
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;
Page 914
SDLVideoStreamingFormat ClassReference
Section Contents
• protocol• codec• -initWithCodec:protocol:
Overview
Undocumented
protocol
@abstract Protocol type, see VideoStreamingProtocol, mandatory
SWIFT
var hapticSpatialDataSupported: (NSNumber & SDLBool)? { get set }
Page 915
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 }
Page 916
-initWithCodec:protocol:
Undocumented
SDLArtworkImageFormat EnumerationReference
Section Contents
• SDLArtworkImageFormatPNG
OBJECTIVE-C
- (instancetype)initWithCodec:(SDLVideoStreamingCodec)codec protocol:(SDLVideoStreamingProtocol)protocol;
SWIFT
init(codec: SDLVideoStreamingCodec, protocol: SDLVideoStreamingProtocol)
Page 917
• SDLArtworkImageFormatJPG
Overview
Undocumented
SDLArtworkImageFormatPNG
Undocumented
SDLArtworkImageFormatJPG
Undocumented
OBJECTIVE-C
SDLArtworkImageFormatPNG
SWIFT
case PNG = 0
OBJECTIVE-C
SDLArtworkImageFormatJPG
Page 918
SDLAudioStreamManagerErrorEnumeration Reference
Section Contents
• SDLAudioStreamManagerErrorNotConnected• SDLAudioStreamManagerErrorNoQueuedAudio
Overview
Undocumented
SDLAudioStreamManagerErrorNotConnected
Undocumented
SWIFT
case JPG = 1
OBJECTIVE-C
SDLAudioStreamManagerErrorNotConnected = -1
Page 919
SDLAudioStreamManagerErrorNoQueuedAudio
Undocumented
SWIFT
case notConnected = -1
OBJECTIVE-C
SDLAudioStreamManagerErrorNoQueuedAudio = -2
SWIFT
case noQueuedAudio = -2
Page 920
SDLCarWindowRenderingTypeEnumeration Reference
Section Contents
• SDLCarWindowRenderingTypeLayer• SDLCarWindowRenderingTypeViewAfterScreenUpdates• SDLCarWindowRenderingTypeViewBeforeScreenUpdates
Overview
Undocumented
SDLCarWindowRenderingTypeLayer
Undocumented
OBJECTIVE-C
SDLCarWindowRenderingTypeLayer
SWIFT
case layer = 0
Page 921
SDLCarWindowRenderingTypeViewAfterScreenUpdates
Undocumented
SDLCarWindowRenderingTypeViewBeforeScreenUpdates
Undocumented
OBJECTIVE-C
SDLCarWindowRenderingTypeViewAfterScreenUpdates
SWIFT
case viewAfterScreenUpdates = 1
OBJECTIVE-C
SDLCarWindowRenderingTypeViewBeforeScreenUpdates
Page 922
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
Page 923
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
Page 924
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
Page 925
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
Page 926
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
Page 927
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
Page 928
• SDLFrameInfoHeartbeatACK• SDLFrameInfoSingleFrame• SDLFrameInfoFirstFrame• SDLFrameInfoConsecutiveLastFrame
Overview
Undocumented
SDLFrameInfoHeartbeat
Undocumented
SDLFrameInfoStartService
Undocumented
OBJECTIVE-C
SDLFrameInfoHeartbeat = 0x00
SWIFT
case heartbeat = 0
Page 929
SDLFrameInfoStartServiceACK
Undocumented
OBJECTIVE-C
SDLFrameInfoStartService = 0x01
SWIFT
case startService = 1
OBJECTIVE-C
SDLFrameInfoStartServiceACK = 0x02
SWIFT
case startServiceACK = 2
Page 930
SDLFrameInfoStartServiceNACK
Undocumented
SDLFrameInfoEndService
Undocumented
OBJECTIVE-C
SDLFrameInfoStartServiceNACK = 0x03
SWIFT
case startServiceNACK = 3
OBJECTIVE-C
SDLFrameInfoEndService = 0x04
Page 931
SDLFrameInfoEndServiceACK
Undocumented
SDLFrameInfoEndServiceNACK
Undocumented
SWIFT
case endService = 4
OBJECTIVE-C
SDLFrameInfoEndServiceACK = 0x05
SWIFT
case endServiceACK = 5
Page 932
SDLFrameInfoServiceDataAck
Undocumented
OBJECTIVE-C
SDLFrameInfoEndServiceNACK = 0x06
SWIFT
case endServiceNACK = 6
OBJECTIVE-C
SDLFrameInfoServiceDataAck = 0xFE
SWIFT
case serviceDataAck = 254
Page 933
SDLFrameInfoHeartbeatACK
Undocumented
SDLFrameInfoSingleFrame
Undocumented
OBJECTIVE-C
SDLFrameInfoHeartbeatACK = 0xFF
SWIFT
case heartbeatACK = 255
OBJECTIVE-C
SDLFrameInfoSingleFrame = 0x00
Page 934
SDLFrameInfoFirstFrame
Undocumented
SDLFrameInfoConsecutiveLastFrame
Undocumented
SWIFT
static var singleFrame: SDLFrameInfo { get }
OBJECTIVE-C
SDLFrameInfoFirstFrame = 0x00
SWIFT
static var firstFrame: SDLFrameInfo { get }
Page 935
SDLFrameType Enumeration Reference
Section Contents
• SDLFrameTypeControl• SDLFrameTypeSingle• SDLFrameTypeFirst• SDLFrameTypeConsecutive
Overview
Undocumented
OBJECTIVE-C
SDLFrameInfoConsecutiveLastFrame = 0x00
SWIFT
static var consecutiveLastFrame: SDLFrameInfo { get }
Page 936
SDLFrameTypeControl
Undocumented
SDLFrameTypeSingle
Undocumented
OBJECTIVE-C
SDLFrameTypeControl = 0x00
SWIFT
case control = 0
OBJECTIVE-C
SDLFrameTypeSingle = 0x01
Page 937
SDLFrameTypeFirst
Undocumented
SDLFrameTypeConsecutive
Undocumented
SWIFT
case single = 1
OBJECTIVE-C
SDLFrameTypeFirst = 0x02
SWIFT
case first = 2
Page 938
SDLLogBytesDirection EnumerationReference
Section Contents
• SDLLogBytesDirectionTransmit• SDLLogBytesDirectionReceive
Overview
Undocumented
OBJECTIVE-C
SDLFrameTypeConsecutive = 0x03
SWIFT
case consecutive = 3
Page 939
SDLLogBytesDirectionTransmit
Undocumented
SDLLogBytesDirectionReceive
Undocumented
OBJECTIVE-C
SDLLogBytesDirectionTransmit
SWIFT
case transmit = 0
OBJECTIVE-C
SDLLogBytesDirectionReceive
Page 940
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
Page 941
SDLLogFlagWarning
Undocumented
OBJECTIVE-C
SDLLogFlagError = 1 << 0
SWIFT
static var error: SDLLogFlag { get }
OBJECTIVE-C
SDLLogFlagWarning = 1 << 1
SWIFT
static var warning: SDLLogFlag { get }
Page 942
SDLLogFlagDebug
Undocumented
SDLLogFlagVerbose
Undocumented
OBJECTIVE-C
SDLLogFlagDebug = 1 << 2
SWIFT
static var debug: SDLLogFlag { get }
OBJECTIVE-C
SDLLogFlagVerbose = 1 << 3
Page 943
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 }
Page 944
SDLLogFormatTypeSimple
Undocumented
SDLLogFormatTypeDefault
Undocumented
OBJECTIVE-C
SDLLogFormatTypeSimple
SWIFT
case simple = 0
OBJECTIVE-C
SDLLogFormatTypeDefault
Page 945
SDLLogFormatTypeDetailed
Undocumented
SWIFT
case `default` = 1
OBJECTIVE-C
SDLLogFormatTypeDetailed
SWIFT
case detailed = 2
Page 946
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
Page 947
SDLLogLevelOff
Undocumented
OBJECTIVE-C
SDLLogLevelDefault = -1
SWIFT
case `default` = -1
OBJECTIVE-C
SDLLogLevelOff = 0
SWIFT
case off = 0
Page 948
SDLLogLevelError
Undocumented
SDLLogLevelWarning
Undocumented
OBJECTIVE-C
SDLLogLevelError = SDLLogFlagError
SWIFT
case error = 1
OBJECTIVE-C
SDLLogLevelWarning = (SDLLogFlagError | SDLLogFlagWarning)
Page 949
SDLLogLevelDebug
Undocumented
SDLLogLevelVerbose
Undocumented
SWIFT
case warning = 3
OBJECTIVE-C
SDLLogLevelDebug = (SDLLogFlagWarning | SDLLogFlagDebug)
SWIFT
case debug = 6
Page 950
SDLManagerError EnumerationReference
Section Contents
• SDLManagerErrorRPCRequestFailed• SDLManagerErrorNotConnected• SDLManagerErrorNotReady• SDLManagerErrorUnknownRemoteError• SDLManagerErrorManagersFailedToStart• SDLManagerErrorRegistrationFailed
OBJECTIVE-C
SDLLogLevelVerbose = (SDLLogFlagDebug | SDLLogFlagVerbose)
SWIFT
case verbose = 12
Page 951
• 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
Page 952
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
Page 953
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
Page 954
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
Page 955
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
Page 956
SDLPermissionGroupStatusDisallowed
Every RPC in the group is currently disallowed.
OBJECTIVE-C
SDLPermissionGroupStatusAllowed
SWIFT
case allowed = 0
OBJECTIVE-C
SDLPermissionGroupStatusDisallowed
SWIFT
case disallowed = 1
Page 957
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
Page 958
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
Page 959
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
Page 960
SDLProtocolError EnumerationReference
Section Contents
• SDLProtocolErrorNoSecurityManager
Overview
Undocumented
SDLProtocolErrorNoSecurityManager
Undocumented
OBJECTIVE-C
SDLProtocolErrorNoSecurityManager
SWIFT
case noSecurityManager = 0
Page 961
SDLRPCMessageType EnumerationReference
Section Contents
• SDLRPCMessageTypeRequest• SDLRPCMessageTypeResponse• SDLRPCMessageTypeNotification
Overview
Undocumented
SDLRPCMessageTypeRequest
Undocumented
OBJECTIVE-C
SDLRPCMessageTypeRequest = 0
SWIFT
case request = 0
Page 962
SDLRPCMessageTypeResponse
Undocumented
SDLRPCMessageTypeNotification
Undocumented
OBJECTIVE-C
SDLRPCMessageTypeResponse
SWIFT
case response = 1
OBJECTIVE-C
SDLRPCMessageTypeNotification
Page 963
SDLServiceType Enumeration Reference
Section Contents
• SDLServiceTypeControl• SDLServiceTypeRPC• SDLServiceTypeAudio• SDLServiceTypeVideo• SDLServiceTypeBulkData
Overview
Undocumented
SDLServiceTypeControl
Undocumented
SWIFT
case notification = 2
Page 964
SDLServiceTypeRPC
Undocumented
OBJECTIVE-C
SDLServiceTypeControl = 0x00
SWIFT
case control = 0
OBJECTIVE-C
SDLServiceTypeRPC NS_SWIFT_NAME(rpc) = 0x07
SWIFT
case rpc = 7
Page 965
SDLServiceTypeAudio
Undocumented
SDLServiceTypeVideo
Undocumented
OBJECTIVE-C
SDLServiceTypeAudio = 0x0A
SWIFT
case audio = 10
OBJECTIVE-C
SDLServiceTypeVideo = 0x0B
Page 966
SDLServiceTypeBulkData
Undocumented
SWIFT
case video = 11
OBJECTIVE-C
SDLServiceTypeBulkData = 0x0F
SWIFT
case bulkData = 15
Page 967
SDLStreamingEncryptionFlagEnumeration Reference
Section Contents
• SDLStreamingEncryptionFlagNone• SDLStreamingEncryptionFlagAuthenticateOnly• SDLStreamingEncryptionFlagAuthenticateAndEncrypt
Overview
Undocumented
SDLStreamingEncryptionFlagNone
Undocumented
OBJECTIVE-C
SDLStreamingEncryptionFlagNone
SWIFT
case none = 0
Page 968
SDLStreamingEncryptionFlagAuthenticateOnly
Undocumented
SDLStreamingEncryptionFlagAuthenticateAndEncrypt
Undocumented
OBJECTIVE-C
SDLStreamingEncryptionFlagAuthenticateOnly
SWIFT
case authenticateOnly = 1
OBJECTIVE-C
SDLStreamingEncryptionFlagAuthenticateAndEncrypt
Page 969
SDLAudioStreamManagerDelegateProtocol Reference
Section Contents
• -audioStreamManager:fileDidFinishPlaying:successfully:• -audioStreamManager:errorDidOccurForFile:error:
Overview
Undocumented
-
audioStreamManager:fileDidFinishPlaying:successfully:
Undocumented
SWIFT
case authenticateAndEncrypt = 2
Page 970
-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;
Page 971
SDLIAPSessionDelegate ProtocolReference
Section Contents
• -onSessionInitializationCompleteForSession:• -onSessionStreamsEnded:
Overview
Undocumented
-onSessionInitializationCompleteForSession:
Undocumented
SWIFT
func audioStreamManager(_ audioManager: SDLAudioStreamManager, errorDidOccurForFile fileURL: URL, error: Error)
Page 972
-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)
Page 973
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
Page 974
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
Page 975
-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
Page 976
-teardownLogger
Undocumented
SDLManagerDelegate ProtocolReference
Section Contents
• -managerDidDisconnect• -hmiLevel:didChangeToLevel:• -audioStreamingState:didChangeToState:
OBJECTIVE-C
- (void)teardownLogger;
SWIFT
func teardownLogger()
Page 977
• -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()
Page 978
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
Page 979
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
Page 980
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
Page 981
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;
Page 982
-handleProtocolStartServiceNAKMessage:
Undocumented
-handleProtocolEndServiceACKMessage:
Undocumented
SWIFT
optional func handleProtocolStartServiceACKMessage(_ startServiceACK: SDLProtocolMessage)
OBJECTIVE-C
- (void)handleProtocolStartServiceNAKMessage:(SDLProtocolMessage *)startServiceNAK;
SWIFT
optional func handleProtocolStartServiceNAKMessage(_ startServiceNAK: SDLProtocolMessage)
Page 983
-handleProtocolEndServiceNAKMessage:
Undocumented
OBJECTIVE-C
- (void)handleProtocolEndServiceACKMessage:(SDLProtocolMessage *)endServiceACK;
SWIFT
optional func handleProtocolEndServiceACKMessage(_ endServiceACK: SDLProtocolMessage)
OBJECTIVE-C
- (void)handleProtocolEndServiceNAKMessage:(SDLProtocolMessage *)endServiceNAK;
Page 984
-handleHeartbeatForSession:
Undocumented
-handleHeartbeatACK
Undocumented
SWIFT
optional func handleProtocolEndServiceNAKMessage(_ endServiceNAK: SDLProtocolMessage)
OBJECTIVE-C
- (void)handleHeartbeatForSession:(Byte)session;
SWIFT
optional func handleHeartbeat(forSession session: UInt8)
Page 985
-onProtocolMessageReceived:
Undocumented
OBJECTIVE-C
- (void)handleHeartbeatACK;
SWIFT
optional func handleHeartbeatACK()
OBJECTIVE-C
- (void)onProtocolMessageReceived:(SDLProtocolMessage *)msg;
SWIFT
optional func onProtocolMessageReceived(_ msg: SDLProtocolMessage)
Page 986
-onProtocolOpened
Undocumented
-onProtocolClosed
Undocumented
OBJECTIVE-C
- (void)onProtocolOpened;
SWIFT
optional func onProtocolOpened()
OBJECTIVE-C
- (void)onProtocolClosed;
Page 987
-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)
Page 988
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:
Page 989
• -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:
Page 990
• -onUnregisterAppInterfaceResponse:• -onUnsubscribeButtonResponse:• -onUnsubscribeVehicleDataResponse:• -onUnsubscribeWayPointsResponse:
Overview
Undocumented
-onOnDriverDistraction:
Undocumented
-onOnHMIStatus:
Undocumented
OBJECTIVE-C
- (void)onOnDriverDistraction:(SDLOnDriverDistraction *)notification;
SWIFT
func on(_ notification: SDLOnDriverDistraction)
Page 991
-onProxyClosed
Undocumented
OBJECTIVE-C
- (void)onOnHMIStatus:(SDLOnHMIStatus *)notification;
SWIFT
func on(_ notification: SDLOnHMIStatus)
OBJECTIVE-C
- (void)onProxyClosed;
SWIFT
func onProxyClosed()
Page 992
-onProxyOpened
Undocumented
-onAddCommandResponse:
Undocumented
OBJECTIVE-C
- (void)onProxyOpened;
SWIFT
func onProxyOpened()
OBJECTIVE-C
- (void)onAddCommandResponse:(SDLAddCommandResponse *)response;
Page 993
-onAddSubMenuResponse:
Undocumented
-onAlertManeuverResponse:
Undocumented
SWIFT
optional func onAddCommandResponse(_ response: SDLAddCommandResponse)
OBJECTIVE-C
- (void)onAddSubMenuResponse:(SDLAddSubMenuResponse *)response;
SWIFT
optional func onAddSubMenuResponse(_ response: SDLAddSubMenuResponse)
Page 994
-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)
Page 995
-onButtonPressResponse:
Undocumented
-onChangeRegistrationResponse:
Undocumented
OBJECTIVE-C
- (void)onButtonPressResponse:(SDLButtonPressResponse *)response;
SWIFT
optional func onButtonPressResponse(_ response: SDLButtonPressResponse)
OBJECTIVE-C
- (void)onChangeRegistrationResponse:(SDLChangeRegistrationResponse *)response;
Page 996
-onCreateInteractionChoiceSetResponse:
Undocumented
-onDeleteCommandResponse:
Undocumented
SWIFT
optional func onChangeRegistrationResponse(_ response: SDLChangeRegistrationResponse)
OBJECTIVE-C
- (void)onCreateInteractionChoiceSetResponse:(SDLCreateInteractionChoiceSetResponse *)response;
SWIFT
optional func onCreateInteractionChoiceSetResponse(_ response: SDLCreateInteractionChoiceSetResponse)
Page 997
-onDeleteFileResponse:
Undocumented
OBJECTIVE-C
- (void)onDeleteCommandResponse:(SDLDeleteCommandResponse *)response;
SWIFT
optional func onDeleteCommandResponse(_ response: SDLDeleteCommandResponse)
OBJECTIVE-C
- (void)onDeleteFileResponse:(SDLDeleteFileResponse *)response;
Page 998
-onDeleteInteractionChoiceSetResponse:
Undocumented
-onDeleteSubMenuResponse:
Undocumented
SWIFT
optional func onDeleteFileResponse(_ response: SDLDeleteFileResponse)
OBJECTIVE-C
- (void)onDeleteInteractionChoiceSetResponse:(SDLDeleteInteractionChoiceSetResponse *)response;
SWIFT
optional func onDeleteInteractionChoiceSetResponse(_ response: SDLDeleteInteractionChoiceSetResponse)
Page 999
-onDiagnosticMessageResponse:
Undocumented
OBJECTIVE-C
- (void)onDeleteSubMenuResponse:(SDLDeleteSubMenuResponse *)response;
SWIFT
optional func onDeleteSubMenuResponse(_ response: SDLDeleteSubMenuResponse)
OBJECTIVE-C
- (void)onDiagnosticMessageResponse:(SDLDiagnosticMessageResponse *)response;
Page 1000
-onDialNumberResponse:
Undocumented
-onEncodedSyncPDataResponse:
Undocumented
SWIFT
optional func onDiagnosticMessageResponse(_ response: SDLDiagnosticMessageResponse)
OBJECTIVE-C
- (void)onDialNumberResponse:(SDLDialNumberResponse *)response;
SWIFT
optional func onDialNumberResponse(_ response: SDLDialNumberResponse)
Page 1001
-onEndAudioPassThruResponse:
Undocumented
OBJECTIVE-C
- (void)onEncodedSyncPDataResponse:(SDLEncodedSyncPDataResponse *)response;
SWIFT
optional func onEncodedSyncPDataResponse(_ response: SDLEncodedSyncPDataResponse)
OBJECTIVE-C
- (void)onEndAudioPassThruResponse:(SDLEndAudioPassThruResponse *)response;
Page 1002
-onError:
Undocumented
-onGenericResponse:
Undocumented
SWIFT
optional func onEndAudioPassThruResponse(_ response: SDLEndAudioPassThruResponse)
OBJECTIVE-C
- (void)onError:(NSException *)e;
SWIFT
optional func onError(_ e: NSException)
Page 1003
-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)
Page 1004
-onGetInteriorVehicleDataResponse:
Undocumented
-onGetSystemCapabilityResponse:
Undocumented
OBJECTIVE-C
- (void)onGetInteriorVehicleDataResponse:(SDLGetInteriorVehicleDataResponse *)response;
SWIFT
optional func onGetInteriorVehicleDataResponse(_ response: SDLGetInteriorVehicleDataResponse)
OBJECTIVE-C
- (void)onGetSystemCapabilityResponse:(SDLGetSystemCapabilityResponse *)response;
Page 1005
-onGetVehicleDataResponse:
Undocumented
-onGetWayPointsResponse:
Undocumented
SWIFT
optional func onGetSystemCapabilityResponse(_ response: SDLGetSystemCapabilityResponse)
OBJECTIVE-C
- (void)onGetVehicleDataResponse:(SDLGetVehicleDataResponse *)response;
SWIFT
optional func onGetVehicleDataResponse(_ response: SDLGetVehicleDataResponse)
Page 1006
-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)
Page 1007
-onReceivedLockScreenIcon:
Undocumented
-onOnAppInterfaceUnregistered:
Undocumented
OBJECTIVE-C
- (void)onReceivedLockScreenIcon:(UIImage *)icon;
SWIFT
optional func onReceivedLockScreenIcon(_ icon: UIImage)
OBJECTIVE-C
- (void)onOnAppInterfaceUnregistered:(SDLOnAppInterfaceUnregistered *)notification;
Page 1008
-onOnAudioPassThru:
Undocumented
-onOnButtonEvent:
Undocumented
SWIFT
optional func on(_ notification: SDLOnAppInterfaceUnregistered)
OBJECTIVE-C
- (void)onOnAudioPassThru:(SDLOnAudioPassThru *)notification;
SWIFT
optional func on(_ notification: SDLOnAudioPassThru)
Page 1009
-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)
Page 1010
-onOnCommand:
Undocumented
-onOnEncodedSyncPData:
Undocumented
OBJECTIVE-C
- (void)onOnCommand:(SDLOnCommand *)notification;
SWIFT
optional func on(_ notification: SDLOnCommand)
OBJECTIVE-C
- (void)onOnEncodedSyncPData:(SDLOnEncodedSyncPData *)notification;
Page 1011
-onOnHashChange:
Undocumented
-onOnInteriorVehicleData:
Undocumented
SWIFT
optional func on(_ notification: SDLOnEncodedSyncPData)
OBJECTIVE-C
- (void)onOnHashChange:(SDLOnHashChange *)notification;
SWIFT
optional func on(_ notification: SDLOnHashChange)
Page 1012
-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)
Page 1013
-onOnLanguageChange:
Undocumented
-onOnLockScreenNotification:
Undocumented
OBJECTIVE-C
- (void)onOnLanguageChange:(SDLOnLanguageChange *)notification;
SWIFT
optional func on(_ notification: SDLOnLanguageChange)
OBJECTIVE-C
- (void)onOnLockScreenNotification:(SDLOnLockScreenStatus *)notification;
Page 1014
-onOnPermissionsChange:
Undocumented
-onOnSyncPData:
Undocumented
SWIFT
optional func on(onLockScreenNotification notification: SDLOnLockScreenStatus)
OBJECTIVE-C
- (void)onOnPermissionsChange:(SDLOnPermissionsChange *)notification;
SWIFT
optional func on(_ notification: SDLOnPermissionsChange)
Page 1015
-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)
Page 1016
-onOnTBTClientState:
Undocumented
-onOnTouchEvent:
Undocumented
OBJECTIVE-C
- (void)onOnTBTClientState:(SDLOnTBTClientState *)notification;
SWIFT
optional func on(_ notification: SDLOnTBTClientState)
OBJECTIVE-C
- (void)onOnTouchEvent:(SDLOnTouchEvent *)notification;
Page 1017
-onOnVehicleData:
Undocumented
-onOnWayPointChange:
Undocumented
SWIFT
optional func on(_ notification: SDLOnTouchEvent)
OBJECTIVE-C
- (void)onOnVehicleData:(SDLOnVehicleData *)notification;
SWIFT
optional func on(_ notification: SDLOnVehicleData)
Page 1018
-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)
Page 1019
-onPerformInteractionResponse:
Undocumented
-onPutFileResponse:
Undocumented
OBJECTIVE-C
- (void)onPerformInteractionResponse:(SDLPerformInteractionResponse *)response;
SWIFT
optional func onPerformInteractionResponse(_ response: SDLPerformInteractionResponse)
OBJECTIVE-C
- (void)onPutFileResponse:(SDLPutFileResponse *)response;
Page 1020
-onReadDIDResponse:
Undocumented
-onRegisterAppInterfaceResponse:
Undocumented
SWIFT
optional func onPutFileResponse(_ response: SDLPutFileResponse)
OBJECTIVE-C
- (void)onReadDIDResponse:(SDLReadDIDResponse *)response;
SWIFT
optional func onReadDIDResponse(_ response: SDLReadDIDResponse)
Page 1021
-onResetGlobalPropertiesResponse:
Undocumented
OBJECTIVE-C
- (void)onRegisterAppInterfaceResponse:(SDLRegisterAppInterfaceResponse *)response;
SWIFT
optional func onRegisterAppInterfaceResponse(_ response: SDLRegisterAppInterfaceResponse)
OBJECTIVE-C
- (void)onResetGlobalPropertiesResponse:(SDLResetGlobalPropertiesResponse *)response;
Page 1022
-onScrollableMessageResponse:
Undocumented
-onSendHapticDataResponse:
Undocumented
SWIFT
optional func onResetGlobalPropertiesResponse(_ response: SDLResetGlobalPropertiesResponse)
OBJECTIVE-C
- (void)onScrollableMessageResponse:(SDLScrollableMessageResponse *)response;
SWIFT
optional func onScrollableMessageResponse(_ response: SDLScrollableMessageResponse)
Page 1023
-onSendLocationResponse:
Undocumented
OBJECTIVE-C
- (void)onSendHapticDataResponse:(SDLSendHapticDataResponse *)response;
SWIFT
optional func onSendHapticDataResponse(_ response: SDLSendHapticDataResponse)
OBJECTIVE-C
- (void)onSendLocationResponse:(SDLSendLocationResponse *)response;
Page 1024
-onSetAppIconResponse:
Undocumented
-onSetDisplayLayoutResponse:
Undocumented
SWIFT
optional func onSendLocationResponse(_ response: SDLSendLocationResponse)
OBJECTIVE-C
- (void)onSetAppIconResponse:(SDLSetAppIconResponse *)response;
SWIFT
optional func onSetAppIconResponse(_ response: SDLSetAppIconResponse)
Page 1025
-onSetGlobalPropertiesResponse:
Undocumented
OBJECTIVE-C
- (void)onSetDisplayLayoutResponse:(SDLSetDisplayLayoutResponse *)response;
SWIFT
optional func onSetDisplayLayoutResponse(_ response: SDLSetDisplayLayoutResponse)
OBJECTIVE-C
- (void)onSetGlobalPropertiesResponse:(SDLSetGlobalPropertiesResponse *)response;
Page 1026
-onSetInteriorVehicleDataResponse:
Undocumented
-onSetMediaClockTimerResponse:
Undocumented
SWIFT
optional func onSetGlobalPropertiesResponse(_ response: SDLSetGlobalPropertiesResponse)
OBJECTIVE-C
- (void)onSetInteriorVehicleDataResponse:(SDLSetInteriorVehicleDataResponse *)response;
SWIFT
optional func onSetInteriorVehicleDataResponse(_ response: SDLSetInteriorVehicleDataResponse)
Page 1027
-onShowConstantTBTResponse:
Undocumented
OBJECTIVE-C
- (void)onSetMediaClockTimerResponse:(SDLSetMediaClockTimerResponse *)response;
SWIFT
optional func onSetMediaClockTimerResponse(_ response: SDLSetMediaClockTimerResponse)
OBJECTIVE-C
- (void)onShowConstantTBTResponse:(SDLShowConstantTBTResponse *)response;
Page 1028
-onShowResponse:
Undocumented
-onSliderResponse:
Undocumented
SWIFT
optional func onShowConstantTBTResponse(_ response: SDLShowConstantTBTResponse)
OBJECTIVE-C
- (void)onShowResponse:(SDLShowResponse *)response;
SWIFT
optional func onShowResponse(_ response: SDLShowResponse)
Page 1029
-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)
Page 1030
-onSubscribeButtonResponse:
Undocumented
-onSubscribeVehicleDataResponse:
Undocumented
OBJECTIVE-C
- (void)onSubscribeButtonResponse:(SDLSubscribeButtonResponse *)response;
SWIFT
optional func onSubscribeButtonResponse(_ response: SDLSubscribeButtonResponse)
OBJECTIVE-C
- (void)onSubscribeVehicleDataResponse:(SDLSubscribeVehicleDataResponse *)response;
Page 1031
-onSubscribeWayPointsResponse:
Undocumented
-onSyncPDataResponse:
Undocumented
SWIFT
optional func onSubscribeVehicleDataResponse(_ response: SDLSubscribeVehicleDataResponse)
OBJECTIVE-C
- (void)onSubscribeWayPointsResponse:(SDLSubscribeWayPointsResponse *)response;
SWIFT
optional func onSubscribeWayPointsResponse(_ response: SDLSubscribeWayPointsResponse)
Page 1032
-onUpdateTurnListResponse:
Undocumented
OBJECTIVE-C
- (void)onSyncPDataResponse:(SDLSyncPDataResponse *)response;
SWIFT
optional func onSyncPDataResponse(_ response: SDLSyncPDataResponse)
OBJECTIVE-C
- (void)onUpdateTurnListResponse:(SDLUpdateTurnListResponse *)response;
Page 1033
-onUnregisterAppInterfaceResponse:
Undocumented
-onUnsubscribeButtonResponse:
Undocumented
SWIFT
optional func onUpdateTurnListResponse(_ response: SDLUpdateTurnListResponse)
OBJECTIVE-C
- (void)onUnregisterAppInterfaceResponse:(SDLUnregisterAppInterfaceResponse *)response;
SWIFT
optional func onUnregisterAppInterfaceResponse(_ response: SDLUnregisterAppInterfaceResponse)
Page 1034
-onUnsubscribeVehicleDataResponse:
Undocumented
OBJECTIVE-C
- (void)onUnsubscribeButtonResponse:(SDLUnsubscribeButtonResponse *)response;
SWIFT
optional func onUnsubscribeButtonResponse(_ response: SDLUnsubscribeButtonResponse)
OBJECTIVE-C
- (void)onUnsubscribeVehicleDataResponse:(SDLUnsubscribeVehicleDataResponse *)response;
Page 1035
-onUnsubscribeWayPointsResponse:
Undocumented
SWIFT
optional func onUnsubscribeVehicleDataResponse(_ response: SDLUnsubscribeVehicleDataResponse)
OBJECTIVE-C
- (void)onUnsubscribeWayPointsResponse:(SDLUnsubscribeWayPointsResponse *)response;
SWIFT
optional func onUnsubscribeWayPointsResponse(_ response: SDLUnsubscribeWayPointsResponse)
Page 1036
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
Page 1037
-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)
Page 1038
-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
Page 1039
-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;
Page 1040
+availableMakes
Undocumented
SWIFT
func decryptData(_ data: Data) throws -> Data
OBJECTIVE-C
+ (NSSet<NSString *> *)availableMakes;
SWIFT
static func availableMakes() -> Set<String>
Page 1041
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 }
Page 1042
-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
Page 1043
• -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)
Page 1044
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;
Page 1045
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
Page 1046
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
Page 1047
-
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
Page 1048
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
Page 1049
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)
Page 1050
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)
Page 1051
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;
Page 1052
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
Page 1053
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
Page 1054
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
Page 1055
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)
Page 1056
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
Page 1057
-onTransportDisconnected
Undocumented
OBJECTIVE-C
- (void)onTransportConnected;
SWIFT
func onTransportConnected()
OBJECTIVE-C
- (void)onTransportDisconnected;
SWIFT
func onTransportDisconnected()
Page 1058
-onDataReceived:
Undocumented
SDLTouchIdentifier Type DefinitionReference
Section Contents
•
Overview
Undocumented
OBJECTIVE-C
- (void)onDataReceived:(NSData *)receivedData;
SWIFT
func onDataReceived(_ receivedData: Any!)
Page 1059
UndocumentedSee more
OBJECTIVE-C
enum { SDLTouchIdentifierFirstFinger = 0, SDLTouchIdentifierSecondFinger = 1}
SWIFT
struct SDLTouchIdentifier : RawRepresentable, Equatable