中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

青島網(wǎng)站排名上海百網(wǎng)優(yōu)seo優(yōu)化公司

青島網(wǎng)站排名,上海百網(wǎng)優(yōu)seo優(yōu)化公司,淘寶上做網(wǎng)站的靠譜,黑龍江省建設(shè)信息網(wǎng)安卓6.0中使用usb攝像頭,發(fā)現(xiàn)當系統(tǒng)啟動完成后再接入usb攝像頭,此種情況下,無法使用系統(tǒng)相機進行預(yù)覽,只有接入usb攝像頭后再啟動整機才可以使用系統(tǒng)相機進行預(yù)覽,于是把修改過程保留 diff --git a/android/framework…

安卓6.0中使用usb攝像頭,發(fā)現(xiàn)當系統(tǒng)啟動完成后再接入usb攝像頭,此種情況下,無法使用系統(tǒng)相機進行預(yù)覽,只有接入usb攝像頭后再啟動整機才可以使用系統(tǒng)相機進行預(yù)覽,于是把修改過程保留

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.risenshineclean.com/news/2919.html

相關(guān)文章:

  • 網(wǎng)站后臺傳照片 c windows temp 拒絕訪問無錫百度信息流
  • 做現(xiàn)貨黃金網(wǎng)站體育熱點新聞
  • 網(wǎng)站圖片優(yōu)化怎么推廣自己的店鋪
  • wordpress最新版下載2022網(wǎng)站seo
  • 鄭州企業(yè)網(wǎng)站價格百度廣告搜索推廣
  • 做網(wǎng)站需要幾個服務(wù)器網(wǎng)絡(luò)營銷自學(xué)網(wǎng)站
  • 優(yōu)化的網(wǎng)站做域名跳轉(zhuǎn)最新經(jīng)濟新聞
  • 英山縣住房和城鄉(xiāng)建設(shè)局網(wǎng)站搜索推廣開戶
  • wordpress分類目錄下文章過多_添加文章目錄導(dǎo)航關(guān)鍵詞優(yōu)化排名軟件s
  • 網(wǎng)站關(guān)鍵詞在哪里設(shè)置給公司做網(wǎng)站要多少錢
  • 用ih5做微網(wǎng)站平臺推廣費用
  • 微網(wǎng)站制作價格頁面設(shè)計
  • 手機網(wǎng)站開發(fā)平臺互聯(lián)網(wǎng)營銷怎么賺錢
  • 徐州中小企業(yè)網(wǎng)站制作中國局勢最新消息今天
  • 馬鞍山網(wǎng)站建設(shè) 明達百度收錄網(wǎng)站鏈接入口
  • 自己做的網(wǎng)站算廣告嗎公司網(wǎng)站域名續(xù)費一年多少錢
  • 做美工哪個網(wǎng)站靠譜開封網(wǎng)站優(yōu)化公司
  • 網(wǎng)站網(wǎng)頁優(yōu)化怎么做上海推廣系統(tǒng)
  • 2018年做網(wǎng)站賺錢嗎百度一下首頁網(wǎng)頁百度
  • 南陽市網(wǎng)站建設(shè)今天特大新聞最新消息
  • 郴州網(wǎng)站建設(shè)服務(wù)騰訊企點注冊
  • 企業(yè)郵箱怎么找seo實訓(xùn)報告
  • 做網(wǎng)站時分類標題和分類描述搜索引擎排名谷歌
  • 網(wǎng)站怎樣做鏈接微信怎么推廣
  • 個人怎么做課程網(wǎng)站seo權(quán)重是什么意思
  • 合肥做網(wǎng)站域名的公司怎么制作小程序
  • 鄂州手機網(wǎng)站建設(shè)百度收錄軟件
  • wordpress 寫php頁面跳轉(zhuǎn)seo代碼優(yōu)化包括哪些
  • 廣州做網(wǎng)站 漢獅網(wǎng)絡(luò)抖音seo源碼搭建
  • 肇慶企業(yè)網(wǎng)站關(guān)鍵詞優(yōu)化教程哪里有網(wǎng)頁設(shè)計公司