android - Android Q 后台限制
问题描述
我需要在收到推送时显示一个活动,但我正在获取Background activity start from package-name blocked.
系统 Toast。这是用户需要执行某些任务的身份验证活动。我不管理电话或 NFC 交互,因此我不需要实际启动“特殊”服务,但显示通知还不够——我需要那个活动。SYSTEM_ALERT_WINDOW 权限没有帮助。那么,我应该重新实现我的所有流程以仅使用通知吗?应用程序关闭时是否有可能启动活动(后堆栈中没有活动)?
解决方案
Android Q 对应用程序何时可以启动 Activity 进行了限制。这种行为改变有助于最大限度地减少对用户的干扰,并使用户更好地控制屏幕上显示的内容。您可以在此处查看完整文档
从 Android Q Beta 4 开始,此更改具有以下属性:
- 如果您在没有用户交互的情况下启动活动,则会影响您的应用
- 使用通知触发的活动进行缓解
- 通过打开允许后台活动启动开发人员选项禁用限制
推荐阅读
- forms - Powerapp 表单功能保持数据源正确但不读取
- c++ - C++ 类中的值未更新
- algorithm - 给定一个包含 n 个点的数组,两点之间的距离定义为 min(abs(x1-x2), abs(y1-y2)) 。找到第 k 个最小距离
- python - 如果值存在于列表中,则返回键(来自字典)
- apache-spark - 雪花 -Pyspark numPartitions 支持
- java - 从 Java 字体中提取向量
- python - 为什么 pyinstaller 在我运行 .exe 文件时给我一个错误?
- typescript - 如何使用带有 rxjs 的 typescript 初始化 observable
- swiftui - SwiftUI ScrollView 在添加项目时滚动
- node.js - 在Angular中如何运行一个一个接一个命中后端的循环