我正在开发 phonegap android 应用程序。这对我来说是全新的。我想用条形码扫描仪开发一个应用程序。它也可能使用意图调用。这意味着条形码意图是从 java 代码中调用的,一旦扫描结果应该显示在 HTML 页面中。
问问题
1391 次
2 回答
2
来自 phonegap 插件的这段代码按预期工作:
public PluginResult execute(String arg0, JSONArray arg1, String arg2) {
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.setPackage("com.google.zxing.client.android");
// intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
ctx.startActivityForResult(this, intent, 0);
return new PluginResult(PluginResult.Status.OK);
}
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == 0) {
Log.i("Cordova", "result " + resultCode);
if (resultCode == Activity.RESULT_OK) {
String contents = intent.getStringExtra("SCAN_RESULT");
String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
Log.i("Cordova", "contents " + contents + ", format " + format);
// Handle successful scan
} else if (resultCode == Activity.RESULT_CANCELED) {
// Handle cancel
Log.i("Cordova", "scan cancelled");
}
}
}
使用 Cordova 1.7 和 Android 2.2 测试
于 2012-07-06T13:48:43.140 回答
1
只需转到并 按照自述文件中的说明进行操作。
将此添加到您的项目后,您可以使用类似
window.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);
}
);
进行扫描。
于 2012-09-13T13:14:05.817 回答