美文网首页
Android Pie(9.0)适配

Android Pie(9.0)适配

作者: Yasin27878 | 来源:发表于2018-12-14 15:22 被阅读88次

    Android Pie(9.0)适配

    [图片上传失败...(image-74880c-1544772143959)]

    查看新功能

    显示屏缺口支持

    • 使用getDisplayCutout()函数获取缺口屏(刘海屏)的参数
    • 可以通过谷歌提供的适配方案,使用挖孔区全屏显示解决:
    WindowManager.LayoutParams lp = getWindow().getAttributes();
    lp.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
    getWindow().setAttributes(lp);
    

    多个通知增强功能

    • 支持图像:现在,Android 9 可在手机的“短信通知”中显示图像。 您可以使用对短信使用 setData()来显示图像。 以下代码段演示了如何创建 Person 和包含图像的短信。
    // Create new Person.
    Person sender = new Person()
            .setName(name)
            .setUri(uri)
            .setIcon(null)
            .build();
    // Create image message.
    Message message = new Message("Picture", time, sender)
            .setData("image/", imageUri);
    Notification.MessagingStyle style = new Notification.MessagingStyle(getUser())
            .addMessage("Check this out!", 0, sender)
            .addMessage(message);
    

    [图片上传失败...(image-b7321d-1544772143959)]

    适用于可绘制对象和位图的 ImageDecoder

    Android 9 引入了 ImageDecoder 类,可提供现代化的图像解码方法。 使用该类取代 BitmapFactory 和 BitmapFactory.Options API。

    动画

    Android 9 引入了 AnimatedImageDrawable 类,用于绘制和显示 GIF 和 WebP 动画图像。

    自动填充框架

    Android 9 引入了多项改进,自动填充服务可以利用这些改进进一步增强用户填写表单时的体验。 如需详细了解如何在您的应用中使用自动填充功能,请参阅自动填充框架指南。

    更多新功能

    行为变更

    比较多,建议直接看文档

    所有应用

    以 API 级别 28+ 为目标的应用

    我们公司的app需要注意的几个点,可能对我们有影响

    • 限制访问电话号码
    • 使用非 SDK 接口的限制
    • 传输层安全协议 (TLS) 实现变更
    • Android 9 完全取消了对 Android 安全加密文件 (ASEC) 的支持。
    • 现在强制执行 FLAG_ACTIVITY_NEW_TASK 要求
    • 屏幕旋转变更
    • 构建序列号弃用(在 Android 9 中,Build.SERIAL 始终设置为 "UNKNOWN" 以保护用户的隐私。)
    • 无法再让多个进程共用同一 WebView 数据目录
    • 在 Android 9 之前,暂停的应用发出的通知会被取消。 从 Android 9 开始,暂停的应用发出的通知将被隐藏,直至应用继续运行。

    对于非 SDK 接口的限制

    无论是直接使用还是通过反射或 JNI 间接使用。 无论应用是引用非 SDK 接口还是尝试使用反射或 JNI 获取其句柄,均适用这些限制。

    下面是名单类型:

    • 白名单:SDK
    • 浅灰名单:仍可以访问的非 SDK 函数/字段。
    • 深灰名单:
      • 对于目标 SDK 低于 API 级别 28 的应用,允许使用深灰名单接口。
      • 对于目标 SDK 为 API 28 或更高级别的应用:行为与黑名单相同
    • 黑名单:受限,无论目标 SDK 如何。 平台将表现为似乎接口并不存在。 例如,无论应用何时尝试使用接口,平台都会引发 NoSuchMethodError/NoSuchFieldException,即使应用想要了解某个特殊类别的字段/函数名单,平台也不会包含接口。
    名单类型

    下表详细说明了各种访问方式及其相应的结果。

    名单类型

    讲解视频

    veridex检测,需要翻墙

    扩展阅读

    AndroidX了解一下

    Android Jetpack

    相关文章

      网友评论

          本文标题:Android Pie(9.0)适配

          本文链接:https://www.haomeiwen.com/subject/zrsghqtx.html