UidChange和后台行为受限

     为了增强用户隐私,Android 9 引入了若干行为变更,如限制后台应用访问设备传感器、限制通过 Wi-Fi 扫描检索到的信息,以及与通话、手机状态和 Wi-Fi 扫描相关的新权限规则和权限组。无论采用哪一种目标 SDK 版本,这些变更都会影响运行于 Android 9 上的所有应用。后台对传感器的访问受限,Android 9 限制后台应用访问用户输入和传感器数据的能力。 如果您的应用在运行 Android 9 设备的后台运行,系统将对您的应用采取以下限制:

  • 您的应用不能访问麦克风或摄像头。
  • 使用连续报告模式的传感器(例如加速度计和陀螺仪)不会接收事件。
  • 使用变化一次性报告模式的传感器不会接收事件。

如果您的应用需要在运行 Android 9 的设备上检测传感器事件,请使用前台服务

这些规则的更新主要受影响的服务为,sensorservices,audioservices,cameraservices

 

如果应用刚从前台切换到后台,那么我们会等一分钟,等一分钟设计者的目的是为了,让当前进程有时间去进行收尾工作,然后我们才让该进程进入IDLE状态。在这里做了一个delay处理,时间到了后会调用idleUids(),最后会停止idle状态下,该UID所关联的服务。

 

       

 

下面以audioservices为例来说明sensorservices,audioservices,cameraservices是如何受到影响的。简单描述就是具体就是audioservices在首次被调用的时候是向 ActivityManagerService 注册 UidObserver&#

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值