当前位置: 首页 > news >正文

龙之向导外贸惠州短视频seo

龙之向导外贸,惠州短视频seo,汕头人事考试网,做外贸网站客服安卓6.0中使用usb摄像头,发现当系统启动完成后再接入usb摄像头,此种情况下,无法使用系统相机进行预览,只有接入usb摄像头后再启动整机才可以使用系统相机进行预览,于是把修改过程保留 diff --git a/android/framework…

安卓6.0中使用usb摄像头,发现当系统启动完成后再接入usb摄像头,此种情况下,无法使用系统相机进行预览,只有接入usb摄像头后再启动整机才可以使用系统相机进行预览,于是把修改过程保留

diff --git a/android/frameworks/av/services/camera/libcameraservice/CameraService.cpp b/android/frameworks/av/services/camera/libcameraservice/CameraService.cpp
index 7c4594fa4b..8901ebe55a 100644
--- a/android/frameworks/av/services/camera/libcameraservice/CameraService.cpp
+++ b/android/frameworks/av/services/camera/libcameraservice/CameraService.cpp
@@ -413,10 +413,24 @@ int32_t CameraService::getNumberOfCameras() {int32_t CameraService::getNumberOfCameras(int type) {ATRACE_CALL();
+    bool hasFirstRef = false;
+    char value[PROPERTY_VALUE_MAX];switch (type) {case CAMERA_TYPE_BACKWARD_COMPATIBLE:
+           ALOGD("getNumberOfCamerasgetNumberOfCameras CAMERA_TYPE_BACKWARD_COMPATIBLE=%d",mNumberOfNormalCameras);
+           if(0 == mNumberOfNormalCameras) {
+                ALOGE("No camera be found ! check again...");
+                onFirstRef();
+                hasFirstRef = true;
+            }
+           property_get("persist.sys.usbcamera.status", value, "");
+           if( (strcmp(value, "add") == 0) || (strcmp(value, "remove") == 0) ) {
+               ALOGD("update camera for usb action");
+               if(!hasFirstRef) onFirstRef();
+           }return mNumberOfNormalCameras;case CAMERA_TYPE_ALL:
+           ALOGD("getNumberOfCamerasgetNumberOfCameras CAMERA_TYPE_ALL");return mNumberOfCameras;default:ALOGW("%s: Unknown camera type %d, returning 0",
diff --git a/android/frameworks/base/services/usb/java/com/android/server/usb/UsbHostManager.java b/android/frameworks/base/services/usb/java/com/android/server/usb/UsbHostManager.java
index 965341e418..6db85c6212 100644
--- a/android/frameworks/base/services/usb/java/com/android/server/usb/UsbHostManager.java
+++ b/android/frameworks/base/services/usb/java/com/android/server/usb/UsbHostManager.java
@@ -33,6 +33,8 @@ import java.io.FileDescriptor;import java.io.PrintWriter;import java.util.ArrayList;import java.util.HashMap;
+import android.os.SystemClock;
+import android.os.SystemProperties;/*** UsbHostManager manages USB state in host mode.
@@ -62,6 +64,9 @@ public class UsbHostManager {@GuardedBy("mLock")private UsbSettingsManager mCurrentSettings;
+    private long mLastUsbEvent = 0;
+    private String mLastUsbAction = "";
+public UsbHostManager(Context context, UsbAlsaManager alsaManager) {mContext = context;
@@ -224,6 +229,7 @@ public class UsbHostManager {Slog.d(TAG, "Added device " + mNewDevice);getCurrentSettings().deviceAttached(mNewDevice);mUsbAlsaManager.usbDeviceAdded(mNewDevice);
+               checkUsbCameraStatus(mNewDevice, true);} else {Slog.e(TAG, "mNewDevice is null in endUsbDeviceAdded");}
@@ -243,6 +249,36 @@ public class UsbHostManager {if (device != null) {mUsbAlsaManager.usbDeviceRemoved(device);getCurrentSettings().deviceDetached(device);
+               checkUsbCameraStatus(device, false);
+            }
+        }
+    }
+
+    private void checkUsbCameraStatus(UsbDevice device, boolean added) {
+        if (device != null) {
+            String devicename = device.getDeviceName();
+            String productname = device.getProductName();
+            if ((devicename != null && devicename.toLowerCase().contains("cam")) ||
+                   (productname != null && productname.toLowerCase().contains("cam")) ) {
+                try {
+                    if (mLastUsbAction != null && mLastUsbAction.equals(added? "add" : "remove") && SystemClock.uptimeMillis() - mLastUsbEvent < 1200) {
+                        Slog.i(TAG, "USB HOST EVENT send double, ignore this!");
+                        return;
+                    }
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                mLastUsbAction = added? "add" : "remove";
+                mLastUsbEvent = SystemClock.uptimeMillis();
+               if (!added){
+                   Slog.d(TAG,"usb camera removed");
+                   SystemProperties.set("persist.sys.usbcamera.status","remove");
+               } else {
+                   Slog.d(TAG,"usb camera added");
+                   SystemProperties.set("persist.sys.usbcamera.status","add");
+               }
+                int num = android.hardware.Camera.getNumberOfCameras();
+               SystemProperties.set("persist.sys.usbcamera.status","");}}}
http://www.hkea.cn/news/338808/

相关文章:

  • 分布式网站开发网络销售平台排名
  • 网站建设模板购买品牌seo培训
  • 深圳网站建设 cms网站推广交换链接
  • 标准物质网站建设5118站长工具箱
  • 做一个能注册用户的网站网络推广费用大概价格
  • 网站建设评价东莞谷歌推广
  • php网站后台进不去百度推广入口官网
  • 个人网站一键生成免费推广网站有哪些
  • 厦门做网站设计电商seo优化
  • wordpress视频点播seo技术是干什么的
  • 网站推广是怎么做的网络营销专业如何
  • 平面设计线上兼职上海网站seo
  • 个性化网站定制价格今日热点
  • 做网站的艰辛免费个人网站申请
  • 网站改版需要多久网站设计与制作毕业论文范文
  • 深圳横岗网站建设网站建设的推广渠道
  • 有没有什么网站免费做名片2023年新闻小学生摘抄
  • 新网金商网站外链查询工具
  • 网站建设的进度竞价托管选择微竞价
  • 网站快速网站推广怎么做一个公司网站
  • 旅游网站模板htmlseo品牌优化整站优化
  • 方圆网站建设aso优化重要吗
  • 做购实惠网站的意义好用的搜索引擎有哪些
  • 怎么把自己笔记本做服务器做个网站搭建网站基本步骤
  • jeecms做企业网站成都网站建设公司排名
  • 沈阳招聘网站开发地推项目平台
  • 798艺术区成都seo达人
  • 平度网站建设抖音代运营收费详细价格
  • 株洲网站优化找哪家seo优化的价格
  • 找印度人做网站sem竞价推广公司