Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6c926bf7 authored by Evan Severson's avatar Evan Severson Committed by Android (Google) Code Review
Browse files

Merge "Update mic/camera toggles api" into sc-dev

parents 6fea7f00 671806e1
Loading
Loading
Loading
Loading
+1 −23
Original line number Diff line number Diff line
@@ -29,7 +29,6 @@
#include <inttypes.h>
#include <pthread.h>

#include <android/content/pm/IPackageManagerNative.h>
#include <android/hardware/ICamera.h>
#include <android/hardware/ICameraClient.h>

@@ -3441,28 +3440,7 @@ void CameraService::SensorPrivacyPolicy::binderDied(const wp<IBinder>& /*who*/)
}

bool CameraService::SensorPrivacyPolicy::hasCameraPrivacyFeature() {
    if (!mNeedToCheckCameraPrivacyFeature) {
        return mHasCameraPrivacyFeature;
    }
    bool hasCameraPrivacyFeature = false;
    sp<IBinder> binder = defaultServiceManager()->getService(String16("package_native"));
    if (binder != nullptr) {
        sp<content::pm::IPackageManagerNative> packageManager =
                interface_cast<content::pm::IPackageManagerNative>(binder);
        if (packageManager != nullptr) {
            binder::Status status = packageManager->hasSystemFeature(
                    String16("android.hardware.camera.toggle"), 0, &hasCameraPrivacyFeature);

            if (status.isOk()) {
                mNeedToCheckCameraPrivacyFeature = false;
                mHasCameraPrivacyFeature = hasCameraPrivacyFeature;
            } else {
                ALOGE("Unable to check if camera privacy feature is supported");
            }
        }
    }

    return hasCameraPrivacyFeature;
    return mSpm.supportsSensorToggle(SensorPrivacyManager::INDIVIDUAL_SENSOR_CAMERA);
}

// ----------------------------------------------------------------------------
+1 −4
Original line number Diff line number Diff line
@@ -676,8 +676,7 @@ private:
            public virtual IBinder::DeathRecipient {
        public:
            explicit SensorPrivacyPolicy(wp<CameraService> service)
                    : mService(service), mSensorPrivacyEnabled(false), mRegistered(false),
                    mHasCameraPrivacyFeature(false), mNeedToCheckCameraPrivacyFeature(true) {}
                    : mService(service), mSensorPrivacyEnabled(false), mRegistered(false) {}

            void registerSelf();
            void unregisterSelf();
@@ -696,8 +695,6 @@ private:
            Mutex mSensorPrivacyLock;
            bool mSensorPrivacyEnabled;
            bool mRegistered;
            bool mHasCameraPrivacyFeature;
            bool mNeedToCheckCameraPrivacyFeature;

            bool hasCameraPrivacyFeature();
    };