努力尽今夕,少年犹可夸。这篇文章主要讲述Android8.0适配那点事相关的知识,希望能为你提供帮助。
1、通知渠道(Channeld)
当然,适配8.0的第一步自然是把targeSdk升级到26,在8.0中所有通知的实现都需要提供通知渠道,否则,所有通知在8.0系统上面都不能正常显示;
下图是8.0系统上,APP通知的展示样式:
文章图片
APP适配渠道通知的实现如下:
文章图片
文章图片
2、悬浮窗
8.0 API 新增了一种悬浮窗的窗口类型,TYPE_APPLICATION_OVERLAY;
如果应用使用 SYSTEM_ALERT_WINDOW 权限并且尝试使用以下窗口类型之一来在其他应用和系统窗口上方显示提醒窗口:
【Android8.0适配那点事】TYPE_PHONE
TYPE_PRIORITY_PHONE
TYPE_SYSTEM_ALERT
TYPE_SYSTEM_OVERLAY
TYPE_SYSTEM_ERROR
TYPE_TOAST
文章图片
这些窗口将始终显示在使用 TYPE_APPLICATION_OVERLAY 窗口类型的窗口下方。
如果该应用适配了8.0,则应用只能使用TYPE_APPLICATION_OVERLAY窗口类型来创建悬浮窗。(其它窗口类型在8.0已经被废弃掉)
3、画中画模式(新增功能)
我们知道Activity是默认支持分屏模式的,但我们也需要声明Activity是允许分屏的,再增加支持画中画模式:
文章图片
App页面从全屏模式切换到画中画模式,它的Activity生命周期也会经历销毁后重建的过程,如果开发者想保持App页面不被重建,则需给该页面的activity节点加上以下的属性描述:
android:configChanges=" srceenLayout|orientation"
对于视频播放页面,Activity代码同样不在onPause方法中暂停播放视频,而应当在onStop方法中暂停播放,并在onStart方法中恢复播放视频;
文章图片
文章图片
进入画中画模式:
文章图片
4、自适应图标
Android 8.0 引入自适应启动器图标,可在不同设备型号上显示为各种不同的形状,创建方式如下:
文章图片
然后点击Next后,直接finish,最后在application中使用:
文章图片
结语
各位看官,别走开,你的留言,你的点赞,是我前进的动力,接下来还有启动页的适配,版本更新适配等其他一些功能详细阐述;文中如有错误请留言指出,共同探讨。
文章图片
推荐阅读
- mapper 动态代理 注意事项
- Android精通教程-第一节Android入门简介
- Android--记录莫名其妙的引用依赖冲突解决办法
- 安装Appium
- Pandas DataFrame.rename()例子
- Pandas DataFrame.query()用法
- Pandas DataFrame.corr()例子
- Pandas数据处理解析和例子
- Pandas串联操作concat()用法介绍