DITDittoKit
@interface DITDittoKit : NSObject
The entrypoint to the DittoKit SDK.
For a DITDittoKit instance to continue to connect to other devices it must be kept in scope.
-
Represents whether logging is enabled.
Declaration
Objective-C
@property (class, nonatomic) BOOL loggingEnabled; -
The minimum log level at which logs will be logged, provided
loggingEnabledistrue.Declaration
Objective-C
@property (class, nonatomic) enum DITLogLevel minimumLogLevel; -
Represents whether or not emojis should be used as the log level indicator in the logs.
Declaration
Objective-C
@property (class, nonatomic) BOOL emojiLogLevelHeadingsEnabled; -
Configure a custom identifier for the current device.
When using
observePeers, each remote peer is represented by a short UTF-8 “device name”.By default this will be a truncated version of the device’s hostname. It does not need to be unique among peers.
Configure the device name before calling
start. If it is too long it will be truncated.Declaration
Objective-C
@property (class, nonatomic) NSString *_Nonnull deviceName; -
Provides access to the SDK’s store functionality.
Declaration
Objective-C
@property (readonly) DITStore *_Nonnull store; -
The site ID that the instance of
DittoKitis using as part of its identity.Declaration
Objective-C
@property (nonatomic, readonly) uint32_t siteID; -
An optional delegate that will be called with SDK lifecycle information if defined.
Declaration
Objective-C
@property (nonatomic, weak) id<DITDittoKitDelegate> _Nullable delegate; -
The dispatch queue that will be used to deliver delegate events. Defaults to the main queue.
Declaration
Objective-C
@property (nonatomic) dispatch_queue_t _Nonnull delegateEventQueue; -
Initializes a new
DITDittoKit.This will initialize an instance of
DITDittoKitwith the default configuration.Declaration
Objective-C
- (nonnull instancetype)init; -
Initializes a new
DITDittoKit.Declaration
Objective-C
- (nonnull instancetype)initWithIdentity:(nonnull DITIdentity *)identity;Parameters
identityProvide the identity of the entity that is interacting with DittoKit.
-
Initializes a new
DITDittoKit.Declaration
Objective-C
- (nonnull instancetype)initWithIdentity:(nonnull DITIdentity *)identity persistenceDirectory:(nonnull NSURL *)directory;Parameters
identityProvide the identity of the entity that is interacting with DittoKit.
directoryThe directory that will be used to persist DittoKit data.
-
Initializes a new
DITDittoKit.Declaration
Objective-C
- (nonnull instancetype)initWithIdentity:(nonnull DITIdentity *)identity dbConfig:(nonnull DITDBConfig *)dbConfig;Parameters
identityProvide the identity of the entity that is interacting with DittoKit.
dbConfigOptional configuration to pass to the underlying storage backend.
-
Initializes a new
DITDittoKit.Declaration
Objective-C
- (nonnull instancetype)initWithIdentity:(nonnull DITIdentity *)identity persistenceDirectory:(nullable NSURL *)directory dbConfig:(nullable DITDBConfig *)dbConfig;Parameters
identityProvide the identity of the entity that is interacting with DittoKit.
directoryThe directory that will be used to persist DittoKit data.
dbConfigOptional configuration to pass to the underlying storage backend.
-
Starts all of the transports used by DittoKit to connect to other devices.
This has no effect for any transports that have already been started.
Declaration
Objective-C
- (void)start; -
Start a set of transports used by DittoKit to connect to other devices.
This has no effect if a provided transport is already started.
Declaration
Objective-C
- (void)start:(nonnull NSArray<DITTransport *> *)transports;Parameters
transportsThe set of transports to be started.
-
Stops all of the transports used by DittoKit to connect to other devices.
This has no effect for any transports that have already been stopped.
Declaration
Objective-C
- (void)stop; -
Stop a set of transports being used by DittoKit to connect to other devices.
This has no effect for any transports that have already been started.
Declaration
Objective-C
- (void)stop:(nonnull NSArray<DITTransport *> *)transports;Parameters
transportsThe set of transports to be stopped.
-
Activate a
DITDittoKitinstance by setting an access license. You cannot meaningfully interact with aDITDittoKitinstance before you have activated it.Declaration
Objective-C
- (void)setAccessLicense:(nonnull NSString *)license;Parameters
licenseThe license to activate the
DITDittoKitinstance with. -
Clears the cached site ID, if one had been cached.
Declaration
Objective-C
- (void)clearSiteID; -
Request bulk status information about the transports.
This is mostly intended for statistical or debugging purposes.
Declaration
Objective-C
- (nullable DITTransportDiagnostics *)transportDiagnostics: (NSError *_Nullable *_Nullable)error;Parameters
errorOn input, a pointer to an error object. If an error occurs, this pointer is set to an actual error object containing the error information. You may specify nil for this parameter if you do not want the error information.
Return Value
An instance of
DITTransportDiagnosticsornilif there was an error. -
Request information about Ditto peers in range of this device.
This method returns an observer which should be held as long as updates are required. A newly registered observer will have a peers update delivered to it immediately. From then on it will be invoked repeatedly when Ditto devices come and go, or the active connections to them change.
Declaration
Objective-C
- (nonnull DITPeersObserver *)observePeers: (nonnull void (^)(NSArray<DITRemotePeer *> *_Nonnull))callback; -
Returns a string identifying the version of the DittoKit SDK.
Declaration
Objective-C
- (nonnull NSString *)sdkVersion;
DITDittoKit Class Reference