# AndroidNetwork
**Repository Path**: chenqy/android-network
## Basic Information
- **Project Name**: AndroidNetwork
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-10-11
- **Last Updated**: 2024-02-27
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
#使用场景
*1. 获取网络运营商*
*2. 获取网络状态*
*3. 获取网络源、通信技术类型*
*4. 打开/判断网络设置*
*5. 监听网络变化*
#使用方法
##1. 获取网络运营商
NetworkProvider.get().checkSimState(Context context); //检查sim卡
NetworkProvider.get().getProvider(Context context); //获取运营商
##2. 获取网络状态
NetworkState.get().getState(Context context);//获取网络状态
NetworkState.get().getStateS(Context context);//获取网络状态
public enum State{
UNKNOWN,
CONNECTED_ING, //正在连接
CONNECTED, //连接
DISCONNECTING_ING, //正在断开
DISCONNECTING, //断开
NO_AVAILABLE, //不可用
AVAILABLE, //不可用
SUSPENDED, //网络暂停
}
NetworkState.get().isAvailable(Context context);//是否可用
NetworkState.get().isAvailableS(Context context);//是否可用
NetworkState.get().isConnected(Context context);//是否连接
##3. 获取网络源、通信技术类型
NetworkType.get().getSourceType(Context context);//获取网络源类型
NetworkType.get().getSourceTypeS(Context context);//获取网络源类型
public enum Source {
UNKNOWN, //未知种类
BLUETOOTH, //蓝牙网络
DUMMY, //虚拟网络
ETHERNET, //以太网
MOBILE, //移动流量
WIFI, //Wifi
WIMAX //WIMAX全球互通微波存取数据连接
}
NetworkType.get().getCTType(Context context);//获取通信技术类型
NetworkType.get().getCTTypeS(Context context);//获取通信技术类型
public enum CT {
UNKNOWN, //未知种类,或者没连接,或者不可用
Generation2, //2G
Generation3, //3G
Generation4, //4G
Generation5 //5G
}
##4. 打开/判断网络设置
NetworkSetting.get().isMobileNetworkOpen(Context context);//判断移动网络是否打开
NetworkSetting.get().isWifiNetworkOpen(Context context);//判断Wifi网络是否打开
NetworkSetting.get().openSetting(Context context);//打开网络设置界面
##5. 监听网络变化
在需要知道网络参数的地方开启/解除网络监听
public void openReceiver(View view){
NetworkHelper.get().createNetworkBroadcast(this);
}
public void closeReceiver(View view){
NetworkHelper.get().unregisterNetworkBroadcast(this);
}
之后实现观察者的方法从中取出NetworkBean对象即可
public class NetWorkActivity extends Activity implements Observer {
private TextView mTV;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_network);
NetworkObservable.get().addObserver(this);
mTV = findViewById(R.id.txt_netWork);
}
@Override
public void update(Observable o, Object arg) {
if (arg!=null){
NetworkBean bean = (NetworkBean) arg;
mTV.setText(bean.toString());
}
}
}