在 Apache Cordova 中从“inappbrowser”打开相机或图库

Open Camera or Gallery from " inappbrowser " in Apache Cordova

我有一个使用 Apache Cordova 开发的混合应用程序,我在该应用程序中使用“inappbrowser”。现在要求是从inappbrowser打开相机或图库,我不知道如何实现。

为了开发此应用程序,我使用了 backbone.js、JQuery、bootstrap.js。

这是 Backbone 视图的代码片段:

  var mainScreenView = Backbone.View.extend({

        el: $('.panel'),

        templateMainScreen: _.template($('#templateOne').html()),

        events: {

            "click #inputBtnSubmit": "openWebView",
            "click #clickSettings": "openSettings"
        },

        initialize: function(){
            this.render();
        },

        render: function () {

            alert($(this.el).find('.panel-body'));
            var bindElement = $(this.el).find('.panel-body');
            bindElement.html(this.templateMainScreen());
            return this;
        },

        openWebView: function () {

            var textValue = $('#inputValue').val();
                       cordova.InAppBrowser.open('**Link to an external webpage which asks for Camera or Gallery control** ', '_blank', 'location=no');

       //  After inappbrowser is called to load a external webpage (On a button click Camera Intent or Gallery should open)
        }

    });

    var appView = new mainScreenView;

提前致谢。

试试这个插件,如果有帮助的话http://plugins.cordova.io/#/package/com.synconset.imagepicker
它应该适用于 inappbrowser。

我没有使用 inappBrowser,而是实现了 HTML iframe。也就是说,我想让 inappBrowser 做的事情,现在我可以使用 iframe 来做。您可以访问相机或画廊或文件资源管理器,类似于本地 Phone 的浏览器。

以下是我为解决上述问题所做的工作:

   <html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <meta name="format-detection" content="telephone=no" />
      <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
      <title>Hello World!</title>
      <style type='text/css'>
        body, html, iframe {
                     margin: 0;
                     padding: 0;
                     border: 0px none;
                     width: 100%;
                     height: 100%;
        }
      </style>
 </head>
 <body>
     <script type="text/javascript" src="cordova.js"></script>


     <iframe src="http://SomeWebPage" width="97%" height="97%"></iframe>
 </body>

希望这对其他人有帮助。