Package-level declarations

The DetectUpdateTriggerWorker can be used to periodically invoke UpdaterService.detectUpdate of an UpdaterService.

The DownloadHelper can be used to download updates using Android's DownloadManager and to monitor the progress of downloads.

The MavenRepositoryUpdateChecker is a base class for obtaining update information about the latest version of an artifact hosted in a Maven repository.

The PackageInstallerHelper can be used to install APKs using Android's PackageInstaller and monitor the progress of the installation.

The UpdaterServiceBroadcastReceiver can be used to forward broadcast intents to an UpdaterService.

Types

Link copied to clipboard
@IviExperimental(reasons = [])
data class ArtifactUpdateInfo(val artifactVersionInfo: VersionInfo, val artifactUrl: URL, val artifactSize: Long?, val updateFeedId: UpdateFeedId)

The obtained update information about the latest version of an artifact.

Link copied to clipboard
@IviExperimental(reasons = [])
data class DetectUpdateTriggerWorkConfig(val repeatInterval: Duration, val backoffPolicy: BackoffPolicy, val backoffDuration: Duration)

Configuration of DetectUpdateTriggerWorker.

Link copied to clipboard
@IviExperimental(reasons = [])
class DetectUpdateTriggerWorker(context: Context, workerParameters: WorkerParameters) : CoroutineWorker

Worker to invoke UpdaterService.detectUpdate of a service identified by an IviServiceId.

Link copied to clipboard
@IviExperimental(reasons = [])
class DownloadHelper(updateComponentId: UpdateComponentId, context: Context)

Helper class to download an update by using the DownloadManager and monitor the progress of downloads.

Link copied to clipboard
@IviExperimental(reasons = [])
class MavenRepository(baseUrl: URL, repositoryName: String)

Represents a Maven repository.

Link copied to clipboard
@IviExperimental(reasons = [])
abstract class MavenRepositoryUpdateChecker(updateFeedId: UpdateFeedId)

Base class for obtaining update information about the latest version of an artifact hosted in a Maven repository. The information of the latest version (ArtifactUpdateInfo) consists of:

Link copied to clipboard
@IviExperimental(reasons = [])
class MultipleRepositoryAccessor(subRepositoryAccessors: Map<UpdateFeedId, RepositoryAccessor>, fallbackUpdateFeedId: UpdateFeedId = UpdateFeedId.RELEASE) : RepositoryAccessor

A RepositoryAccessor that delegates requests to one of the subRepositoryAccessors based on the UpdateFeedId given to obtainArtifactUpdateInfo or the UpdateFeedId from the ArtifactUpdateInfo.updateFeedId given to createDownloadRequest.

Link copied to clipboard
@IviExperimental(reasons = [])
class PackageInstallerHelper(context: Context)

Helper class to install APKs by using the PackageInstaller.

Link copied to clipboard
@IviExperimental(reasons = [])
interface RepositoryAccessor

Used to obtain the information about the latest version of an artifact and to create the download requests for that artifact.

Link copied to clipboard
@IviExperimental(reasons = [])
data class SignatureHash(val hexString: String)

SHA-256 of a Signature as hex-string.

Link copied to clipboard
@IviExperimental(reasons = [])
data class TrustedArchiveFile

Type-safe reference to an Android archive file that is considered trusted.

Link copied to clipboard

Forwards broadcast intents to an UpdaterService.

Functions