Add temp docs

This commit is contained in:
oxmc
2025-08-21 01:23:18 -07:00
parent d46007da52
commit df7b2e4bb0

View File

@@ -1,2 +1,52 @@
# app_ConfigProvisioner
# Config Provisioner
## Overview
Config Provisioner is an Android system service and broadcast receiver designed to automate device provisioning based on vendor-specific configuration. On device boot, it checks for a vendor configuration file (`/vendor/etc/config_provisioner/vendor.cfg`). If provisioning is enabled and a valid APK URL is provided, it downloads and installs a configuration APK, then configures the device setup wizard according to vendor preferences.
### Key Features
- Runs automatically on boot (including locked boot)
- Checks for vendor configuration file
- Downloads and installs a configuration APK if required
- Configures Android Setup Wizard (enables/disables, marks setup complete)
- Persists provisioning state to avoid repeated runs
## Vendor Configuration File Format
The vendor configuration file is located at `/vendor/etc/config_provisioner/vendor.cfg`. It is a simple key-value file with one setting per line. Lines starting with `#` are comments and ignored.
### Supported Keys
- `enable_setup_wizard` (boolean: `true`/`false`/`1`/`0`)
- Enables or disables the Android Setup Wizard after provisioning.
- `enable_provisioning` (boolean: `true`/`false`/`1`/`0`)
- Enables or disables the provisioning process.
- `vendor_id` (string)
- Identifier for the vendor/device.
- `network_timeout` (integer, milliseconds)
- Timeout for network operations (e.g., APK download).
- `config_apk_url` (string, URL)
- URL to the configuration APK to be downloaded and installed.
### Example
```
# Vendor configuration for Config Provisioner
enable_setup_wizard=false
enable_provisioning=true
vendor_id=acme_corp
network_timeout=30000
config_apk_url=https://example.com/config/acme_config.apk
```
## Default Values
If a key is missing, the following defaults are used:
- `enable_setup_wizard`: true
- `enable_provisioning`: true
- `network_timeout`: 30000
- `config_apk_url`: https://default.example.com/config.apk
## Logging & Debugging
The service logs all configuration values and provisioning steps to logcat under the tags `ConfigProvisioner` and `VendorConfig`.
## Permissions
The app requires system-level permissions to install packages, access network state, receive boot events, and modify setup wizard state.
## License