electron updater.Class.AppUpdater
Electron-Builder / electron-updater / AppUpdater
Extends¶
TypedEmitter<AppUpdaterEvents,this>
Extended by¶
Constructors¶
new AppUpdater()¶
protectednew AppUpdater(options,app?):AppUpdater
Parameters¶
• options: undefined | null | AllPublishOptions
• app?: AppAdapter
Returns¶
Overrides¶
(EventEmitter as new () => TypedEmitter<AppUpdaterEvents>).constructor
Properties¶
_logger¶
protected_logger:Logger=console
allowDowngrade¶
allowDowngrade:
boolean=false
Whether to allow version downgrade (when a user from the beta channel wants to go back to the stable channel).
Taken in account only if channel differs (pre-release version component in terms of semantic versioning).
Default¶
false
allowPrerelease¶
allowPrerelease:
boolean=false
GitHub provider only. Whether to allow update to pre-release versions. Defaults to true if application version contains prerelease components (e.g. 0.12.1-alpha.1, here alpha is a prerelease component), otherwise false.
If true, downgrade will be allowed (allowDowngrade will be set to true).
app¶
protectedreadonlyapp:AppAdapter
autoDownload¶
autoDownload:
boolean=true
Whether to automatically download an update when it is found.
autoInstallOnAppQuit¶
autoInstallOnAppQuit:
boolean=true
Whether to automatically install a downloaded update on app quit (if quitAndInstall was not called before).
autoRunAppAfterInstall¶
autoRunAppAfterInstall:
boolean=true
windows-only Whether to run the app after finish install when run the installer NOT in silent mode.
Default¶
true
currentVersion¶
readonlycurrentVersion:SemVer
The current application version.
disableDifferentialDownload¶
disableDifferentialDownload:
boolean=false
NSIS only Disable differential downloads and always perform full download of installer.
Default¶
false
disableWebInstaller¶
disableWebInstaller:
boolean=false
Web installer files might not have signature verification, this switch prevents to load them unless it is needed.
Currently false to prevent breaking the current API, but it should be changed to default true at some point that breaking changes are allowed.
Default¶
false
downloadedUpdateHelper¶
protecteddownloadedUpdateHelper:null|DownloadedUpdateHelper=null
forceDevUpdateConfig¶
forceDevUpdateConfig:
boolean=false
Allows developer to force the updater to work in “dev” mode, looking for “dev-app-update.yml” instead of “app-update.yml”
Dev: path.join(this.app.getAppPath(), "dev-app-update.yml")
Prod: path.join(process.resourcesPath!, "app-update.yml")
Default¶
false
fullChangelog¶
fullChangelog:
boolean=false
GitHub provider only. Get all release notes (from current version to latest), not just the latest.
Default¶
false
requestHeaders¶
requestHeaders:
null|OutgoingHttpHeaders=null
The request headers.
signals¶
readonlysignals:UpdaterSignal
For type safety you can use signals, e.g. autoUpdater.signals.updateDownloaded(() => {}) instead of autoUpdater.on('update-available', () => {})
stagingUserIdPromise¶
protectedreadonlystagingUserIdPromise:Lazy<string>
updateInfoAndProvider¶
protectedupdateInfoAndProvider:null|UpdateInfoAndProvider=null
Accessors¶
channel¶
getchannel():null|string
Get the update channel. Doesn’t return channel from the update configuration, only if was previously set.
setchannel(value):void
Set the update channel. Overrides channel in the update configuration.
allowDowngrade will be automatically set to true. If this behavior is not suitable for you, simple set allowDowngrade explicitly after.
Parameters¶
• value: null | string
Returns¶
null | string
logger¶
getlogger():null|Logger
The logger. You can pass electron-log, winston or another logger with the following interface: { info(), warn(), error() }.
Set it to null if you would like to disable a logging feature.
setlogger(value):void
Parameters¶
• value: null | Logger
Returns¶
null | Logger
netSession¶
getnetSession():Session
Returns¶
Session
Methods¶
addAuthHeader()¶
addAuthHeader(
token):void
Shortcut for explicitly adding auth tokens to request headers
Parameters¶
• token: string
Returns¶
void
checkForUpdates()¶
checkForUpdates():
Promise<null|UpdateCheckResult>
Asks the server whether there is an update.
Returns¶
Promise<null | UpdateCheckResult>
checkForUpdatesAndNotify()¶
checkForUpdatesAndNotify(
downloadNotification?):Promise<null|UpdateCheckResult>
Parameters¶
• downloadNotification?: DownloadNotification
Returns¶
Promise<null | UpdateCheckResult>
differentialDownloadInstaller()¶
protecteddifferentialDownloadInstaller(fileInfo,downloadUpdateOptions,installerPath,provider,oldInstallerFileName):Promise<boolean>
Parameters¶
• fileInfo: ResolvedUpdateFileInfo
• downloadUpdateOptions: DownloadUpdateOptions
• installerPath: string
• provider: Provider<any>
• oldInstallerFileName: string
Returns¶
Promise<boolean>
dispatchError()¶
protecteddispatchError(e):void
Parameters¶
• e: Error
Returns¶
void
dispatchUpdateDownloaded()¶
protecteddispatchUpdateDownloaded(event):void
Parameters¶
• event: UpdateDownloadedEvent
Returns¶
void
doDownloadUpdate()¶
abstractprotecteddoDownloadUpdate(downloadUpdateOptions):Promise<string[]>
Parameters¶
• downloadUpdateOptions: DownloadUpdateOptions
Returns¶
Promise<string[]>
downloadUpdate()¶
downloadUpdate(
cancellationToken):Promise<string[]>
Start downloading update manually. You can use this method if autoDownload option is set to false.
Parameters¶
• cancellationToken: CancellationToken = ...
Returns¶
Promise<string[]>
Paths to downloaded files.
executeDownload()¶
protectedexecuteDownload(taskOptions):Promise<string[]>
Parameters¶
• taskOptions: DownloadExecutorTask
Returns¶
Promise<string[]>
getFeedURL()¶
getFeedURL():
undefined|null|string
Returns¶
undefined | null | string
getUpdateInfoAndProvider()¶
protectedgetUpdateInfoAndProvider():Promise<UpdateInfoAndProvider>
Returns¶
Promise<UpdateInfoAndProvider>
isUpdaterActive()¶
isUpdaterActive():
boolean
Returns¶
boolean
onUpdateAvailable()¶
protectedonUpdateAvailable(updateInfo):void
Parameters¶
• updateInfo: UpdateInfo
Returns¶
void
quitAndInstall()¶
abstractquitAndInstall(isSilent?,isForceRunAfter?):void
Restarts the app and installs the update after it has been downloaded.
It should only be called after update-downloaded has been emitted.
Note: autoUpdater.quitAndInstall() will close all application windows first and only emit before-quit event on app after that.
This is different from the normal quit event sequence.
Parameters¶
• isSilent?: boolean
windows-only Runs the installer in silent mode. Defaults to false.
• isForceRunAfter?: boolean
Run the app after finish even on silent install. Not applicable for macOS.
Ignored if isSilent is set to false(In this case you can still set autoRunAppAfterInstall to false to prevent run the app after finish).
Returns¶
void
setFeedURL()¶
setFeedURL(
options):void
Configure update provider. If value is string, GenericServerOptions will be set with value as url.
Parameters¶
• options: PublishConfiguration | AllPublishOptions
If you want to override configuration in the app-update.yml.
Returns¶
void