Android应用程序,如果与服务器断开连接,则显示对话框

时间:2016-05-02 09:25:23

标签: android performance sockets tcp

我正在构建一个控制同一网络上设备的Android应用程序(细节无关紧要)。连接是通过带套接字的TCP设置的。

这是我正在尝试做的事情:

  • 当应用程序启动时要求用户连接时显示一个对话框(该对话框已经构建完毕!)
  • 如果连接丢失,则中断活动,并显示另一个对话框

该应用程序使用MainActivity和Fragment布局构建,以管理不同的选项卡。 请记住,我是Android编程的新手,我主要是寻找最好的编码方式,而不是修修补补:)

现在,相对于连接,我有一个MainActivity,它在onCreate()方法中实例化一个“Connection”对象。 “Connection”本身在调用时会执行Asynctask以创建套接字并将其绑定到服务器。

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

你可以查看这个已回答的问题:

How to check if TCP socket is connected in android app

并且您可以使用asyncTask每隔{1-5}秒进行一次检查,如果未连接,则会抛出一个新对话框

答案 1 :(得分:0)

您可以使用以下代码检查互联网连接:

 ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
    if(connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED ||
            connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) {
   //write the code which established connection with server
}else{
   // generate a alert
}
相关问题