commit | a01f479ef076d104d191e2fd985eaa6437abda14 | [log] [tgz] |
---|---|---|
author | Steven Moreland <smoreland@google.com> | Tue Apr 18 16:28:47 2023 +0000 |
committer | Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> | Wed Apr 19 21:08:09 2023 +0000 |
tree | 7455c097f3ca9f69e83c5cb6a6cd450e326dc960 | |
parent | 2c596b002883265dae2b51caf87e83a087d400a0 [diff] |
AIDL: restrict visibility of internals Using these APIs would freeze the internal structure of the AIDL compiler, which would restrict development here and is strictly not required to do anything. It's always possible not to do this and use the other surfaces AIDL maintains instead. The API surfaces that AIDL maintains are: - (squishy) the .aidl files themselves - (squishy) the backend generated runtime APIs - (absolute) backcompat over the wire for stable AIDL interfaces, or for unchanged AIDL interfaces The first two there are listed as 'squishy'. It means that these can be changed without breaking any real Android systems (only requiring client code to be updated). We typically do keep these constant, but in some cases, especially where there are few known clients, we can make minor changes. One example (perhaps the most extreme example I can recall) of this was switching unique_fd to be an rr-value in the C++ backend for performance reasons. Bug: N/A Test: N/A Change-Id: I94f218cbd5b7fbeb3dc1c487ccf3b3e9697d2854
Documentation for this project is currently maintained here:
https://source.android.com/devices/architecture/aidl/overview