Bug: 111264136

Clone this repo:
  1. b207d11 DO NOT MERGE - Merge pie-platform-release (PPRL.190705.004) into master by Xin Li · 6 weeks ago master
  2. 36f5d61 Snap for 5622519 from 9a7aec451295cee84ef7682dd1328c2e063edc70 to pi-platform-release by android-build-team Robot · 6 weeks ago pie-platform-release
  3. 142b62e Snap for 5600800 from 9984a790a0c9f316df28b0c826bc90003d60061f to pi-platform-release by android-build-team Robot · 6 weeks ago
  4. a1f29a7 Remove byi from OWNERS file by Bill Yi · 2 months ago
  5. 1aaeb70 Match src paths with aidl package name by Dan Willemsen · 2 months ago

Android components for Nugget

Android communicates with Nugget apps in order to implement security related HALs. Currently, those HALs are Keymaster, Weaver and OemLock.


Apps that define a protobuf service will have an app interface class autogenerated. These classes will wrap a NuggetClient. The generator can be found in the generator directory.

Asynchronous communication

Work in progress.

Currently, everything is synchronous and just exposes the call_application() function from the Nugget transport API. In future, asynchronous calls may be desired. Support for this could be added in:

  • Nugget transport API
  • NuggetClient on top of call_application()
  • Generated services


This directory contains the components to support Citadel connected to Android.