当前位置: 首页 > news >正文

Android14 - 前台Service、图片选择器 、OpenJDK 17、其他适配

前台服务

1. 指定前台服务类型

     以 Android 14(API 级别 34)或更高版本为目标平台的应用,需要为应用中的每项前台服务指定服务类型,因为系统需要特定类型的前台服务满足特定用例。具体介绍如下:

    在Android 10 在 <service> 元素内引入了 android:foregroundServiceType 属性。
如果您的应用以 Android 14 为目标平台,则必须指定适当的前台服务类型,可组合使用多个类型;以下了可供选择的前台服务类型:
    •    camera
    •    connectedDevice
    •    dataSync
    •    health
    •    location
    •    mediaPlayback
    •    mediaProjection
    •    microphone
    •    phoneCall
    •    remoteMessaging
    •    shortService
    •    specialUse
    •    systemExempted

如果应用中的用例与这些类型均不相关,考虑使用 WorkManager 或Android 14中引入的新Api,即作业必须是用户发起的数据传输作业。

    在上述的类型中,Android 14 中新增 health, remoteMessaging, shortService, specialUse 和 systemExempted 等类型。 

    类型示例:
<manifest ...>
  <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
  <uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK" />
    <application ...>
      <service
          android:name=".MyMediaPlaybackService"
          android:foregroundServiceType="mediaPlayback"
          android:exported="false">
      </service>
    </application>
</manifest>

         备注: 如果以 Android 14 或更高版本为目标的应用未在清单中定义给定服务的类型,系统会在调用 startForeground() 时引发 MissingForegroundServiceTypeException。

2. 启动时包含前台服务类型

        启动前台服务,最好的方式,是使用 ServiceCompat 版本的 startForeground()(适用于 androidx-core 1.12 及更高版本),传入前台服务的类型值,可传入一个或多个,比如aa,或aa|bb, 或aa|bb|cc;  


       启动服务,ServiceCompat

http://www.lryc.cn/news/407130.html

相关文章:

  • 数据恢复教程:如何从硬盘、SD存储卡、数码相机中恢复误删除数据。
  • 谷粒商城实战笔记-47-商品服务-API-三级分类-网关统一配置跨域
  • stm32平台为例的软件模拟时间,代替RTC调试
  • 《设计模式之美》读书笔记2
  • C++ STL set_difference 用法
  • 【基础算法总结】优先级队列
  • python-绝对值排序(赛氪OJ)
  • 成功者的几个好习惯,你具备了几个
  • centos中zabbix安装、卸载及遇到的问题
  • php编译安装
  • [K8S] K8S资源控制器Controller Manager(4)
  • C#,.NET常见算法
  • KubeSphere介绍及一键安装k8s
  • Spring 系列
  • 基于opencv[python]的人脸检测
  • 配置SSH公钥互信
  • WEB渗透Web突破篇-SQL注入(MSSQL)
  • DAY15
  • pytest结合allure-pytest插件生成测试报告
  • 详细解析用户提交咨询
  • UDP/TCP协议解析
  • 力扣94题(java语言)
  • JavaScript基础入门:构建动态Web世界的基石
  • 01-client-go
  • WebRTC QoS方法十三.2(Jitter延时的计算)
  • PHP进阶:前后端交互、cookie验证、sql与php
  • 优思学院|ANOVA方差分析是什么?如何用EXCEL进行计算?
  • Mindspore框架循环神经网络RNN模型实现情感分类|(三)RNN模型构建
  • 深度解读大语言模型中的Transformer架构
  • 安装好anaconda,打开jupyter notebook,新建 报500错