2016-01-29 15 views
7

カメラAPIを使用せずに、phonegapアプリケーションのカメラから写真をHTML入力のみで取得することはできますか?カメラAPIなしのPhonegapアプリでのカメラの使用

シナリオ

私はアプリを開発し、PhoneGapのを通してそれをカプセル化(ビルド)

ユーザーは、htmlファイルの入力を使用して写真を提出することができます。しかし、カメラやギャラリー、ファイル(ドライブやドロップボックスなどの他のストレージアプリ)から新しい写真を撮る方法はありません。

私はカメラのオプションを有効にしますが、PhoneGapのカメラAPIは使用しません。すべて、この方法では(Raymond Camden postから)属性

を "キャプチャ"


1:私は成功せず、次の解決方法を試してみた

ソリューション

次のように「キャプチャ」属性を追加する必要があります。

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

Raymondは、Googleがこのオプションを開発してGoogle IO presentationに示していたので、PhoneGapのCamera APIを使用する必要はないと説明しています。Google DevsとRaymondによると、

しかし、私のためではありません。


2.コンフィグのPhoneGap(Jorge Lizaso's questionから)

を、カメラの許可を依頼することで

を「あなたのアプリが適切な権限を持っていないので、たぶんカメラのオプションが現れていません」上記の質問には、カメラを使用するための適切な許可を間接的に求めて受け取る4つの方法が記載されています。

私は既に、方法2と4を試してみましたが、私のアプリはカメラの許可を求めて正しく許可しましたが、ファイル入力を使用するとすべてのオプションが(ギャラリーやファイルのように) 。


3(および1)。古い(および溶液#1に対応していない)ことが、私のAndroidのWebViewの可能性溶液#1

を確保するためにCrosswalkでのWebKitの最新バージョンを使用して、私は私のアプリで可能な限り最高のWebViewを含めることにしました:the latest version of Google Chromium

しかし、もう一度は成功しません。いいえ...成功:


1、2と3は

結果を組み合わせます。

+0

HTML5 APIをテストする必要があります。お使いのデバイスに正しいwebviewライブラリがない可能性があります。代わりに[crosswalk(webview)plugin](http://phonegap.com/blog/2015/06/16/phonegap-updated-on-build/)を使用することです。プラグインの使い方については、記事の最後を参照してください。 – JesseMonroy650

+0

入力ファイルがうまく動作し、ギャラリーやカメラのオプションが表示されます。アンドロイドでは機能しません。あなたはカメラのプラグインを使う必要があります – jcesarmobile

+0

@ JesseMonroy650ノートに感謝しますが、Crosswalkプラグインを使用しました。 –

答えて

2

はい、ソリューションがあり、Cordova/PhoneGapのCamera APIは必要ありません。

私の知る限りの理由から、CocoonJS(WebView +という名前)で使用されているウェブキットは、phonegapのCrossswalkよりもはるかに最適化され、HTML5アプリに調整されています。(私はCocoonとは関係ありません。

Phonegapのconfig.xml設定を完全に破棄し、Cocoon Builderを試しました。私はコクーンを経由して、溶液#1(ファイル入力でキャプチャ属性)を使用し、これらのプラグインを追加しました:

<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"/> 

それは、希望の許可を得るために、私はこれらのプラグインをインストールしに注意することが重要ですが、私はそれらをまったく使用していません。


はおそらく、より多くの経験を積んだ開発者は今のところ、よりよい解決策を持っていますが、これは私がこの問題を解決するために発見された最良の方法です。

+0

パオロさん、ありがとうございました。これはたくさん助けました –

+0

伝説!上記の手順をすべて試してみました。 CocoonJSはもう少し価値がありますが、あなたがcordovaにリストされているプラ​​グインをインストールするだけで十分でした。 – trans1t

+0

あなたのコメント、@ trans1tに感謝します! –

関連する問題