【问题标题】:Barcode Scanner Issue in Cordova 3Cordova 3 中的条码扫描器问题
【发布时间】:2013-10-14 10:38:56
【问题描述】:

我在 Cordova 中使用 Barcode Scanner 插件,当我浏览我的应用程序时,相机一直冻结。

它会在 XCode 中引发以下警告:

Warning: Attempt to present <CDVbcsViewController> on <MainViewController> while a presentation is in progress!

您有什么想法可以解决这个问题吗?

编辑:

在我浏览应用程序时,可能与 Backbone 有关。当我在主页上时,条形码扫描很顺利,但是当我更改页面时,它就冻结了,并且我收到了警告。

index.html

<!DOCTYPE html>
<html>
    <head>
        <meta 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" />
        <link rel="stylesheet" type="text/css" href="css/main.css" />
        <title>Project</title>
    </head>
    <body>
        <div id="app"></div>
        <script type="text/javascript" src="cordova.js"></script>
        <script data-main="js/main" src="js/lib/require.js"></script>
    </body>
</html>

plugin_cordova.js

cordova.define('cordova/plugin_list', function(require, exports, module) {
module.exports = [
    {
        "file": "plugins/com.phonegap.plugins.barcodescanner/www/barcodescanner.js",
        "id": "com.phonegap.plugins.barcodescanner.BarcodeScanner",
        "clobbers": [
            "cordova.plugins.barcodeScanner"
        ]
    }
]
});

我的主干观点

define(['jquery','underscore','backbone'], function($, _, Backbone){
  var myView = Backbone.View.extend({
    initialize: function(){
      /* ... */
    },
    render: function(ev){
      /* ... */
    }
    startScan: function(e){
      e.preventDefault();
      cordova.plugins.barcodeScanner.scan(this.scanSuccess,this.scanError);
    },
    scanSuccess: function(response){
      alert("We got a barcode\n" +
            "Result: " + response.text + "\n" +
            "Format: " + response.format + "\n" +
            "Cancelled: " + response.cancelled);
    },
    scanError: function(error){
      alert('Error: '+error);
    },
  });
  return myView;
});

谢谢!

【问题讨论】:

  • 使用barcodeScanner.js?
  • 我确实在使用barcodescanner.js。我还使用 require.js 和主干来构建我的应用程序。事实上,条形码扫描在应用程序启动后运行良好(我得到了成功/错误回调和一切)。但是,当我浏览某些页面时,当我尝试启动扫描时,我得到了这个错误。我会用一些代码更新我的帖子。
  • @hussainShabbir 我放了一些代码。我开始认为它可能与骨干网有关......

标签: ios objective-c cordova ios7 barcode-scanner


【解决方案1】:

我最近也遇到了类似的警告。经过一番调查,同时多次触发条码扫描器会出现这个问题。这可能是由于触发扫描仪的按钮多次绑定造成的。

【讨论】:

    猜你喜欢
    • 2014-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-08
    • 2014-07-18
    • 2012-07-04
    • 2015-11-15
    • 1970-01-01
    相关资源
    最近更新 更多