您的位置:首页 > 移动开发 > Android开发

Android常用代码段

2016-01-22 15:41 423 查看
出处:http://mp.weixin.qq.com/s?__biz=MzA4NjQxMjA5OA==&mid=401797794&idx=2&sn=a0a47cea6f60414a38c34bed25fbd3ad&scene=23&srci

1.拨打电话:

public static void call(Context context,String phoneNumber){
context.startActivity(new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+phoneNumber)));
}


2.进入拨号界面

public static void callDial(Context context,String phoneNumber){
context.startActivity(new Intent(Intent.ACTION_DIAL,Uri.parse("tel:"+phoneNumber)));
}


3.发送短信

public static void sendSms(Context context,String phoneNumber,
String content){
Uri uri=Uri.parse("smsto:"
+(TextUtils.isEmpty(phoneNumber)?"":phoneNumber));
Intent intent=new Intent(Intent.ACTION_SENDTO,uri);
intent.putExtra("sms_body",TextUtils.isEmpty(content)?"":content);
context.startActivity(intent);
}


4.唤醒屏幕并解锁

public static void wakeUpAndUnlock(Context context){
KeyguardManager km=(KeyguardManager)context.getSystemService(Context.KEYGUARD_SERVICE);
KeyguardManager.KeyguardLock kl=km.newKeyguardLock("unLock");
//解锁
kl.disableKeyguard();
//获取电源管理器对象
PowerManager pm=(PowerManager)context.getSystemService(Context.POWER_SERVICE);
//获取PowerManager.WakeLock对象,后面的参数|表示同时传入两个值,最后的是LogCat里用的Tag
PowerManager.WakeLock wl=pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP|PowerManager.SCREEN_DIM_WAKE_LOCK,"bright");
//点亮屏幕
wl.acquire();
//释放
wl.release();
}


5.需要添加权限

<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>


6.判断当前App处于前台还是后台状态

public static boolean isApplicationBackground(finalContext context){
ActivityManager am=(ActivityManager)context
.getSystemService(Context.ACTIVITY_SERVICE);
@SuppressWarnings("deprecation")
List<ActivityManager.RunningTaskInfo>tasks=am.getRunningTasks(1);
if(!tasks.isEmpty()){
ComponentName topActivity=tasks.get(0).topActivity;
if(!topActivity.getPackageName().equals(context.getPackageName())){
return true;
}
}
return false;
}


7.需要添加权限

<uses-permission android:name="android.permission.GET_TASKS"/>

8.判断当前手机是否处于锁屏(睡眠)状态

public static boolean isSleeping(Context context){
KeyguardManager kgMgr=(KeyguardManager)context
.getSystemService(Context.KEYGUARD_SERVICE);
boolean isSleeping=kgMgr.inKeyguardRestrictedInputMode();
return isSleeping;
}


9.判断当前是否有网络连接

public static boolean isOnline(Context context){
ConnectivityManager manager=(ConnectivityManager)context
.getSystemService(Activity.CONNECTIVITY_SERVICE);
NetworkInfo info=manager.getActiveNetworkInfo();
if(info!=null&&info.isConnected()){
return true;
}
return false;
}


10.判断当前是否是WIFI连接状态

public static boolean isOnline(Context context){
ConnectivityManager manager=(ConnectivityManager)context
.getSystemService(Activity.CONNECTIVITY_SERVICE);
NetworkInfo info=manager.getActiveNetworkInfo();
if(info!=null&&info.isConnected()){
return true;
}
return false;
}


11.安装APK

public static void installApk(Context context,File file){
Intent intent=newIntent();
intent.setAction("android.intent.action.VIEW");
intent.addCategory("android.intent.category.DEFAULT");
intent.setType("application/vnd.android.package-archive");
intent.setDataAndType(Uri.fromFile(file),
"application/vnd.android.package-archive");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}


12.判断当前设备是否为手机

public static boolean isPhone(Context context){
TelephonyManager telephony=(TelephonyManager)context
.getSystemService(Context.TELEPHONY_SERVICE);
if(telephony.getPhoneType()==TelephonyManager.PHONE_TYPE_NONE){
return false;
}else{
return true;
}
}


13.获取当前设备宽高,单位px

@SuppressWarnings("deprecation")
public static int getDeviceWidth(Context context){
WindowManager manager=(WindowManager)context
.getSystemService(Context.WINDOW_SERVICE);
return manager.getDefaultDisplay().getWidth();
}

@SuppressWarnings("deprecation")
public static int getDeviceHeight(Context context){
WindowManager manager=(WindowManager)context
.getSystemService(Context.WINDOW_SERVICE);
return manager.getDefaultDisplay().getHeight();
}


14.获取当前设备的IMEI,需要与上面的isPhone()一起使用

@TargetApi(Build.VERSION_CODES.CUPCAKE)
public static String getDeviceIMEI(Context context){
String deviceId;
if(isPhone(context)){
TelephonyManager telephony=(TelephonyManager)context
.getSystemService(Context.TELEPHONY_SERVICE);
deviceId=telephony.getDeviceId();
}else{
deviceId=Settings.Secure.getString(context.getContentResolver(),
Settings.Secure.ANDROID_ID);

}
return deviceId;
}


15.获取当前设备的MAC地址

public static String getMacAddress(Context context){
String macAddress;
WifiManager wifi=(WifiManager)context
.getSystemService(Context.WIFI_SERVICE);
WifiInfo info=wifi.getConnectionInfo();
macAddress=info.getMacAddress();
if(null==macAddress){
return "";
}
macAddress=macAddress.replace(":","");
return macAddress;
}


16.获取当前程序的版本号

public static String getAppVersion(Context context) {
String version = "0";
try {
version = context.getPackageManager().getPackageInfo(
context.getPackageName(), 0).versionName;
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return version;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: