2012-10-04 65 views
4

當我的應用在Google Nexus 7平板上運行時,它會針對此標準Android測試返回false以查看設備是否配備了攝像頭。谷歌Nexus 7顯示它沒有攝像頭

PackageManager pm = this.getPackageManager(); 
    if(!pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)) { 
     // disable camera button 
    } 

現在我認識到了Nexus 7不帶有內置相機應用出貨,但是當我嘗試推出我用下面的一個攝像頭的活動(給用戶挑選替代的應用程序的選項)。

File fTempCameraFullDirPath = new File(msTempCameraFullDirPath); 
    Uri outputFileUri = Uri.fromFile(fTempCameraFullDirPath); 
    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
    cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); 
    startActivityForResult(Intent.createChooser(cameraIntent, getString(R.string.select_camera_app)), REQUEST_CODE_CAMERA); 

現在顯然我沒有得到這個代碼,因爲測試攝像機發生故障,我禁用按鈕,但只要我有我的Nexus 7檯安裝了攝像頭的應用程序好像是我應該可以拍照。

是否有人知道我可以用來在此平板電腦(或類似設備)上啓用此功能的替代測試?

回答

4

嘗試檢查PackageManager.FEATURE_CAMERA_FRONT以及FEATURE_CAMERA,因爲Nexus 7只有前置攝像頭,Android攝像頭選擇算法默認爲後置攝像頭。

1

看着docs它說FEATURE_CAMERA屬於遠離屏幕的攝像頭,它本質上是後置攝像頭。如此正確,它應該返回錯誤。