联网类型 - Connection

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

Connection API 可以判断设备的联网类型,比如 WIFI ,蜂窝移动网络等等。你可以根据用户的联网的类型,去让应用去做相应的事情。

想要使用这个功能,我们需要先安装一下 network-information 这个插件。在前面介绍 online 和 offline 事件的时候,我们已经安装了这个插件。

用命令可以判断一下应用是否已经安装了这个插件。

打开终端,进入到应用项目的目录 .. cd desktop/hello

然后用 phonegap local plugin list … 这个命令可以查看项目已经安装的插件 … 在这里,你可以看到 org.apache.cordova.network-information

证明已经安装好了这个插件。

下面打开应用的 index.js ….

我们先去定义一个检查连接的函数 … checkConnection: function() {},

这个名称你可以根据自己的需求去命令它。

在这个函数里,我们可以使用 connection.type 来检查当前的网络连接的类型 …. 前面我们要加上一个 navigator ,因为 connection.type 是在 navigator 下面。

navigator.connection.type;

我们可以把检查到的联网类型输出到控制台上面。

console.log('网络连接的类型是:' + navigator.connection.type);

下面我们可以决定在什么情况下执行这个检查联网类型的动作。 你可以把它放在 deviceready 事件发生的时候,这样这个检查联网类型的动作在 phonegap 准备好以后,会被执行一次。

不过这里我们可以把它放在 resume 这个事件发生以后要做的事情里面,这样每次恢复应用的时候,都会去检查一次联网的类型 ..

onResume: function(){
app.checkConnection();
},

保存 ….

打开终端,重新编译安装一下这个应用 …. phonegap run ios

打开 weinre 调试工具的控制台 ….

按一下 Home 键 …. 再次打开应用 … 这样会触发 resume 事件 … 也就会去执行检查联网类型的动作,它会把联网类型输出到控制台上 …

在控制台上,你会看到,现在的 网络连接的类型是: wifi

下面我们再断开网络连接试一下 ….

按下 Home 键,再回到应用 …. 在控制台上,会显示现在的网络连接的类型是 none …. 也就是没有连接网络。

重新定义连接类型的常量

在这里显示的这个网络连接类型的名称,我们可以重新去定义一下。

回到 index.js …

使用这段代码 … 这里我们先把检查到的连接类型交给 networkState ….

然后新建一个叫 states 的对象,并且重新定义了各种网络连接类型的名称 ….

最后我们再修改一下这个 console.log 里的东西,想要显示重新定义的名称 … 把这个 navigator.connection.type s

改成 states[networkState]

重新编译安装一下应用 ….

按下 Home 键 … 再打开应用 ….

现在控制台上显示的网络连接的类型,就会使用我们重新定义的名称了。

联网类型 - Connection《 PhoneGap 基础 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点