diff --git a/src/android/RedLightScan.java b/src/android/RedLightScan.java index 05646a0..dffe554 100644 --- a/src/android/RedLightScan.java +++ b/src/android/RedLightScan.java @@ -91,7 +91,9 @@ public class RedLightScan extends CordovaPlugin { } private void unregisterReceiver() { - webView.getContext().unregisterReceiver(receiver); + if (receiver != null) { + webView.getContext().unregisterReceiver(receiver); + } } @Override diff --git a/www/redlightscan.js b/www/redlightscan.js index 433c3a1..d7705ad 100644 --- a/www/redlightscan.js +++ b/www/redlightscan.js @@ -1,16 +1,30 @@ -var exec = require('cordova/exec'); +var cordova = require('cordova'); module.exports = { startScan(success, error) { - exec(success, error, 'RedLightScan', 'startScan', []); + cordova.exec(function(data){ + cordova.fireDocumentEvent("redlight.receive", {"data":data}); + success && success(data); + }, error, 'RedLightScan', 'startScan', []); + cordova.fireDocumentEvent("redlight.start"); }, stopScan(success, error) { - exec(success, error, 'RedLightScan', 'stopScan', []); + cordova.exec(function (data) { + cordova.fireDocumentEvent("redlight.stop", { "data": data }); + success && success(data); + }, error, 'RedLightScan', 'stopScan', []); }, registerReceiver(success, error) { - exec(success, error, 'RedLightScan', 'registerReceiver', []); + cordova.exec(function (data) { + cordova.fireDocumentEvent("redlight.receive", { "data": data }); + success && success(data); + }, error, 'RedLightScan', 'registerReceiver', []); + cordova.fireDocumentEvent("redlight.register"); }, unregisterReceiver(success, error) { - exec(success, error, 'RedLightScan', 'unregisterReceiver', []); + cordova.exec(function (data) { + cordova.fireDocumentEvent("redlight.unregister", { "data": data }); + success && success(data); + }, error, 'RedLightScan', 'unregisterReceiver', []); } };