gpt4 book ai didi

ios - PhoneGap BarcodeScanner 插件不工作

转载 作者:行者123 更新时间:2023-11-29 12:26:35 25 4
gpt4 key购买 nike

我已经为 iOS 安装了最新版本的 Node.js、PhoneGap 和 PhoneGap 开发者应用程序。我的系统是 Windows 8.1(64 位)。测试设备为 iOS 最新版本的 iPhone 6。

我正在尝试使用 BarcodeScanner plugin没有成功。有人可以解释我做错了什么吗?或者这是某种错误?

以下是重现问题的步骤:

phonegap create HelloWorld
cd HelloWorld
phonegap serve

编辑config.xml 并添加以下行

<gap:plugin name="com.phonegap.plugins.barcodescanner" version="2.0.0" />

编辑 www/index.html。添加一个带有 id btn-scan 的按钮,带有 id 信息的 parahraph 和引用 barcodescanner.js

<body>
<div class="app">
<h1>PhoneGap</h1>
<div id="deviceready" class="blink">
<p class="event listening">Connecting to Device</p>
<p class="event received">Device is Ready</p>
</div>
<button id="btn-scan">Scan</button>
<p id="info"></p>
</div>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="barcodescanner.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
app.initialize();
</script>
</body>

编辑js/index.js文件...

...
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
document.getElementById('btn-scan').addEventListener('click', this.scan, false);
},
...

第一个失败的例子

scan: function(){
console.log('scanning');

try {
var scanner = cordova.require("cordova/plugin/BarcodeScanner");
} catch (e) {
console.log('Error 1');
console.log('Name: ' + e.name);
console.log('Message: ' + e.message);
console.log('Stack: ' + e.stack);
return;
}

try {
scanner.scan(function (result) {
alert("We got a barcode\n" +
"Result: " + result.text + "\n" +
"Format: " + result.format + "\n" +
"Cancelled: " + result.cancelled);

console.log("Scanner result: \n" +
"text: " + result.text + "\n" +
"format: " + result.format + "\n" +
"cancelled: " + result.cancelled + "\n");
document.getElementById("info").innerHTML = result.text;
console.log(result);
}, function (error) {
console.log("Scanning failed: ", error);
});
} catch (e) {
console.log('Error 2');
console.log('Name: ' + e.name);
console.log('Message: ' + e.message);
console.log('Stack: ' + e.stack);
return;
}

},

错误:

[phonegap] [console.log] Received Event: deviceready
[phonegap] [console.log] scanning
[phonegap] [console.log] Error 1
[phonegap] [console.log] Name: undefined
[phonegap] [console.log] Message: undefined
[phonegap] [console.log] Stack: undefined

第二个失败的例子:

    scan: function(){
console.log('scanning');

try {
cordova.plugins.barcodeScanner.scan(
function (result) {
alert("We got a barcode\n" +
"Result: " + result.text + "\n" +
"Format: " + result.format + "\n" +
"Cancelled: " + result.cancelled);
},
function (error) {
alert("Scanning failed: " + error);
}
);
} catch (e) {
console.log('Name: ' + e.name);
console.log('Message: ' + e.message);
console.log('Stack: ' + e.stack);
return;
}
},

错误:

[phonegap] [console.log] Received Event: deviceready
[phonegap] [console.log] scanning
[phonegap] [console.log] Name: TypeError
[phonegap] [console.log] Message: undefined is not an object (evaluating 'cordova.plugins.barcodeScanner')
[phonegap] [console.log] Stack: scan@http://x.x.x.x:x/js/index.js:43:28

最佳答案

您还不能通过 Phonegap 的服务器运行插件。您必须进行构建并将其放在手机上才能进行调试。

关于ios - PhoneGap BarcodeScanner 插件不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28926416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com