2016-07-26 45 views

Antwort

1

Ja, die cordova-plugin-ibeacon ist die eine zu verwenden. Es unterstützt das Scannen nach Beacons, obwohl die Beispiele das nicht offensichtlich machen. Sehen Sie sich das Beispiel "Starten eines einzelnen iBeacons an" an. Der einzige Unterschied zwischen der Suche nach einem einzelnen Beacon und vielen Beacons besteht darin, dass Sie die Bezeichner auf null setzen, um nach einem beliebigen Bezeichner als Platzhalter zu suchen. Wie folgt aus:

var beaconRegion = new cordova.plugins.locationManager.BeaconRegion(identifier, uuid, null, null);

Die Zeile über einen Bereich einrichten, die Sie für ein Leuchtfeuer jeden größeren und kleineren Wert zu finden, mit dem angegebenen ProximityUUID verwenden können.

Dies führt zu einer wichtigen Unterscheidung zwischen Android und iOS. Unter iOS müssen Sie müssen eine ProximityUUID (der zweite Parameter der Methode angezeigt) und es ist unmöglich, für alle Beacons unabhängig von ProximityUUID zu scannen. Unter Android können Sie Null für diesen Parameter liefern, so dass Sie effektiv nach jedem Beacon suchen können. Um das klarzustellen, ist dies keine Plugin-spezifische Einschränkung für iOS. Es ist eine Betriebssystembeschränkung.

+0

Ich habe versucht, auf android var beaconRegion = neue cordova.plugins.locationManager.BeaconRegion (Bezeichner, 0, 0, 0); aber es wirft Ausnahme BeaconRegion.js: 69 Uncaught (in Aussicht) TypeError: uuid.match ist keine Funktion bei Function.BeaconRegion.isValidUuid (file: ///android_asset/www/plugins/com.unarin.cordova.beacon /www/model/BeaconRegion.js:69:14) bei Function.BeaconRegion.checkUuid (file: ///android_asset/www/plugins/com.unarin.cordova.beacon/www/model/BeaconRegion.js: 77: 20) in der neuen BeaconRegion – RDX

+0

Leider sieht es so aus, als ob das Plugin validiert, dass die UUID nicht null ist, wenn eine Region deklariert wird. – davidgyoung

+0

Also gibt es eine Möglichkeit, UUID von Beacons zu holen? – RDX