9

当我的手机(Android)没有连接到互联网并且我打开浏览器应用程序时,它会弹出一个对话框,上面写着:

此应用程序需要网络访问。
启用移动网络或 Wi-Fi 以下载数据。

然后它有两个按钮 - 一个用于设置,一个用于取消。

按设置将我直接带到“无线和网络”设置对话框。

我想从 phoneGap 应用程序中显示一个类似的对话框。这可以做到吗?

4

1 回答 1

1

PhoneGap 的诊断插件可能会给你答案。

从以下链接下载插件:下载链接

比通过以下步骤:

  1. 在 html 标头部分中的cordova.js之后添加diagnostic.js文件。

< script type="text/javascript" charset="utf-8" src="cordova-XXXjs"></script>
< script type="text/javascript" charset="utf-8" src="diagnostic.js " > </脚本>

  1. 在您的项目中创建一个名为src/net/avantic/diagnosticPlugin的目录并将Diagnostic.java移动到其中。

  2. 在您的res/xml/plugins.xml文件中添加以下行:

<插件名称="诊断"值="net.avantic.diagnosticPlugin.Diagnostic"/>

  1. 并在AndroidManifest.xml添加:

< uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<use-permission android:name="android.permission.BLUETOOTH" />

除了调用 WIFI 设置对话框之外,您还需要在任意位置添加以下代码:

 //Check whether Wifi is enable or not...
 window.plugins.diagnostic.isWifiEnabled(wifiEnabledSuccessCallback, wifiEnabledErrorCallback);

 //If function success callback result is 0 it will open the wifi settings dialog box...
 function wifiEnabledSuccessCallback(result) {
      if (!result){
           alert("You must enable the Wi-Fi in device settings.");
           window.plugins.diagnostic.switchToWifiSettings();
        }
      else{
            alert("WiFi is ON!");
          }
     }

  function wifiEnabledErrorCallback(error) {
    console.log(error);
  }

希望上述解决方案对您有用..

于 2015-09-28T11:22:39.900 回答