欢迎使用CSDN-markdown编辑器
来源:互联网 发布:java画图程序源代码 编辑:程序博客网 时间:2024/05/16 19:46
1.添加权限
<uses-permission android:name="android.permission.INTERNET"/> <!-- 网络权限 --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <!-- 网络检测 -->
2.BaseActivity
public class BaseActivity extends Activity { private OnNetListener onNetListener; protected NetBroadcastReceiver netBroadcastReceiver; /** * 注册net广播 */ @Override protected void onStart() { // TODO Auto-generated method stub IntentFilter filter = new IntentFilter(); filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); netBroadcastReceiver = new NetBroadcastReceiver(); registerReceiver(netBroadcastReceiver, filter); super.onStart(); } @Override protected void onStop() { // TODO Auto-generated method stub super.onStop(); } /** * 关闭net广播 */ @Override protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); unregisterReceiver(netBroadcastReceiver); } /** * 网络广播监听 * @author Administrator * */ class NetBroadcastReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub int NetType = -1; String NetName = "没有网络"; ConnectivityManager mConnectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo netInfo = mConnectivityManager.getActiveNetworkInfo(); if(netInfo != null && netInfo.isAvailable()){ switch (netInfo.getType()) { case ConnectivityManager.TYPE_MOBILE:NetType = 0;break; case ConnectivityManager.TYPE_WIFI:NetType = 1;break; case ConnectivityManager.TYPE_ETHERNET:NetType = 2;break; default: break; } NetName = netInfo.getTypeName(); } onNetListener.onNetLoader(NetType,NetName); } } public void setOnNetListener(OnNetListener onNetListener){ this.onNetListener = onNetListener; } public abstract interface OnNetListener{ /** * -1 :无网络 0:2g/3G 1:wifi 2:有线网 * @param netType * @param NetName */ public abstract void onNetLoader(int netType,String NetName); }}
- 继承BaseActivity ,在使用的地方调用回调函数
setOnNetListener(new OnNetListener() { @Override public void onNetLoader(int netType, String NetName) { // TODO Auto-generated method stub Toast.makeText(LoginActivity.this, NetName, Toast.LENGTH_SHORT).show(); } });
0 0
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- ~生活日记 01 20150508~
- 数据结构:斐波那契查找原理解析
- Linux中定时任务crontab
- 欢迎使用CSDN-markdown编辑器
- LeetCode 205:Isomorphic Strings
- 欢迎使用CSDN-markdown编辑器
- DBUS基础学习记录
- 数据结构:平衡二叉树(AVL树)
- android:priority优先级相同,包名次序怎么排序?
- C#操作Excel文件(读取Excel,写入Excel)
- 公开免费的stun服务器,解决内外网问题
- [leetcode] 51.N-Queens
- 麦当劳盈利模式
- 产品经理必读