我正在将应用程序升级到Android SDK28。为检查兼容性问题,我针对APK运行了veridex工具,它说我在greylist-max-o中使用2个API。
这些API在运行Android Pie的设备上可以使用吗?从名称(greylist-max-o)中的“ o”起,似乎暗示这些API仅适用于Android Oreo。
./appcompat.sh --dex-file=./test.apk
78 hidden API(s) used: 52 linked against, 26 through reflection
76 in greylist
0 in blacklist
2 in greylist-max-o
0 in greylist-max-p
答案 0 :(得分:0)
您的假设是正确的。仅当您以api级27
为目标(Android O及更低版本)时,这些API才有效。
摘自官方文档:
如果非SDK界面是Android 9(API级别28)的Darkgrey列表的一部分,则该接口现在是greylist-max-o列表的一部分,其中“ o”代表Oreo或Android 8.1(API)第27级)。在这种情况下,如果您的应用程序针对Android 8.1(API级别27)或更低版本,则只能使用属于greylist-max-o列表的界面。