Vom Android Docs:
Ab Android 6.0 (API-Stufe 23) erteilen Benutzer Berechtigungen für Apps, während die App ausgeführt wird, nicht wenn sie die App installieren.
Es bedeutet, dass auf Android 23 oder höher neben dem Manifest auch die Berechtigung zur Laufzeit angefordert werden muss. In diesem Fall, Kamerazugriff.
Um dies zu tun, können Sie den Code unten verwenden:
// First check android version
if (MyVersion > Build.VERSION_CODES.LOLLIPOP_MR1) {
//Check if permission is already granted
//thisActivity is your activity. (e.g.: MainActivity.this)
if (ContextCompat.checkSelfPermission(thisActivity,
Manifest.permission.CAMERA)
!= PackageManager.PERMISSION_GRANTED) {
// Give first an explanation, if needed.
if (ActivityCompat.shouldShowRequestPermissionRationale(thisActivity,
Manifest.permission.CAMERA)) {
// Show an explanation to the user *asynchronously* -- don't block
// this thread waiting for the user's response! After the user
// sees the explanation, try again to request the permission.
} else {
// No explanation needed, we can request the permission.
ActivityCompat.requestPermissions(thisActivity,
new String[]{Manifest.permission.CAMERA},
1);
}
}
}
Sie können auch die Anforderungsantwort behandeln, wie auf der docs beschrieben.
Hoffe es hilft!
Schalten Sie das Gerät aus und starten Sie es neu. Versuchen Sie erneut, opencv erneut zu installieren. –
werfen Sie einen Blick auf diese: http://answers.opencv.org/question/1574/camera-not-working – Mahm00d
Ich hatte das gleiche Problem zu treffen, und es mit dem folgenden Weg gelöst. Siehe http://StackOverflow.com/a/42661642/5850039 – Tugou