2016-01-29 7 views
7

Ist es möglich, ein Foto von der Kamera in einer Phonegap-App nur mit HTML-Eingabe, ohne Kamera-API zu bekommen?Verwenden der Kamera in der Phonegap App mit nur HTML-Eingabe, ohne Kamera-API

Szenario

entwickelte ich eine App und verkapselt es durch Phonegap (Build)

Benutzer Fotos Eingabe mit HTML-Datei einreichen können. Aber es gibt keine Möglichkeit, ein neues Foto von der Kamera aufzunehmen, nur Galerie und Dateien (und jede andere Speicher-App, wie Laufwerk oder Dropbox, falls dies der Fall ist).

Ich möchte die Kamera-Option aktivieren, aber ohne die Kamera-API von PhoneGap.

Lösungen

ich folgende Lösungen ohne Erfolg versucht haben:


1. Die "Capture" -Attribut (von Raymond Camden post)

Mit diesem Verfahren werden alle Sie müssen das Attribut "capture" wie folgt hinzufügen:

<input type="file" capture="camera" accept="image/*" id="JustChooseAnID"> 

Raymond erklärt, dass Sie mit dieser Methode die PhoneGap-Kamera-API nicht verwenden müssen, da Google diese Option entwickelt und in einem Google IO presentation gezeigt hat, und nach Google-Entwicklern und auch Raymond funktioniert es.

Aber .. nicht für mich.


2. Config Phonegap Kamera Erlaubnis fragen (von Jorge Lizaso's question)

"Vielleicht ist die Kamera-Option wird nicht gezeigt, weil Ihre Anwendung nicht die richtigen Berechtigungen verfügt"

In In der obigen Frage werden 4 Methoden erwähnt, um indirekt die richtigen Berechtigungen für die Verwendung der Kamera zu erfragen und zu erhalten.

Ich habe schon Methoden 2 und 4 ausprobiert und obwohl meine App nun nach Kameraerlaubnis fragt und ich es richtig zugelassen habe, wenn ich die Dateieingabe nutze, sind alle Optionen dargestellt (wie Galerie und Dateien), aber keine Kamera .


3 (und 1). Verwenden Sie die neueste Version von WebKit mit Crosswalk Lösung # 1

Mit der Möglichkeit meiner android webview werden veraltet (und nicht kompatibel mit Lösung # 1) zu gewährleisten, habe ich beschlossen, in meinem dir die besten webview möglich sind: the latest version of Google Chromium .

Aber .. kein Erfolg wieder.


1, 2 und 3 kombiniert

Das Ergebnis: kein ... Erfolg.

+0

Sie müssen für die HTML5-API testen. Ihr Gerät verfügt möglicherweise nicht über die richtige Webview-Bibliothek. Ihre Alternative ist das [crosswalk (webview) plugin] (http://phonegap.com/blog/2015/06/16/phonegap-updated-on-build/), um zu sehen, wie man plugin benutzt. – JesseMonroy650

+0

Auf ios funktioniert die Eingabe-Typ-Datei gut und zeigt die Galerie oder Kamera-Option, auf Android funktioniert es nicht. Sie müssen das Kamera-Plugin verwenden – jcesarmobile

+0

@ JesseMonroy650 Danke für den Hinweis, aber ich Crosswalk-Plugin verwendet. –

Antwort

2

Ja, es gibt eine Lösung, ohne die Camera API von Cordova/PhoneGap.

Aus Gründen, die jenseits meines Wissens sind, die Webkit in CocoonJS verwendet (WebView + genannt) ist weit mehr optimiert und auf HTML5-Apps als Crossswalk der phonegap (bitte, ich bin zu Cocoon nicht verwandt).

Ich verworfen vollständig meine Phonegap config.xml Einstellungen und versuchte Cocoon Builder. Früher habe ich die Lösung # 1 (das Capture-Attribut in der Datei-Eingang) und hinzugefügt, diese Plugins, über Cocoon:

<cocoon:plugin name="cordova-plugin-camera"/> 
<cocoon:plugin name="cordova-plugin-media-capture"/> 
<cocoon:plugin name="cordova-plugin-media"/> 
<cocoon:plugin name="cordova-plugin-file"/> 
<cocoon:plugin name="cordova-plugin-device"/> 

Es ist wichtig, zu beachten, die ich gerade diese Plugins installiert, um die gewünschten Berechtigungen zu erhalten, aber Ich benutze sie überhaupt nicht.

Wahrscheinlich werden erfahrene Entwickler bessere Lösungen haben, aber im Moment ist dies der beste Weg, um dieses Problem zu lösen.

+0

danke Paolo, das hat mir sehr geholfen –

+0

Legende! War in der gleichen Position wie Sie selbst, versuchte alle oben aufgeführten Schritte. Einfach die Plugins installieren, die Sie in Cordova aufgelistet haben, war genug für mich, obwohl CocoonJS einen zweiten Blick wert ist. – trans1t

+0

Vielen Dank für Ihren Kommentar, @ trans1t! –

Verwandte Themen