首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何提醒弹出如果没有wifi或互联网3G连接?

如何提醒弹出如果没有wifi或互联网3G连接?
EN

Stack Overflow用户
提问于 2012-05-18 16:32:34
回答 2查看 1.6K关注 0票数 0

我正在创建应用程序,它使用

代码语言:javascript
复制
<uses-permission android:name="android.permission.INTERNET" />

我正在使用WebView启动URL。但是当手机没有连接到WIFI和互联网3G时,在WebView中就会出现准确的网址链接。

我不想让用户在WebView中看到网址链接,如果没有互联网连接,我该怎么做?

致以最好的问候,Virak

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-18 16:35:14

检查以下函数的返回值(true表示联机,false表示非联机),并根据需要修改输出。

代码语言:javascript
复制
private boolean haveNetworkConnection() {
        boolean haveConnectedWifi = false;
        boolean haveConnectedMobile = false;

        ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo[] netInfo = cm.getAllNetworkInfo();
        for (NetworkInfo ni : netInfo) {
            if (ni.getTypeName().equalsIgnoreCase("WIFI"))
                if (ni.isConnected())
                    haveConnectedWifi = true;
            if (ni.getTypeName().equalsIgnoreCase("MOBILE"))
                if (ni.isConnected())
                    haveConnectedMobile = true;
        }
        return haveConnectedWifi || haveConnectedMobile;
    }

如果您希望在没有连接的情况下显示弹出窗口或Toast,那么在您的活动中使用该函数将允许您执行以下操作,这将显示toast。

代码语言:javascript
复制
if(!haveNetworkConnection()){
    Toast.makeText(this,"No internet connection",Toast.LENGTH_LONG).show();
}else{
    //Do whatever you need if there IS connectivity
}

我喜欢使用我给你的函数(我不知道几个月前我从哪里复制的),因为它允许我很容易地修改它,如果我需要它,只在我有wifi或移动互联网的情况下才返回true,例如,如果有wifi连接,我可以下载一个高清晰度视频 only

票数 2
EN

Stack Overflow用户

发布于 2012-05-18 16:56:40

检查网络连接的示例代码;

代码语言:javascript
复制
public static boolean checkInternetConnection(Context context) {

        ConnectivityManager conMgr = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);

        // ARE WE CONNECTED TO THE NET?
        if (conMgr.getActiveNetworkInfo() != null
                && conMgr.getActiveNetworkInfo().isAvailable()
                && conMgr.getActiveNetworkInfo().isConnected()) {
            return true;
        } else {
            Log.w(TAG, "Internet Connection NOT Present");
            return false;
        }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10649277

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档