2016-11-21 4 views
0

Wenn ich die Kamera-Taste verwenden, um die Kamera auf meinem Android-Gerät zu starten, sollte es mir diesen Fehler mit Chrom inspizieren gibt:Ionic 2 Kamera macht app Absturz

file: /// Speicher/emulierten/0/Android/Daten/io.ionic.starter/cache/.Pic.jpg über App durch ClipData.Item.getUri() ausgesetzt

ich bin ratlos, kann es nicht anywere finden ..

Alle Hilfe ist willkommen!

Cordova CLI: 6.4.0 
Ionic Framework Version: 2.0.0-rc.3 
Ionic CLI Version: 2.1.12 
Ionic App Lib Version: 2.1.7 
Ionic App Scripts Version: 0.0.45 
ios-deploy version: Not installed 
ios-sim version: Not installed 
OS: Windows 10 
Node Version: v6.9.1 
Xcode version: Not installed 

Antwort

0

ich diese Möglichkeiten tun: laufen gut in Android-Gerät

doCamera() { 
     Camera.getPicture({ 
      destinationType: Camera.DestinationType.FILE_URI, 
      saveToPhotoAlbum: true, 
      mediaType: Camera.MediaType.PICTURE, 
     }).then((imageURI) => { 
      this.changeImageString(imageURI); 
     }, (err) => { 
      console.log("Error: " + err); 
     }); 

} 

enter link description here

Ionic Info siehe:

Cordova CLI: 6.4.0 
Ionic Framework Version: 2.0.0-rc.1 
Ionic CLI Version: 2.1.8 
Ionic App Lib Version: 2.1.4 
Ionic App Scripts Version: 0.0.38 
Node Version: v6.8.1 
+0

ich es versucht, und andere Tutorials, die es funktionieren sollte, aber immer noch abstürzt.Ich fange an zu denken, dass es nichts mit dem Code zu tun hat. –

+0

Probieren Sie in Blanc-Projekt, es muss funktionieren. – Lerb90

+0

das würde nie funktionieren Der Fehler passiert, bevor camera.getpicture aufgelöst wird, so dass Sie nie eine Chance haben werden, das imageURI so zu behandeln. –

1

bekam diese cordova platform android ausgewertete Aktualisierung 6.1 zu sein .1 und aktualisiere dann das Kamera-Plugin.

überprüfen Sie Ihre android cordova Plattform-Version:

cordova platform ls

wenn Android 6.0 ist < dann müssen Sie es aktualisieren und die aktualisierte Version zu Ihrem Projekt hinzufügen, sollte diese Arbeit:

cordova platform update android

aber in meinem Fall wird es nicht die Android-Plattform-Version zu aktualisieren, so musste ich 6.1.1

explizit installieren

cordova platform add [email protected] --save

dann auf 6.1.1 aktualisiert und ich dann cordova Kamera-Plugin zu meinem Projekt entfernt und hinzugefügt:

cordova plugin remove cordova-plugin-camera --save

und dann

cordova plugin add cordova-plugin-camera --save

ein bis Bis heute war cordova-plugin-camera installiert und ich konnte es in meiner config.xml

sehen

Ich habe meine App erneut auf Gerät ionic run android bereitgestellt und es hat funktioniert.

5

Passing in Breite und Höhe löst das Absturzproblem für mich.

const options: CameraOptions = { 
     quality: 100, 
     targetWidth: 100, 
     targetHeight: 100, 
     destinationType: Camera.DestinationType.DATA_URL, 
     encodingType: Camera.EncodingType.JPEG, 
     mediaType: Camera.MediaType.PICTURE 
    } 

    Camera.getPicture(options).then((imageData) => { 
     // imageData is either a base64 encoded string or a file URI 
     // If it's base64: 
     this.idImage = imageData; 
     this.idImageSelected = 'data:image/jpeg;base64,' + imageData; 
    }, (err) => { 
     // Handle error 
    }); 
    } 
+0

Es hat funktioniert! Dies sollte dokumentiert werden. –

+0

Es hat auch für mich funktioniert. Vielen Dank. – Meysam