使用GSM网络进行HTTP连接,而不是WiFi

时间:2010-09-29 16:20:59

标签: android http wifi gsm

我需要在Android上使用GSM连接发出HTTP请求,而不是Wifi。

我目前的解决方案是断开所有Wi-Fi连接并执行请求。有没有更好的解决方案?我在API中找不到任何相关的方法(我查看了包org.apache.http,但似乎完全没有意识到应该使用什么类型的连接)。

2 个答案:

答案 0 :(得分:1)

如果应用程序需要通过GSM now 提交HTTP请求,在启动时或在用户触发此操作时,按照问题提出的建议是完美的。

但是如果应用程序需要提交HTTP请求 时连接类型是GSM,那就有点不同了。在最后一种情况下,我会这样做:

private static boolean isOnlineUsingGsm(Context ctx) {
    final ConnectivityManager connectManager = (ConnectivityManager)ctx.getSystemService(Context.CONNECTIVITY_SERVICE);

    // Return true if connected thru GSM
    return connectManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED;
}

private void somewhereInTheCode() {
    if (isOnlineUsingGsm(context)) {
        sendHttpRequest();
    }
    // else don't send it
}

答案 1 :(得分:0)

  

但似乎完全没有意识到应该使用什么类型的连接

正确 - 间接是你的朋友 - 位置服务(例如)是相同的