android模仿打电话期间手机靠近息屏,远离亮屏

由于项目有个在打电话时靠近时要息屏远离手机是要亮屏的需求,经过一顿google和百度都是说

**1.**要释放电源锁(mWakeLock.release())和获取电源锁(mWakeLock.acquire())来达到这样的效果,但是这样并不能像系统打电话的那要亮屏息屏。

**2.**又有人说是如下方法,但是这样需要获取系统权限,也放弃了

mPowerManager.goToSleep(SystemClock.uptimeMillis());
mPowerManager.wakeUp(SystemClock.uptimeMillis());

**3.**又有人说要mPolicyManager.lockNow();来锁定屏幕,这种也需要用户的授权,麻烦就没有尝试
以上方法参考地址

**4.**啰嗦了这么多下面说一下我自己的处理方式:

1.通过SensorManager来判断用户是远离还是靠近手机
2.动态调节屏幕亮度
3.显示黑色的遮罩层

提供个思路,代码就不贴了,如果有更好的方法求大佬指教!!!

demo下载地址

--------------2018.9.29分割线----------------------
最近做api适配发现在api >=21的时候系统提供了一个flag支持自动息屏亮屏的功能,只要将下面代码放入activity的onCreate()里面就行了,下

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值