Android开发常用代码片段(一)
16lz
2021-01-23
Android开发常用代码片段(一)
前一篇:没有啦
后一篇: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
跳转至拨号界面
/** * 跳转至拨号界面 * @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<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;}
【注】该功能需要以下权限:
- 任务状态:android.permission.GET_TASKS
更多相关文章
- android 屏幕适配
- Android View绘制及事件(一)屏幕的视图层级,窗口概念初识
- [APK破解]终极狂飙3D漂移,无限金钱,解锁全部关卡
- Android根据上下文对象Context找到对应的Activity
- Android屏幕尺寸适配注意事项
- android 屏幕监听滑动事件