在做android开发过程中,会有些公共的部分是常用到的,比如,检测手机是否联网,手机中是否有内存卡,当前手机号码等等信息。今天,我们简单总结一下,几个比较常用的小功能,并且贴上代码。
1、检测是否有手机卡
public static boolean existSDcard() {
if (android.os.Environment.MEDIA_MOUNTED.equals(android.os.Environment
.getExternalStorageState())) {
return true;
} else
return false;
}
2、获取到当前手机号码
/*
* 获取当前的手机号
*/
public String getLocalNumber() {
TelephonyManager tManager = (TelephonyManager) this
.getSystemService(TELEPHONY_SERVICE);
String number = tManager.getLine1Number();
; return number;
}
3、当前网络连接状态
/**
* 判断当前网络连接状态
* @param context
* @return
*/
public static boolean isNetworkConnected(Context context) {
NetworkInfo networkInfo = ((ConnectivityManager) context
.getApplicationContext().getSystemService("connectivity"))
.getActiveNetworkInfo();
if (networkInfo != null) {
return networkInfo.isConnectedOrConnecting();
}
return false;
}
4、应用是否安装在手机上
/**
* 判断该应用是否安装在手机上
* @param packageName 要判断应用的包名
*/
private boolean checkAPK(String packageName) {
List<PackageInfo> pakageinfos = getPackageManager().getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);
for (PackageInfo pi : pakageinfos) {
String pi_packageName = pi.packageName;
if(packageName.endsWith(pi_packageName)){
return true;
}
}
return false;
}
5、获取apk包的签名信息
这是获取apk包的签名信息
private String getSign(Context context) {
PackageManager pm = context.getPackageManager();
List<PackageInfo> apps = pm.getInstalledPackages(PackageManager.GET_SIGNATURES);
Iterator<PackageInfo> iter = apps.iterator();
while(iter.hasNext()) {
PackageInfo packageinfo = iter.next();
String packageName = packageinfo.packageName;
return packageinfo.signatures[0].toCharsString();
if (packageName.equals(instance.getPackageName())) {
MediaApplication.logD(DownloadApk.class, packageinfo.signatures[0].toCharsString());
return packageinfo.signatures[0].toCharsString();
}
}
return null;
}
6、检测是否联网
public boolean checkInternet() {
ConnectivityManager cm = (ConnectivityManager) this
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getActiveNetworkInfo();
if (info != null && info.isConnected()) {
// 能连接Internet
return true;
} else {
// 不能连接到
return false;
}
}