2013-02-13 34 views
0

我已將相機集成到了我的應用程序中。當我在模擬器上運行時,下面的代碼工作正常,並且我在ADB中選擇了攝像頭作爲我的攝像頭。但是當我在像Nexus 7這樣的實際設備上運行時,我的應用程序無法檢測到相機。相機在這款平板電腦上獨立工作,但不在我的應用程序中。相機無法在實際設備上工作

CameraActivity.java

//I've imported hardware camera class 
    import android.hardware.Camera; 
    import android.hardware.Camera.CameraInfo; 

    // Some activity code 
    if (!getPackageManager(). 
     hasSystemFeature(PackageManager.FEATURE_CAMERA)) { // Issue is coming from here. 
     Toast.makeText(this, "No camera on this device", Toast.LENGTH_LONG) 
      .show(); 
    } else { 
     cameraId = findFrontFacingCamera(); 
     if (cameraId < 0) { 
     Toast.makeText(this, "No front facing camera found.", 
      Toast.LENGTH_LONG).show(); 
     } else { 
     camera = Camera.open(cameraId); 
     } 
    } 

Mainfest.xml

<uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.CAMERA"/> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" > 
    </uses-permission> 

    <uses-feature android:name="android.hardware.camera" /> 
    <uses-feature android:name="android.hardware.camera.autofocus" /> 

回答

0

使這裏的變化

嘗試檢查:

hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT)

相反:僅具有前置攝像頭

hasSystemFeature(PackageManager.FEATURE_CAMERA)

的Nexus 7。

Android相機選擇算法默認爲後置相機。

相關問題