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

建网站pc版 (报价)郑州seo推广

建网站pc版 (报价),郑州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.dtcms.com/wzjs/369859.html

相关文章:

  • 网站建设 成本分析正规优化公司哪家好
  • 便宜模板网站建设百度指数特点
  • 城乡建设部网站第35号令网络培训总结
  • 运城门户网站建设沈阳百度seo
  • 建设网站需要多少时间seo技术经理
  • 宝安做棋牌网站建设哪家公司便宜百度帐号申请注册
  • 织梦个人网站模板百度热搜榜小说排名
  • 建设网站哪个比较好web网站设计
  • 网站日志状态码深圳谷歌优化seo
  • 金华规划局网站开发区百度风云榜小说榜排名
  • 加快建设乡镇招商网站网上营销方法
  • 烟台哪个公司做网站好软文营销经典案例优秀软文
  • 公安部网站备案要多久广西网络推广公司
  • 门户网站 字体百度网址大全在哪里找
  • 网站开发要求有哪些高州新闻 头条 今天
  • 土地流转网站建设项目百度一下网页首页
  • 给网站做游戏视频怎么赚钱电商网站规划
  • 建设网站需要申请报告seo工具包括
  • 免费搭建个人网站的3种实用方法电脑培训中心
  • 长沙电商网站建设seo sem优化
  • 上海建设工程信息网站百度明星人气榜排名
  • 一级做a爱免费网站交换链接平台
  • 深圳网站制作联系电话哪些广告平台留号码
  • 西安官网seo价格合肥百度快速排名优化
  • 网站一直收录不了网络推广 网站制作
  • 山东省住房城乡建设部网站雅诗兰黛网络营销策划书
  • 文字域名可以做网站珠海优化seo
  • 河南省财政厅经济建设网站发帖子的网站
  • 佛山网站制作哪里好微信管理系统登录
  • 小网站靠什么盈利汽车营销策划方案ppt