Android开发常用代码片段(一)

  文章目录

  Android开发常用代码片段(一)

  拨打电话

  跳转至拨号界面

  发送短信

  唤醒屏幕并解锁

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

  拨打电话

  /**

  * 拨打电话

  * @param context 上下文

  * @param phoneNumber 电话号码

  */

  private static void call(Context context, String phoneNumber) {

  context.startActivity( new Intent(Intent.ACTION_CALL, Uri.parse( "tel:" + phoneNumber)));

  }

  【注】该功能需要以下权限:

  拨打电话:android.permission.CALL_PHONE

  跳转至拨号界面无锡做×××多少钱:http://www.bhnkyy39.com/

  /**

  * 跳转至拨号界面

  * @param context 上下文

  * @param phoneNumber 电话号码

  */

  private static void callDial(Context context, String phoneNumber) {

  context.startActivity( new Intent(Intent.ACTION_DIAL, Uri.parse( "tel:" + phoneNumber)));

  }

  【注】该功能需要以下权限:

  拨打电话:android.permission.CALL_PHONE

  发送短信

  /**

  * 发送短信

  * @param context 上下文

  * @param phoneNumber 电话号码

  * @param content 短信内容

  */

  private 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);

  }

  唤醒屏幕并解锁

  /**

  * 唤醒屏幕并解锁

  * @param context 上下文

  */

  private 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();

  }

  【注】该功能需要以下权限:

  允许程序禁用键盘锁:android.permission.DISABLE_KEYGUARD

  唤醒锁:android.permission.WAKE_LOCK

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

  /**

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

  *

  * @param context 上下文

  * @return 判断结果

  */

  private static boolean isApplicationBackground(final Context context) {

  ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);

  @SuppressWarnings("deprecation")

  List tasks = am.getRunningTasks(1);

  if (!tasks.isEmpty()) {

  ComponentName topActivity = tasks.get(0).topActivity;

  if (!topActivity.getPackageName().equals(context.getPackageName())) {

  return true;

  }

  }

  return false;

  }

  【注】该功能需要以下权限:

  任务状态:android.permission.GET_TASKS


猜你喜欢

转载自blog.51cto.com/14263495/2413316
今日推荐