龙空技术网

设置按钮,来检测是否有网络连接

听雨词 321

前言:

此刻小伙伴们对“getnetworkinfo过时了”大概比较关心,同学们都想要学习一些“getnetworkinfo过时了”的相关资讯。那么小编同时在网摘上搜集了一些有关“getnetworkinfo过时了””的相关知识,希望兄弟们能喜欢,朋友们快快来学习一下吧!

本期教程为:在应用界面设置一个按钮,用来检测当前的网路状态,如果有网,则提示有网,没网呢弹出一个对话框,可以进行下一步的调试;

效果图:

代码如下:

public class MainActivity extends AppCompatActivity {private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button = (Button) findViewById(R.id.button);button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {if(isOnline()){Toast.makeText(MainActivity.this,"有网",Toast.LENGTH_SHORT).show();}else{showAlertdialog();}}});}public boolean isOnline(){ConnectivityManager manager= (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);NetworkInfo info=manager.getActiveNetworkInfo();return (info!=null&&info.isConnected());}public void showAlertdialog(){AlertDialog.Builder dialog=new AlertDialog.Builder(this);dialog.setPositiveButton("确定",null);dialog.setNegativeButton("取消",null);dialog.setMessage("网络似乎出现问题了");dialog.show();}}

1:大致思路是:对按钮设置一个监听,判断有没有网络;

2:设置两个方法,一个为获取当前网络状态的方法,返回true或者false两种状态;另一个方法为弹出对话框的方法,当没有网络连接的时候调用此方法;

3:button的监听中,判断第一个方法返回的数据是有网还是没网,有网调用toast方法,没网调用alertdialog方法;

tips:manifest 文件中需要添加权限,才能访问网络状态;

标签: #getnetworkinfo过时了