0

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.Wifi の属性です。ドキュメントが間違っているか、JavaScript ライブラリ コードにバグがあります。

とにかく、私はそれを機能させることができません(policy.accessPointFiltersの問題を修正しても)。

4

1 に答える 1

0

acquireVisibleAccessPoints を呼び出すと、ポリシーの Wifi 部分のみが想定されます。あなたのコードでは、policy の代わりに policy.Wifi を 3 番目のパラメーターとして渡してみてください。

于 2013-08-25T17:04:44.023 に答える