APP开发实战167-开机自启动的功能设计

本文详细介绍了Android应用如何实现在开机自启动和直接启动模式下运行,以及如何访问设备加密存储和接收用户解锁通知。通过设置`android:directBootAware`属性为`true`,应用可以注册`LOCKED_BOOT_COMPLETED`广播,在设备重启后执行必要任务。同时,讲解了如何在用户解锁设备后访问凭据加密存储,并提供了相关代码示例。
摘要由CSDN通过智能技术生成

30.15 开机自启动的功能设计

30.15.1 普通模式

对于Android7.0之前的系统,如果设计APP在系统启动之后自启动,只需在APP添加处理ACTION_BOOT_COMPLETED广播消息的代码即可。

30.15.2直接启动模式

从Android7.0开始,系统有了一种新的启动模式“直接启动”模式,针对这种模式需要做特别处理。

    当设备已开机但用户尚未解锁设备时,Android N 将在安全的“直接启动”模式下运行。 为支持此操作,系统为数据提供两个存储位置:

    凭据加密存储,这是默认存储位置,仅在用户解锁设备后可用。

    设备加密存储,该存储位置在“直接启动”模式下和用户解锁设备后均可使用。

    默认情况下,应用不会在“直接启动”模式下运行。如果应用需要在“直接启动”模式下进行操作,可以注册在此模式期间应运行的应用组件。 对于需要在“直接启动”模式下运行的应用,常见的一些用例包括:

    已安排通知的应用,如闹钟应用。

    提供重要用户通知的应用,如短信应用。

    提供无障碍服务的应用,如 Talkback。

    如果应用在“直接启动”模式下运行时需要访问数据࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值