Commit ec9b0861 by Aaron Fuentes

Added Support to MQuire300 Model

parent 8c524e44
package com.cocodin.barcodescan.plugin;
import java.util.Objects;
import java.util.concurrent.ExecutorService;
import com.zebra.adc.decoder.Barcode2DWithSoft;
......@@ -13,6 +12,10 @@ import org.apache.cordova.PluginResult.Status;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.content.BroadcastReceiver;
import android.content.Intent;
import android.content.IntentFilter;
import com.phonegap.plugins.barcodescanner.BarcodeScanner;
......@@ -25,10 +28,13 @@ public class PluginHelper {
private static boolean threadStop = true;
private static ExecutorService executor;
private static Barcode2DWithSoft mInstance;
private static JSONArray Devices = new JSONArray().put("camera").put("c4050");
private static boolean MQuireOn = false;
private static BroadcastReceiver barcodeScannerBroadcastReceiver;
private static JSONArray Devices = new JSONArray().put("camera").put("c4050").put("NQuire300");
private static CallbackContext cbContext;
public static void scan(CordovaInterface cordova, CordovaWebView webView, JSONArray args,
final CallbackContext callbackContext) {
final CallbackContext callbackContext) {
String device = "";
try {
device = args.get(0).toString();
......@@ -71,6 +77,13 @@ public class PluginHelper {
barcodeScanner.cordova = cordova;
barcodeScanner.webView = webView;
barcodeScanner.execute("scan", new JSONArray(), callbackContext);
} else if (device.equalsIgnoreCase(Devices.getString(2))) {
Context context = cordova.getActivity();
cbContext = callbackContext;
if(!MQuireOn) {
initMquire(context);
}
}
} catch (JSONException e) {
e.printStackTrace();
......@@ -80,6 +93,31 @@ public class PluginHelper {
public static void getDevices(CordovaInterface cordova, CordovaWebView webView, JSONArray args,
final CallbackContext callbackContext) {
callbackContext.sendPluginResult(new PluginResult(Status.OK, Devices));
callbackContext.sendPluginResult(new PluginResult(Status.OK, Devices));
}
public static void initMquire(Context context) {
Intent intent = new Intent("ACTION_BAR_SCANCFG");
intent.putExtra("EXTRA_SCAN_MODE", 3);
intent.putExtra("EXTRA_SCAN_AUTOENT", 0);
intent.putExtra("EXTRA_SCAN_NOTY_LED", 1);
intent.putExtra("EXTRA_SCAN_NOTY_SND", 1);
context.sendBroadcast(intent);
MQuireOn = true;
barcodeScannerBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String scanResult_1 = intent.getStringExtra("SCAN_BARCODE1");
final String scanStatus = intent.getStringExtra("SCAN_STATE");
if (null == scanResult_1 || null == scanStatus || scanResult_1.isEmpty() || scanStatus.isEmpty()) {
return;
}
if ("ok".equals(scanStatus)) {
cbContext.success(scanResult_1);
}
}
};
context.registerReceiver(barcodeScannerBroadcastReceiver, new IntentFilter("nlscan.action.SCANNER_RESULT"));
}
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment