根据 IBM Infocenter 文档,我为 WIFI 定位服务设置了以下策略:
function loadWifiLocation() {
var policy = {
Geo: {
timeout: 3000,
enableHighAccuracy: true
},
Wifi: {
interval: 3000,
signalStrengthThreshold: 15,
accessPointFilters: [{SSID:"MYWIFI"}]
}
};
WL.Device.Wifi.acquireVisibleAccessPoints(loadWifiLocationSuccess, loadWifiLocationFailure, policy);
}
不幸的是,在 Android 上运行时,会抛出以下错误:
08-23 15:37:18.910: E/Web Console(17385): Uncaught Error: WIFI policy should include accessPointFilters specification at file:///data/data/com.InfoCenter/files/www/default/wlclient/js/deviceSensors/wifi.js:43
在 wifi.js 文件中,以下行检查策略的 accessPointFilters 属性:
if (policy.accessPointFilters == undefined)
但是,在 Infocenter 文档中,accessPointFilters 不是 policy 的属性,而是 policy.Wifi .... 文档错误或 javascript libs 代码错误!
无论如何,我无法让它工作(即使修复了 policy.accessPointFilters 问题)。