1

应用概述: 1. 注册 Radius Developer 的接近套件并创建 Fences。2. 从网站下载的 ProximityKit.properties 文件中的 PKKitURL 获取 JSON 响应。3. 解析 JSON 响应以获取 lat 和 long。获取用户的位置并检查是否接近。

目前,我已经完成了注册、创建栅栏、下载 .properties 文件以及集成 ProximityKit 的 SDK 所需的所有其他基本内容。

现在我想从 .properties 文件中的 URL 获取 JSON 响应。我可以使用以下代码检索 URL。

Configuration config = new Configuration(this);
Log.d(Const.DEBUG,
                "DeviceID = " + config.getDeviceId() + "\nKitUrl = "
                        + config.getKitUrl() + "\nLicenseKey = "
                        + config.getLicenseKey());

示例 JSON 响应:

{"kit":{"id":2837,"name":"My Kit","created_at":"2014-06-20T10:42:46.999Z","updated_at":"2014-06-20T10:42:46.999Z","links":{"map":"/api/maps/823"},"map":{"id":823,"name":"Wasp Hyderabad","created_at":"2014-06-20T16:20:13.504Z","updated_at":"2014-06-24T12:08:47.470Z","location":["17.4367","78.505243"],"overlays":[{"type":"circle","id":1968,"name":"Wasp Hyd Office","identifier":"pk-circleoverlay-1968","center":[17.443815,78.502657],"radius":197.846424},{"type":"circle","id":1969,"name":"Secunderabad","identifier":"pk-circleoverlay-1969","center":[17.437274,78.504884],"radius":257.538757}]},"ibeacons":[]}}

如果我直接尝试访问 url 并获得响应,我会得到一个 AuthFailureError,我猜这是因为一些身份验证问题。我的问题是如何获得对我的应用程序的 JSON 响应?

我在 .properties 文件中有所有必需的参数,但我不确定如何将它们发送到服务器以进行身份​​验证。任何一直在使用 RadiusNetwork 的 ProximityKit 的人都可以帮助我。

4

1 回答 1

0

发出 Web URL 请求不是使用ProximityKit支持的方式。使用iBeaconDataUpdate回调并从提供的内容中读取IBeaconData以获取各种元数据。

例如,要说welcomeMessage元数据:

public void iBeaconDataUpdate(IBeacon iBeacon, 
                              IBeaconData data, 
                              DataProviderException e) {
    if (iBeacon != null && data != null) {
        String displayString = iBeacon.getProximityUuid() + " " +
                iBeacon.getMajor() + " " + iBeacon.getMinor() + "\n" +
                "Welcome message:" + data.get("welcomeMessage");
        Log.d(TAG, "iBeacon Data: " + displayString);
    }
}

另外,请注意 ProximityKit 会自动为您注册所有这些区域。所以你不需要告诉应用程序它需要开始监控它们。

有关 ProximityKit API 的更多信息,请查看他们的 Javadocs:http: //developer.radiusnetworks.com/ibeacon/android/pro/javadocs/com/radiusnetworks/proximity/ProximityKitNotifier.html

于 2014-07-01T18:01:48.093 回答