android studio 开启网络,干货 | 如何用Android Studio完成App检查网络
大家好,接下来我会不定期推送一些关于Android Studio开发App的文章,第一次写,有什么建议欢迎私聊。下面就进入正题吧!一个App最基本的功能,检查网络和检查更新。首先是检查网络,在这里我先把Activity类和Utils分类,如下图我的思路如下:打开app--判断网络--不可用--弹窗--打开设置。我们新建一个Java类,命名为NetworkUtil,写一个isNetworkAvail
大家好,接下来我会不定期推送一些关于Android Studio开发App的文章,第一次写,有什么建议欢迎私聊。
下面就进入正题吧!
一个App最基本的功能,检查网络和检查更新。
首先是检查网络,在这里我先把Activity类和Utils分类,如下图
我的思路如下:
打开app--判断网络--不可用--弹窗--打开设置。
我们新建一个Java类,命名为NetworkUtil,写一个isNetworkAvailable()方法来判断网络是否可用。
/** * 检查网络是否可用 * @param context * @return */public static boolean isNetworkAvailable(Context context) { ConnectivityManager manager = (ConnectivityManager) context .getApplicationContext().getSystemService( Context.CONNECTIVITY_SERVICE); if (manager == null) { return false; } NetworkInfo networkinfo = manager.getActiveNetworkInfo(); if (networkinfo == null || !networkinfo.isAvailable()) { return false; } return true;}接下来回到SplashActivity,添加下面的方法。
/** * 启动时判断用户网络是否可用,如不可用,则弹窗让用户设置网络, * 如网络可用,则检查是否有更新 */ @Override protected void onStart() { if (!NetworkUtil.isNetworkAvailable(this)) { //网络不可用时弹出设置窗口 showSetNetworkUI(this); } else { //如果网络可用就检查更新,然后跳到主界面。 } super.onStart(); }@Overrideprotected void onResume() { super.onResume();}当网络不可用时需要弹窗,写一个弹窗的方法。
/** 弹窗、打开设置网络界面*/ public void showSetNetworkUI(final Context context) { // 提示对话框 AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle("网络设置提示") .setMessage("网络连接不可用,是否进行设置?") .setPositiveButton("设置", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub Intent intent = null; // 判断手机系统的版本 即API大于10 就是3.0或以上版本 if (android.os.Build.VERSION.SDK_INT > 10) { intent = new Intent( android.provider.Settings.ACTION_WIFI_SETTINGS); } else { intent = new Intent(); ComponentName component = new ComponentName( "com.android.settings", "com.android.settings.WirelessSettings"); intent.setComponent(component); intent.setAction("android.intent.action.VIEW"); } context.startActivity(intent); } }) .setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); SplashActivity.this.finish(); System.exit(0); } }).show(); }当用户想要退出时,还需增加一个双击退出的功能,也很简单。
/** * 双击退出软件 */@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {// 双击退出软件 if (keyCode == KeyEvent.KEYCODE_BACK) { if (flag == false) { flag = true; Toast.makeText(getApplicationContext(), "再按一次退出软件", Toast.LENGTH_SHORT).show(); new Handler().postDelayed(new Runnable() { @Override public void run() { flag = false; } }, 2000); } else { finish(); System.exit(0); } } return false;}最后不要忘了在AndroidManifest.xml添加网络权限。
检查网络的功能就完成了。
回复”检查网络“即可获取【提取码】
更多推荐
所有评论(0)