1

我开发了一个 android 和一个 iOS phonegapp 应用程序。原生 android 代码加载应用程序的 html 文件:

super.loadUrl() 

在这个 html 文件中,我启动了对 web 服务的 ajax 请求。

但是在我连接到 web 服务并进行 ajax 调用之前,我会测试到 web 服务的连接,当我无法连接到 web 服务时,应用程序应该在我加载 html 之前关闭,并发出警报或警告。

4

1 回答 1

0

您可以使用 HttpURLConnection 发送请求并检查响应正文中是否存在该页面独有的文本(而不是仅仅检查是否有响应,以防万一出现错误或维护页面或正在提供的东西) .

Apache Commons 有一个库,它删除了许多用 Java 发出 Http 请求的样板。

我从来没有专门在 Android 上做过这样的事情,但如果有什么不同,我会感到惊讶。

这是一个简单的例子:

URL url = new URL(URL_TO_APPLICATION);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
InputStream stream = connection.getInputStream();
Scanner scanner = new Scanner(stream); // You can read the stream however you want. Scanner was just an easy example
boolean found = false;
while(scanner.hasNext()) {
    String next = scanner.next();
    if(TOKEN.equals(next)) {
        found = true;
        break;
    }
}

if(found) {
    doSomethingAwesome();
} else {
    throw aFit();
}

也试试这个

他可能需要 Java 代码,因为他在 Android 上工作。Java 等价物——我相信它适用于 Android——应该是:

InetAddress.getByName(host).isReachable(timeOut)
于 2012-10-23T06:09:52.137 回答