Android Q适配(非SDK接口管控)

介绍

https://developer.android.google.cn/distribute/best-practices/develop/restrictions-non-sdk-interfaces

  • Android P

    • Blacklist 无论targetVersion如何,使用这些api,系统将会抛出错误
    • Greylist 如果targetVersion == 28 将会跟Blacklist一样,如果不是则可以正常使用
    • Whitelist 可以正常使用
  • Android Q

    • greylist 本系统标记为不支持调用。但是无限制,可以正常使用
    • Blacklist 无论targetVersion如何,使用这些api,系统将会抛出错误
    • greylist-max-o 受限制的灰名单。targetVersion <= 27 可以正常访问
    • greylist-max-p 受限制的灰名单。targetVersion <= 28 可以正常访问

变更

Android Q 更新了黑名单、黑灰名单的接口,增加了一些新的名字。 如在 Android P 中被限制的黑灰色名单:darkgrey list 现在叫做 greylist-max-o, 在 Android Q 中被限制的非SDK接口应该称为 greylist-max-p

  • blacklist 无论targetVersion如何,使用这些api,系统将会抛出错误

  • greylist 本系统标记为不支持调用。但是无限制,可以正常使用

  • greylist-max-o 受限制的灰名单,targetVersion <= 27 可以正常访问,targetVersion > 27(Android P,9,Q)不能使用

  • greylist-max-p 受限制的灰名单,targetVersion <= 28 可以正常访问,targetVersion > 28(Android Q)不能使用

check工具

把veridex-mac.zip下载下来进行下面操作进行check检查

https://developer.android.google.cn/distribute/best-practices/develop/restrictions-non-sdk-interfaces#test-veridex-tool
https://android.googlesource.com/platform/prebuilts/runtime/+/master/appcompat

Linux x64

Download veridex-linux.zip, unzip the file and run with:

./appcompat.sh –dex-file=test.apk

macOS

Download veridex-mac.zip, unzip the file and run with:

./appcompat.sh –dex-file=test.apk

    原文作者:翱翔黑涩天空
    原文地址: https://www.jianshu.com/p/f6ae363d8cdc
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞