rk3588 安卓13 暴露相机开关接口

以前不知道有个系统属性可以做,后面的代码我几乎都用系统属性来写,比写个额外的广播接口方便多了。

实现一个相机的开关接口给上层调用,也就是打开后,上层无法再调用相机,关闭后可以正常打开,无需重启,直接贴代码

diff --git a/core/java/android/hardware/Camera.java b/core/java/android/hardware/Camera.java
index f6697134bfa6..eee994271221 100644
--- a/core/java/android/hardware/Camera.java
+++ b/core/java/android/hardware/Camera.java
@@ -51,6 +51,7 @@ import android.util.Log;
 import android.view.Surface;
 import android.view.SurfaceHolder;
 
+import android.os.SystemProperties;//add LQX
 import com.android.internal.R;
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.app.IAppOpsCallback;
@@ -396,6 +397,13 @@ public class Camera {
      * @see android.app.admin.DevicePolicyManager#getCameraDisabled(android.content.ComponentName)
      */
     public static Camera open(int cameraId) {
+
+        // LQX
+        if(SystemProperties.get("persist.sys.disablecamera").equals("true")){
+            Log.d(TAG, "camera sensor is close" + "LQX");
+            return null;
+        }
+        // LQX
         return new Camera(cameraId);
     }
 
@@ -409,6 +417,12 @@ public class Camera {
      * @see #open(int)
      */
     public static Camera open() {
+        //add
+        if(SystemProperties.get("persist.sys.disablecamera").equals("true")){
+            Log.d(TAG, "camera sensor is close" + "LQX");
+            return null;
+        }
+        // end
         int numberOfCameras = getNumberOfCameras();
         CameraInfo cameraInfo = new CameraInfo();
         for (int i = 0; i < numberOfCameras; i++) {
@@ -463,7 +477,12 @@ public class Camera {
         if (halVersion < CAMERA_HAL_API_VERSION_3_0) {
             throw new IllegalArgumentException("Unsupported HAL version " + halVersion);
         }
-
+        // add
+        if(SystemProperties.get("persist.sys.disablecamera").equals("true")){
+            Log.d(TAG, "camera sensor is close" + "LQX");
+            return null;
+        }
+        // end
         return new Camera(cameraId);
     }
 
@@ -532,6 +551,12 @@ public class Camera {
      * @hide
      */
     public static Camera openUninitialized() {
+        // add
+        if(SystemProperties.get("persist.sys.disablecamera").equals("true")){
+            Log.d(TAG, "camera sensor is close" + "LQX");
+            return null;
+        }
+        //end
         return new Camera();
     }
 
diff --git a/core/java/android/hardware/camera2/CameraManager.java b/core/java/android/hardware/camera2/CameraManager.java
index 56592ab43143..d885894dd106 100644
--- a/core/java/android/hardware/camera2/CameraManager.java
+++ b/core/java/android/hardware/camera2/CameraManager.java
@@ -720,6 +720,13 @@ public final class CameraManager {
             final int oomScoreOffset) throws CameraAccessException {
         CameraCharacteristics characteristics = getCameraCharacteristics(cameraId);
         CameraDevice device = null;
+        //add
+        if(SystemProperties.get("persist.sys.disablecamera").equals("true")){
+            Log.d(TAG, "camera2 sensor is close" + "LQX");
+
+            return null;
+        }
+        // end
         Map<String, CameraCharacteristics> physicalIdsToChars =
                 getPhysicalIdToCharsMap(characteristics);
         synchronized (mLock) {

相关推荐

  1. rk3588 13 暴露相机开关接口

    2024-05-11 09:22:03       9 阅读
  2. rk3588 13 应用安装黑名单的接口

    2024-05-11 09:22:03       20 阅读
  3. 11系统RK3568 代码控制OTA

    2024-05-11 09:22:03       32 阅读
  4. rk3568 11 修改android id

    2024-05-11 09:22:03       8 阅读
  5. rk3568 11双屏异显,隐藏副屏的导航栏

    2024-05-11 09:22:03       32 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-11 09:22:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-11 09:22:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-11 09:22:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-11 09:22:03       18 阅读

热门阅读

  1. 通配符&&正则表达式(RegEXP)

    2024-05-11 09:22:03       7 阅读
  2. 正则表达式高级用法

    2024-05-11 09:22:03       11 阅读
  3. nginx_01

    nginx_01

    2024-05-11 09:22:03      8 阅读
  4. 处理HTTP请求的服务器

    2024-05-11 09:22:03       6 阅读
  5. mysql数据库配置(my.ini|my.cnf)文件参数详细介绍

    2024-05-11 09:22:03       10 阅读
  6. Unity编辑器扩展

    2024-05-11 09:22:03       8 阅读
  7. 设计模式——状态模式(State)

    2024-05-11 09:22:03       10 阅读
  8. k8s脚本安装Kafka-3.4.0版本 +Zookeeper部署

    2024-05-11 09:22:03       8 阅读
  9. electron 中拦截内嵌页面 beforeunload 的弹窗提示

    2024-05-11 09:22:03       11 阅读