2016-06-17 5 views
2

Ich habe angefangen, eine App zu entwickeln und ich muss die Kamera meines Handys benutzen, und wenn ich die Methode Camera.open() benutze, entweder mit cameraId oder nicht gibt den Fehler "Beim Verbindungsaufbau zur Kamera 0 ist ein Fehler aufgetreten" zurück. Mein AndroidManifest.xml ist:Kann Kamera nicht öffnen Beim Verbindungsaufbau zur Kamera ist ein Fehler aufgetreten: 0

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.telecombretagne.holowater"> 

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

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 
     <activity 
      android:name=".MainActivity" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.NoActionBar"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name=".camera" 
      android:label="@string/title_activity_camera" 
      android:theme="@style/AppTheme.NoActionBar"></activity> 
    </application> 

</manifest> 

mein Telefon Android Version ist 6.0.1, und es ist ein BQ Aquaris M5.

Vielen Dank im Voraus.

Antwort

0

Geräte, die ausgeführt werden Eibisch Erlaubnis zur Laufzeit festgelegt werden muß, hier ist meine Antwort von einer anderen ähnlichen Frage here :)

Von https://developer.android.com/training/permissions/requesting.html
Hinweis: Ab Android 6.0 (API-Stufe 23) können Benutzer jederzeit Berechtigungen aus jeder App widerrufen, auch wenn die App auf eine niedrigere API-Ebene abzielt. Sie sollten Ihre App testen, um sicherzustellen, dass sie sich ordnungsgemäß verhält, wenn eine erforderliche Berechtigung fehlt, unabhängig davon, auf welcher API-Ebene Ihre App ausgerichtet ist.

Abgesehen von den Berechtigungen, die im Manifest festgelegt sind, müssen Sie zur Laufzeit eine Berechtigung anfordern. Es gibt Beispielcodes in dort können Sie verwenden, oder ...


Schnell Lösung,

Einstellungen- gehen> Apps -> (Ihre App-Name) -> Berechtigungen und aktivieren Sie die Kamera Erlaubnis . Fertig, obwohl nicht für das Endprodukt empfohlen

dann versuchen Sie Ihre App erneut. Sollte jetzt funktionieren: D

+0

Ich habe heute versucht, und meine App funktioniert, ohne etwas zu ändern ... das ist ziemlich seltsam, weil ich meinen PC und mein Handy ein paar Mal neu gestartet und es hat nicht funktioniert, und plötzlich tut es XD Ich habe die Berechtigungen in der App überprüft, wie du gesagt hast und es erlaubt die Kamera zumindest jetzt. Also vielen Dank für den Rat;) –

+0

Sicher kein Problem :) und wenn möglich markieren Sie meine Post als angenommene Antwort, wenn es geholfen hat, da es anderen mit ähnlichen Problemen helfen könnte .. Alles Gute in Ihrer Programmierung: D –

+0

Sorry, ich ' m neu in stackoverflow und ich wusste nicht wie es geht :) –

0

auch versuchen, die Kamera-ID hinzufügen, wie

Camera.open(Camera.CameraInfo.CAMERA_FACING_BACK);