Ich bin ein Student, und ich wurde gebeten, eine App über Bilderkennung zu machen, aber wenn ich versuche, um die Kamera zu verwenden, erhalte ich immer:Wie kann ich diesen Fehler mit Kameraerlaubnis auf Android lösen?
E/CameraService: Permission Denial: kann die Kamera nicht verwenden
die Sache ist, dass ich die Erlaubnis, auf dem Manifest und ich auch die zur Laufzeit Erlaubnisanfrag hinzufügen:
public void onScanButtonClicked(View view) {
String[] permissos = {"android.permission.CAMERA"};
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.CAMERA)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,
permissos,
MY_PERMISSIONS_REQUEST_CAMERA
);
}
startActivity(new Intent(this, ScanActivity.class));
}
Hier ist mein Manifest:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-feature android:name="android.hardware.camera2" />
<uses-feature android:name="android.hardware.camera.any" />
<activity
android:name=".MainActivity"
android:label="@string/app_name"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ScanActivity"
android:label="@string/app_name"
android:configChanges="orientation|screenSize"
android:exported="true">
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature
android:name="android.hardware.camera2"
android:required="false" />
<uses-feature
android:name="android.hardware.camera.any"
android:required="false" />
</activity>
</application>
Berechtigungen und Features gehen außerhalb der '' Tags. –
Mögliches Duplikat von [Berechtigung verweigert (fehlende INTERNET-Erlaubnis?): Aber Erlaubnis ist gegeben] (http://stackoverflow.com/questions/25135595/permission-denied-missing-internet-permission-but-permission-isiven) –
Zusätzlich zu den '' - Tags an der falschen Stelle, wie andere darauf hingewiesen haben, können Sie 'startActivity()' nicht aufrufen, bis Sie die Berechtigung haben. Gerade jetzt scheinen Sie es zu nennen, ob Sie die Erlaubnis haben oder nicht. –
CommonsWare