mirror of
https://github.com/greenart7c3/Amber.git
synced 2026-10-05 19:08:23 +00:00
Introduce an ISignerService AIDL bound-service interface so external apps can sign, encrypt/decrypt, sign PSBTs, and ping the signer over a direct binder connection instead of issuing content:// ContentProvider queries. The per-operation logic (permission lookups, history recording, error logging, NIP-42 relay whitelist handling, encrypted-data classification) is extracted into a shared SignerCore object so the ContentProvider and the new SignerService stay in sync. SignerProvider is refactored to delegate to SignerCore and map results to its existing cursor columns (PING keeps its legacy two-column shape for backwards compatibility). The service returns a Bundle mirroring the legacy cursor columns (rejected / signature / event / result); a null return signals an error, matching the ContentProvider's null-cursor behaviour. AIDL builds are enabled via the aidl build feature.