【问题标题】:IBM Worklight 5.0.6.1 - Mobile Browser Simulator - WL.Device.getNetworkInfo for navigator.network.connection.type vs. navigator.connection.typeIBM Worklight 5.0.6.1 - 移动浏览器模拟器 - 用于 navigator.network.connection.type 与 navigator.connection.type 的 WL.Device.getNetworkInfo
【发布时间】:2013-08-27 16:56:04
【问题描述】:

我们在 MBS 以及我们的 iOS 和 Android 设备上看到了不同的行为。

在模拟器中:

  • navigator.network.connection.type 返回在 Simulator 菜单中定义的值(这是旧 API,已弃用)。
  • navigator.connection.type 未定义(这是新的且即将推出的官方 API)。

在设备上:

  • 两者都返回正确的值(不推荐使用的 API 和新的 API)

言外之意就是下面的调用:

WL.Device.getNetworkInfo(function (networkInfo) {
  alert (networkInfo.ipAddress); 
  }
);
  • 在 MBS 中接收 undefined networkInfo 对象。
  • 在设备上接收具有正确值的对象。

【问题讨论】:

    标签: ibm-mobilefirst worklight-console worklight-mbs


    【解决方案1】:

    最新的 Worklight 6.1 的移动浏览器模拟器支持 navigator.network.connection.type 和 navigator.connection.type(Worklight 6.1 使用 Cordova 3.1)。直到 Cordova 2.3.0,Connection 对象是从 navigator.network.connection 访问的。在 Cordova 2.3.0 之后,它被更改为 navigator.connection。 Navigator.network.connection 在 Cordova 3.1 中仍然可用,但已被弃用,最终将从 Cordova 中删除。

    【讨论】:

      【解决方案2】:

      我不确定为什么这在 MBS 中有效(而不有效),但请注意 WL.Device.getNetworkInfo API 方法是 supported only in iOS and Android

      【讨论】:

      • 由于 navigator.connection.type 是新的,我们假设这个“新”API 尚未在 Simulator 的 Cordova 模拟中实现。并且当前仅实现了“旧” API navigator.network.connection.type。 - 它应该在模拟器中工作,因为在模拟器的左侧菜单栏中有更改网络连接设置的选项。对 navigator.network.connection.type 的调用完全返回左侧菜单栏中的配置!
      • 我已经通知了功能开发者。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-06
      • 1970-01-01
      • 1970-01-01
      • 2013-12-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多