Camera: add camera audio restriction binder call
Also add the API to AppOpsManager
Test: new CTS tests
Bug: 135676184
Change-Id: I8bcdd34a4b6bb0fba5151677db38f8c35b7ae97e
diff --git a/libs/binder/include/binder/AppOpsManager.h b/libs/binder/include/binder/AppOpsManager.h
index 7a99396..dff4d49 100644
--- a/libs/binder/include/binder/AppOpsManager.h
+++ b/libs/binder/include/binder/AppOpsManager.h
@@ -144,9 +144,11 @@
const sp<IAppOpsCallback>& callback);
void stopWatchingMode(const sp<IAppOpsCallback>& callback);
int32_t permissionToOpCode(const String16& permission);
+ void setCameraAudioRestriction(int32_t mode);
#endif // __ANDROID_VNDK__
void noteAsyncOp(const String16& callingPackageName, int32_t uid, const String16& packageName,
int32_t opCode, const String16& message);
+
private:
Mutex mLock;
sp<IAppOpsService> mService;
diff --git a/libs/binder/include/binder/IAppOpsService.h b/libs/binder/include/binder/IAppOpsService.h
index 9d02370..009ef6c 100644
--- a/libs/binder/include/binder/IAppOpsService.h
+++ b/libs/binder/include/binder/IAppOpsService.h
@@ -46,6 +46,7 @@
virtual int32_t permissionToOpCode(const String16& permission) = 0;
virtual int32_t checkAudioOperation(int32_t code, int32_t usage,int32_t uid,
const String16& packageName) = 0;
+ virtual void setCameraAudioRestriction(int32_t mode) = 0;
#endif // __ANDROID_VNDK__
virtual void noteAsyncOp(const String16& callingPackageName, int32_t uid,
const String16& packageName, int32_t opCode, const String16& message) = 0;
@@ -65,6 +66,10 @@
#endif // __ANDROID_VNDK__
NOTE_ASYNC_OP_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION+9,
SHOULD_COLLECT_NOTES_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION+10,
+#ifndef __ANDROID_VNDK__
+ SET_CAMERA_AUDIO_RESTRICTION_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION+11,
+#endif // __ANDROID_VNDK__
+
};
enum {