android - IBM Worklight 6.1 - 如何检查连接类型?

标签 android ios cordova ibm-mobilefirst

任何人都可以帮助我了解使用 Worklight API 的连接类型吗?

我尝试使用 getNetworkInfo(callback) 但不知道 iPhone 和 Android 是 2G 还是 3G 没有帮助。

最佳答案

Worklight 应用程序与一个版本的 Cordova bundle 在一起。

因此您可以使用 Cordova Connection API .
使用此 API,您将能够辨别 2G 和 3G 连接类型以及其他连接类型。

例如,在 your-project\apps\your-app\common\js\main.js 中,将以下内容添加到 wlCommonInit() 中:

function wlCommonInit() {
    var networkState = navigator.connection.type;

    var states = {};
    states[Connection.UNKNOWN]  = 'Unknown connection';
    states[Connection.ETHERNET] = 'Ethernet connection';
    states[Connection.WIFI]     = 'WiFi connection';
    states[Connection.CELL_2G]  = 'Cell 2G connection';
    states[Connection.CELL_3G]  = 'Cell 3G connection';
    states[Connection.CELL_4G]  = 'Cell 4G connection';
    states[Connection.CELL]     = 'Cell generic connection';
    states[Connection.NONE]     = 'No network connection';

    alert('Connection type: ' + states[networkState]);
}

Worklight 应用程序是使用所有必需的配置(config.xml 等)生成的,因此不需要进一步的设置;只需根据您的应用调整代码 fragment 。

对于我的 iPhone 5s 和我正在使用的特定运营商,我在使用 3G 时获得“Cell generic connection”,在使用 WiFi 时获得“WiFi 连接”。所以我怀疑这也取决于您的运营商设置,但这个 API 可以满足您的要求。

关于android - IBM Worklight 6.1 - 如何检查连接类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22610327/

相关文章:

android - 如何获得 DragEvent.ACTION_DROP 的正确 X、Y 坐标

android - 如何在Android中的SQLite数据库中保存多个值?

ios - ReplayKit:从未输入 startRecording() 完成处理程序

javascript - 如何使用 javascript 在 Facebook 上分享文本?

java - flutter 错误 : Could not resolve all artifacts for configuration ':image_picker_android:debugUnitTestRuntimeClasspath'

java - 如何通过Java以编程方式访问网站?下载 HTML 代码、保存 cookie、填写和发送表格等

ios - QuartzCore PDF套件

ios - 我需要访问 TableViewDelegate 之外的 TableView 的选定行的标题

javascript - Cordova Telerik Native 转换插件

javascript - 卡片布局面板未在 Sencha Touch 2.2 中呈现