如何在 ionic2 应用程序中使用 iBeacon?

How to use iBeacon in ionic2 app?

我是 ionic framework 的新手,AngularJS。我已经开始使用 Ionic ver2(使用 AngularJS2)在 Ionic framework 中学习和开发。

我想知道如何在 Ionic2 中使用 外部库?比如使用 cordova iBeacon, cordova iBeacon docs.

如何构建我的应用程序,以便我可以使用外部库(如 cordov iBeacon)编写一个或多个通用功能,并在我的应用程序中需要的地方使用它(在不同页面点赞js).

或者 - 如何包含执行本机硬件相关操作所需的库?

请随时提出您对此的所有想法和建议。

非常感谢。

终于自己搞明白了

Step 1: Add plugin into the app

通过命令行移动到项目文件夹,运行下面一行命令将插件添加到项目中

sudo cordova plugin add https://github.com/petermetz/cordova-plugin-ibeacon.git

Step 2: Using the plugin in the app

确保在 plugins/fetch.json 中添加了插件详细信息:

"com.unarin.cordova.beacon": {
        "source": {
            "type": "git",
            "url": "https://github.com/petermetz/cordova-plugin-ibeacon.git",
            "subdir": "."
        },
        "is_top_level": true,
        "variables": {}
    }

plugins/android.jsoninstalled_plugins 中有以下几行,

"com.unarin.cordova.beacon": {
            "PACKAGE_NAME": "io.ionic.starter"
        }

就是这样,我们开始在应用程序的任何页面中使用插件功能,方法是使用变量:cordova.plugins.locationManager

Example use cases:

启用设备蓝牙:cordova.plugins.locationManager.enableBluetooth();

NOTE If it is not working fine, update the plugin again. To update the cordova-plugin-ibeacon I first removed the plugin from the app and added again.

export class UserPage {constructor(authservice, navcontroller) {
        this.service = authservice;
        this.nav = navcontroller;
        this.distance = 0;    
   }
   getDistance(){
        delegate.didRangeBeaconsInRegion = function (pluginResult) {
              this.distance=pluginResult.beacons[0].rssi;
        };
   }
}