Add more information to AppSearch dumpsys to help debug

This change includes the following:
- Maintain the last n API calls in a queue, and dump the each API calls' summary to dumpsys. The information is fetched from `CallStats` and `OptimizeStats`.
  -`CallStats` includes the high level summary for most APIs other than `checkForOptimize`.
  -`OptimizeStats` includes the detailed stats about `checkForOptimize`.
- Add a device level config to control n by `adb shell device_config put appsearch api_call_stats_limit <n>`.
- Allow AppSearch's dumpsys to dump without an argument. Previously, we have to use `adb shell dumpsys app_search -a` to dump, but now the `-a` argument is default and no longer required.
- A minor change to add package name to `persistToDisk` and include that to the dumpsys result.

Test: See the following sample dumpsys output after setting n to 1000 and reboot, in which the API calls are at the bottom.
https://paste.googleplex.com/6248657669062656

Bug: 271616139
Change-Id: I18894bfaaa267d7c8847fa5149cc08f3bb56e0c7
9 files changed