Classes

The following classes are available globally.

  • A class for containing downloaded data along with some information about it.

    See more

    Declaration

    Objective-C

    @interface SPUDownloadData : NSObject <NSSecureCoding>

    Swift

    class SPUDownloadData : NSObject, NSSecureCoding
  • A controller class that instantiates a SPUUpdater and allows binding UI to its updater settings.

    This class can be instantiated in a nib or created programmatically using -initWithUpdaterDelegate:userDriverDelegate: or -initWithStartingUpdater:updaterDelegate:userDriverDelegate:.

    The controller’s updater targets the application’s main bundle and uses Sparkle’s standard user interface. Typically, this class is used by sticking it as a custom NSObject subclass in an Interface Builder nib (probably in MainMenu) but it works well programmatically too.

    The controller creates an SPUUpdater instance using a SPUStandardUserDriver and allows hooking up the check for updates action and handling menu item validation. It also allows hooking up the updater’s and user driver’s delegates.

    If you need more control over what bundle you want to update, or you want to provide a custom user interface (via SPUUserDriver), please use SPUUpdater directly instead.

    This class must be used on the main thread.

    See more

    Declaration

    Objective-C

    @interface SPUStandardUpdaterController : NSObject {
      id<SPUUpdaterDelegate> updaterDelegate;
      id<SPUStandardUserDriverDelegate> userDriverDelegate;
    }

    Swift

    class SPUStandardUpdaterController : NSObject
  • Sparkle’s standard built-in user driver for updater interactions

    See more

    Declaration

    Objective-C

    @interface SPUStandardUserDriver : NSObject <SPUUserDriver>

    Swift

    class SPUStandardUserDriver : NSObject, SPUUserDriver
  • This class represents information needed to make a permission request for checking updates.

    See more

    Declaration

    Objective-C

    @interface SPUUpdatePermissionRequest : NSObject <NSSecureCoding>

    Swift

    class SPUUpdatePermissionRequest : NSObject, NSSecureCoding
  • The main API in Sparkle for controlling the update mechanism.

    This class is used to configure the update parameters as well as manually and automatically schedule and control checks for updates.

    For convenience, you can create a standard or nib instantiable updater by using SPUStandardUpdaterController.

    Prefer to set initial properties in your bundle’s Info.plist as described in Customizing Sparkle.

    Otherwise only if you need dynamic behavior for user settings should you set properties on the updater such as:

    • automaticallyChecksForUpdates
    • updateCheckInterval
    • automaticallyDownloadsUpdates
    • feedURL

    Please view the documentation on each of these properties for more detail if you are to configure them dynamically.

    This class must be used on the main thread.

    See more

    Declaration

    Objective-C

    @interface SPUUpdater : NSObject

    Swift

    class SPUUpdater : NSObject
  • This class can be used for reading and updating updater settings.

    It retrieves the settings by first looking into the host’s user defaults. If the setting is not found in there, then the host’s Info.plist file is looked at.

    For updating updater settings, changes are made in the host’s user defaults.

    See more

    Declaration

    Objective-C

    @interface SPUUpdaterSettings : NSObject

    Swift

    class SPUUpdaterSettings : NSObject
  • This represents the user’s current update state.

    See more

    Declaration

    Objective-C

    @interface SPUUserUpdateState : NSObject

    Swift

    class SPUUserUpdateState : NSObject
  • The appcast representing a collection of SUAppcastItem items in the feed.

    See more

    Declaration

    Objective-C

    @interface SUAppcast : NSObject

    Swift

    class SUAppcast : NSObject
  • The appcast item describing an update in the application’s appcast feed.

    An appcast item represents a single update item in the SUAppcast contained within the <item> element.

    Every appcast item must have a versionString, and either a fileURL or an infoURL. All the remaining properties describing an update to the application are optional.

    Extended documentation and examples on using appcast item features are available at: https://sparkle-project.org/documentation/publishing/

    See more

    Declaration

    Objective-C

    @interface SUAppcastItem : NSObject <NSSecureCoding>

    Swift

    class SUAppcastItem : NSObject, NSSecureCoding
  • Sparkle’s default version comparator.

    This comparator is adapted from MacPAD, by Kevin Ballard. It’s “dumb” in that it does essentially string comparison, in components split by character type.

    See more

    Declaration

    Objective-C

    @interface SUStandardVersionComparator : NSObject <SUVersionComparison>

    Swift

    class SUStandardVersionComparator : NSObject, SUVersionComparison
  • This class represents a response for permission to check updates.

    See more

    Declaration

    Objective-C

    @interface SUUpdatePermissionResponse : NSObject <NSSecureCoding>

    Swift

    class SUUpdatePermissionResponse : NSObject, NSSecureCoding
  • Deprecated

    Deprecated in Sparkle 2. Use SPUStandardUpdaterController instead, or SPUUpdater if you need more control.

    The legacy API in Sparkle for controlling the update mechanism.

    This class is now deprecated and acts as a thin wrapper around SPUUpdater and SPUStandardUserDriver.

    If you are migrating to Sparkle 2, use SPUStandardUpdaterController instead, or SPUUpdater if you need more control.

    See more

    Declaration

    Objective-C

    
    @interface SUUpdater : NSObject

    Swift

    class SUUpdater : NSObject