首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我想检查网络连接状态,在使用getActiveNetworkInfo方法时卡住了,该方法被禁用

我想检查网络连接状态,在使用getActiveNetworkInfo方法时卡住了,该方法被禁用
EN

Stack Overflow用户
提问于 2019-06-10 13:58:48
回答 3查看 158关注 0票数 0

我基本上是想知道在API level 29中使用了NetworkInfo方法之后,如何在android中检查互联网连接状态。

我已经尝试过调用getActiveNetworkInfo方法,但它是无效的,任何快速帮助都是非常感谢的。

我被困在这一点上了..

代码语言:javascript
复制
fun verifyIfNetworkAvailable(activity: AppCompatActivity):Boolean{

        var connectivityManager = activity.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
            var networkInfo = connectivityManager.isDefaultNetworkActive

            return networkInfo != null && networkInfo.isConnected

        }

顺便说一下,我正在使用Kotlin。

EN

Stack Overflow用户

发布于 2019-06-10 16:46:45

你可以像这样检查网络连接。如果您不想检查设备连接性。

第1步添加异步类

代码语言:javascript
复制
public class YourInternetCheckerClass extends AsyncTask<Void, Void, Boolean>
{
    @Override
    protected Boolean doInBackground(Void... voids)
    {
        try
        {
            InetAddress ipAddr = InetAddress.getByName("www.google.com");
            return !ipAddr.equals("");

        }
        catch (Exception e)
        {
            Log.e("GCInternetChecker", e.toString());
            return false;
        }
    }
}

步骤2调用此异步任务,这是一个函数。

代码语言:javascript
复制
  private boolean checkInternetConnection()
    {
        try
        {
            return new GCInternetChecker().execute().get();
        }
        catch (Exception e)
        {
            return false;
        }
    }

第3步在呼叫您的服务之前检查互联网

代码语言:javascript
复制
if (this.checkInternetConnection())
{
    //call service
}
else
{
 //handle no internet. Toast or dialog box.
}
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56521182

复制
相关文章

相似问题

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