diff options
author | 2024-12-12 11:30:29 -0800 | |
---|---|---|
committer | 2024-12-17 18:48:55 -0800 | |
commit | eb7603da9940548aae9b27be237962f303a6f55b (patch) | |
tree | b0e67604295b7a5786a4c57ab7f7afe7b061a59d /libs/androidfw/LocaleDataTables.cpp | |
parent | 98696ca21646a1c9e2db7ff26be058170501ab24 (diff) |
Revert "Revert "Batch noteOperation binder calls in the client t..."
The binder API AppOpsService#noteOperation has significant high call volume. One of the reasons is the clients are often making burst calls like 2k ~ 3k/second. This CL adds a buffer on the client side that aggregates same noteOp calls within a second and sends aggregated count asynchrnously to the system service. On the client side, it also uses op mode cache introduced in ag/29819090 to return op mode.
Note: This CL doesn't change current contract of onNotedOp callback. Client will still receive a callback for every noteOp call, including self, sync, async callback. To reduce the async callback spam, there is another flag that controls whether we can reduce the number of callbacks to 1.
Flag: android.permission.flags.note_op_batching_enabled
Flag: android.permission.flags.rate_limit_batched_note_op_async_callbacks_enabled
Bug: 366013082
Test: atest AppOpsLoggingTest
Change-Id: I182dd073aaa4fb4e23539e848846f6193728dd1e
Diffstat (limited to 'libs/androidfw/LocaleDataTables.cpp')
0 files changed, 0 insertions, 0 deletions