installWalletKeysFromAssets

fun installWalletKeysFromAssets(assetDir: String = WALLET_ASSET_DIR, overwrite: Boolean = false): Boolean

Install the protocol-level wallet keys (zswap/dust/BLS) from the APK's bundled assets — the offline-bundle counterpart to the S3 downloadWalletKeys.

The wallet keys are version-pinned and shared across all dApps. Historically they were fetched from a dev S3 bucket at first launch, which blocked the wallet on flaky networks. When the dApp's build bundles them under assets/[assetDir] (the contract Gradle plugin stages them there), this copies them onto device storage once and the device never touches the network. ensureWalletKeysAvailable prefers this path and only falls back to S3 when the bundle is absent.

Same content-aware machinery as installCircuitKeysFromAssets: the apkStamp gates a cheap hot path, and a stamp change re-verifies each key by SHA-256 so a recompiled/version-bumped key set is picked up.

Layout under assets/[assetDir] mirrors WALLET_KEY_FILESzswap/…, dust/…, and the flat bls_midnight_2p* params.

Return

true if the bundle was present and hasWalletKeys is now satisfied; false if the keys aren't bundled (or the bundle is incomplete) — the caller should then fall back to downloadWalletKeys.