-
-
[原创]安卓12(Android S)新增API介绍以及SDK适配详解
-
发表于: 2021-2-25 03:39 10445
-
让我们看看安卓12新增的API
内容接收统一API类似Windows的WM_DROPFILES,也就是拖拽文件到应用上、粘贴文件到应用窗口的时候响应内容。安卓12提供了OnReceiveContentListener这个API,具体使用例子由于篇幅太长,可以参考我的博客链接:OnReceiveContentListener API完整代码详解。
安卓12以及以后平台可以将H.265、HDR10媒体格式自动转码为H.264,有的软件可能不支持HDR10、H.265一类的格式(这时候分享到这个软件的视频流就得转码了)。如果我们支持H.265并且不想更改xml,就可以在代码内直接强制系统将分享、读取来的媒体流强制转码成我们所需要的格式,例如我们想要H.264的格式,就可以禁用H.265、HDR10等格式,由于xml、代码篇幅太长,具体参考这里。
安卓12兼容AVIF格式的图片,而这个格式的文件是使用AV1来编码的,而谷歌、火狐的浏览器已经支持这种图片格式很久了,优点是画质降低不多,体积特别小,比WebP还小,更高的画质更小的体积!
当然安卓11以及之前仍然可以使用媒体转码之类的库在应用当中直接读取AVIF图片,不一定要把系统升级到安卓12才能看这种格式的网络图片。
安卓12带来了类似设备属性验证等新功能,设备属性一般是从Build里面的BRAND、DEVICE、MANUFACTURER、MODEL以及PRODUCT当中采集信息直接生成的。安卓12也带来了集团模式,支持安全增强的工作概述等。
适配安卓12很简单
PendingIntent在适配安卓12以后必须声明FLAG_MUTABLE,否则崩溃。具体参考这里。
只要是适配安卓S的应用,则所有接收器、提供者、服务以及对外启动的活动的android:exported属性必须显式声明,否则无法安装并报错。