跳过内容

MASTG-TEST-0245: 引用平台版本 API

概述

本测试验证应用程序是否运行在最新版本的 Android 操作系统上。

在 Kotlin 中,Android 应用程序可以使用 Build.VERSION.SDK_INT 属性来确定操作系统版本,该属性返回当前系统的 API 级别。通过将其与特定版本常量(例如 Android 14 (API 级别 34) 的 Build.VERSION_CODES.UPSIDE_DOWN_CAKE)进行比较,应用程序可以根据操作系统版本有条件地执行代码。在本例中,“Upside Down Cake”是 Android 14 的内部代号。

Android 应用程序会指定一个 minSdkVersion,它定义了它们支持的最旧操作系统版本。虽然较高的 minSdkVersion 可以减少运行时版本检查的需要,但使用 Build.VERSION.SDK_INT 动态验证操作系统版本仍然有益。它允许应用程序在可用时利用更新、更安全的特性,同时保持向后兼容性。

步骤

  1. 使用 * Android 静态分析*,并结合 * semgrep* 等工具来识别检查操作系统版本的 API。

观察

输出应包含使用相关 API 的位置列表。

评估

如果应用程序不包含任何用于验证操作系统版本的 API 调用,则测试失败。

演示

MASTG-DEMO-0025: Build.VERSION.SDK_INT 在 semgrep 中的使用