2013-10-14 14 views
0

我使用Cordova的條碼掃描器插件,當我瀏覽我的應用程序時,相機保持凍結狀態。Cordova中的條碼掃描器問題3

它拋出的XCode以下警告:

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

你有什麼想法,我怎麼能解決這個問題呢?

編輯:

或許這是與骨幹爲我瀏覽的應用程序。當我在主頁上時,條形碼掃描進行得很順利,但只要我改變頁面,就會凍結,我收到了警告。

的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; 
}); 

謝謝!

+0

將代碼粘貼到這裏 –

+0

使用barcodeScanner.js? –

+0

我確實使用了barcodescanner.js。我也使用require.js和backbone來構建我的應用程序。事實上,條形碼掃描在應用程序啓動之後運行良好(我獲得了成功/錯誤回調以及所有內容)。但只要我瀏覽一些頁面,當我嘗試啓動掃描時,我得到了這個錯誤。我會用一些代碼更新我的文章。 – picooose

回答

2

我最近也遇到類似的警告。經過一番調查後,同時觸發條碼掃描器不止一次就會出現這個問題。這可能是由於多次綁定觸發掃描器的按鈕。

+0

你很棒:) – semirturgay