CameraService: Pass package name / attributionTag in AttributionSource
In addition to the uid/pid/deviceId, pass the package name and
attributionTag parameters to connect/connectDevice through
the clientAttribution argument.
Test: atest CtsCameraTestCases
Test: Smoke test GCA
Bug: 343965468
Bug: 190657833
Flag: EXEMPT Strict mechanical refactor
Change-Id: I08743c168486fa4f95398142b071851f8c6de9a9
diff --git a/camera/ndk/impl/ACameraManager.cpp b/camera/ndk/impl/ACameraManager.cpp
index 6caaa94..c3bec0a 100644
--- a/camera/ndk/impl/ACameraManager.cpp
+++ b/camera/ndk/impl/ACameraManager.cpp
@@ -871,11 +871,13 @@
clientAttribution.uid = hardware::ICameraService::USE_CALLING_UID;
clientAttribution.pid = hardware::ICameraService::USE_CALLING_PID;
clientAttribution.deviceId = mDeviceContext.deviceId;
+ clientAttribution.packageName = "";
+ clientAttribution.attributionTag = std::nullopt;
// No way to get package name from native.
// Send a zero length package name and let camera service figure it out from UID
binder::Status serviceRet = cs->connectDevice(
- callbacks, cameraId, "", {}, /*oomScoreOffset*/0,
+ callbacks, cameraId, /*oomScoreOffset*/0,
targetSdkVersion, /*rotationOverride*/hardware::ICameraService::ROTATION_OVERRIDE_NONE,
clientAttribution, static_cast<int32_t>(mDeviceContext.policy),
/*out*/&deviceRemote);