1、判断是否联网
public boolean isNetworkConnected() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();
return ni != null && ni.isConnectedOrConnecting();
}
2、判断网络类型
/**
* 获取当前网络类型
* @return 0:没有网络 1:WIFI网络 2:WAP网络 3:NET网络
*/
public int getNetworkType() {
int netType = 0;
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo == null) {
return netType;
}
int nType = networkInfo.getType();
if (nType == ConnectivityManager.TYPE_MOBILE) {
String extraInfo = networkInfo.getExtraInfo();
if(!StringUtils.isEmpty(extraInfo)){
if (extraInfo.toLowerCase().equals("cmnet")) {
netType = NETTYPE_CMNET;
} else {
netType = NETTYPE_CMWAP;
}
}
} else if (nType == ConnectivityManager.TYPE_WIFI) {
netType = NETTYPE_WIFI;
}
return netType;
}
3、对比手机版本
/**
* 判断当前版本是否兼容目标版本的方法
* @param VersionCode
* @return
*/
public static boolean isMethodsCompat(int VersionCode) {
int currentVersion = android.os.Build.VERSION.SDK_INT;
return currentVersion >= VersionCode;
}
4、App安装包信息
/**
* 获取App安装包信息
* @return
*/
public PackageInfo getPackageInfo() {
PackageInfo info = null;
try {
info = getPackageManager().getPackageInfo(getPackageName(), 0);
} catch (NameNotFoundException e) {
e.printStackTrace(System.err);
}
if(info == null) info = new PackageInfo();
return info;
}
5、储存应用基本信息
public Properties get() {
FileInputStream fis = null;
Properties props = new Properties();
try{
//读取files目录下的config
//fis = activity.openFileInput(APP_CONFIG);
//读取app_config目录下的config
File dirConf = mContext.getDir(APP_CONFIG, Context.MODE_PRIVATE);
fis = new FileInputStream(dirConf.getPath() + File.separator + APP_CONFIG);
props.load(fis);
}catch(Exception e){
}finally{
try {
fis.close();
} catch (Exception e) {}
}
return props;
}
private void setProps(Properties p) {
FileOutputStream fos = null;
try{
//把config建在files目录下
//fos = activity.openFileOutput(APP_CONFIG, Context.MODE_PRIVATE);
//把config建在(自定义)app_config的目录下
File dirConf = mContext.getDir(APP_CONFIG, Context.MODE_PRIVATE);
File conf = new File(dirConf, APP_CONFIG);
fos = new FileOutputStream(conf);
p.store(fos, null);
fos.flush();
}catch(Exception e){
e.printStackTrace();
}finally{
try {
fos.close();
} catch (Exception e) {}
}
}
6、读取手机及应用相关信息
String versionName = getPackageManager().getPackageInfo(
getPackageName(), 0).versionName;
int versionCode = getPackageManager().getPackageInfo(
getPackageName(), 0).versionCode;
String VERSION = android.os.Build.VERSION.RELEASE;// 系统版本
String MODEL = android.os.Build.MODEL;// 手机型号
textView.setText("versionName" + versionName + "\n" + "versionCode"
+ versionCode + "\n" + "系统版本" + VERSION + "\n" + "手机型号"
+ MODEL);