- AIDL: android.os.Bundle cannot be imported by a structured aidl_interface (the -N include path has no framework types); requestComponentUpdate now takes a structured pawletos.bgupd.UpdateParams parcelable instead. - webview: map ABI strings to the catalog's short arch keys (arm64-v8a -> arm64); package_name/signature_sha256 are optional in the catalog (e.g. chromite) — parse them as nullable and refuse to install without them. - Only run manifest entries the APK pipeline owns (webview); the hardware entry is handled by the new HardwareUpdateExecutor. - hardware/: firmware-update daemon per the PawletOS update-server protocol. Image-local supported_hardware.json (ro.pawlet.hardware.manifest) is the authoritative allowlist; mode=hardware&target=update checks send optional identity params only when known; eligibility chain fails closed at every step (manifest allowlist -> revision -> handler authorization -> size + SHA-256). FirmwareInstallerRegistry ships empty so nothing installs until real handlers land. Detected hardware comes from the SetupWizard-written /data/pawlet/detected_hardware.json (schema in DetectedHardwareStore); bg-upd does no probing itself. - db v2: hardware_state table; upgrades are now additive instead of drop-and-recreate.
15 lines
400 B
Plaintext
15 lines
400 B
Plaintext
/*
|
|
* SPDX-FileCopyrightText: oxmc / PawletOS
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
package pawletos.bgupd;
|
|
|
|
/**
|
|
* Options for a user-triggered component update. A structured parcelable
|
|
* rather than a Bundle: android.os.Bundle is not usable from a structured
|
|
* aidl_interface module, and this stays extensible by adding fields.
|
|
*/
|
|
parcelable UpdateParams {
|
|
@nullable String provider;
|
|
}
|