Add watchdog service AIDL interface to resolve app UIDs.

Car wathdog daemon uses watchdog service to resolve package names
instead of native package manager to resolve package information for
UIDs. To help identify vendor packages, the daemon would initialize
watchdog service with the vendor package prefixes during system bootup.

Watchdog daemon side and service side implementations will be added in
the following CLs.

Update prepareProcessTermination implementation to acquire lock again
while unregistering watchdog service.

Test: Tested with unit tests.
Bug: 167240592
Bug: 170741935

Change-Id: Ia444a36f266a8b1538d5d4a38f8c9b554836b59d
Merged-In: Ia444a36f266a8b1538d5d4a38f8c9b554836b59d
(cherry picked from commit fa72264089cab18bdd430dc21b48a2c13391610f)
diff --git a/cpp/watchdog/server/Android.bp b/cpp/watchdog/server/Android.bp
index e8027bf..c0b1c3b 100644
--- a/cpp/watchdog/server/Android.bp
+++ b/cpp/watchdog/server/Android.bp
@@ -28,6 +28,9 @@
     shared_libs: [
         "android.automotive.watchdog-V3-cpp",
         "android.automotive.watchdog.internal-cpp",
+        "android.automotive.watchdog.internal-unstable-cpp",
+        "android.automotive.watchdog-unstable-cpp",
+        "android.hardware.automotive.vehicle@2.0",
         "libbase",
         "libbinder",
         "liblog",
@@ -115,6 +118,7 @@
         "libgtest",
         "libwatchdog_binder_mediator",
         "libwatchdog_perf_service",
+        "libwatchdog_process_service",
         "libwatchdog_utils",
     ],
 }
@@ -122,7 +126,6 @@
 cc_defaults {
     name: "libwatchdog_process_service_defaults",
     shared_libs: [
-        "android.hardware.automotive.vehicle@2.0",
         "libhidlbase",
     ],
 }
@@ -148,9 +151,7 @@
     srcs: [
         "src/WatchdogBinderMediator.cpp",
         "src/WatchdogInternalHandler.cpp",
-        "src/WatchdogProcessService.cpp",
         "src/WatchdogServiceHelper.cpp",
-        "src/IoPerfCollection.cpp",
     ],
     shared_libs: [
         "libwatchdog_perf_service",