0
我在使用Android相機時遇到問題。Android「Camera camera = Camera.open();」時每次都會拋出錯誤,叫做
在API 25 Nougat 7.1.1 SDK上開發。閔目標SDK設置爲15
它在調用時拋出錯誤每次:
Camera camera = Camera.open();
出現錯誤「的RuntimeException:無法連接到相機的服務」,這可以從我的模擬器可以看到(的Nexus 5X API 25 Android 7.1.1)
在真實設備(Android 5.1.1)上測試相機功能不起作用 - 完全相同的問題。
下面是代碼:
import android.hardware.Camera;
...
boolean hasCamera = false;
private boolean hasCamera(Context context) {
return context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
hasCamera = hasCamera(this);
if(!hasCamera) {
takePhotoButton.setText("No Camera Found");
takePhotoButton.setEnabled(false);
}
}
private class TakePhotoButtonListener implements View.OnClickListener {
@Override
public void onClick(View v) {
if(hasCamera) {
try {
Camera camera = Camera.open();
camera.startPreview();
camera.takePicture(
null,
null,
new CameraPictureCallbackJPEG());
} catch (Exception e) {
Log.i("Error", e.getMessage());
}
}
}
}
確實檢測到丹(hasCamera == TRUE)。
我沒有使用Camera2(從API 21開始),因爲我希望我的應用程序能夠在API 15以上工作。
我在這裏嘗試了很多答案,但沒有任何工作。請指教!
http://stackoverflow.com/questions/23904459/android-java-lang-runtimeexception-fail-to-connect-to-camera-service –
權限問題? – GhostCat
嘗試重新啓動設備。當一些應用程序獲得相機並且沒有發佈它時,我通常會看到這一點。 – CommonsWare