2401_90008272 2025-12-06 10:52 采纳率: 50%
浏览 8
已结题

我想问一下关于GMS认证中的MR和SMR的区别,以及MR需要跑哪些测试

各位,大家好,我想问一下关于GMS认证中的MR和SMR的区别,以及MR需要跑哪些测试

  • 写回答

3条回答 默认 最新

  • 檀越@新空间 2025-12-06 11:04
    关注

    上午好☀️☀️☀️️
    本答案参考通义千问

    关于GMS(Google Mobile Services)认证中的 MRSMR,它们是用于验证设备是否符合 Google 的兼容性要求的两种不同测试类型。下面我将详细解释它们的区别,并列出 MR(Manufacturing Release) 需要运行的测试项目。


    一、MR 与 SMR 的区别

    1. 定义

    • MR(Manufacturing Release):指的是设备在正式发布前需要通过的一系列完整测试,确保其在生产环境中的兼容性和稳定性。
    • SMR(Software Manufacturing Release):是指设备在软件更新后(如系统升级)需要重新进行的测试,以确保新版本的软件不会影响设备的兼容性。

    2. 适用阶段

    • MR:适用于设备首次上市前的全面测试。
    • SMR:适用于设备在后续软件更新后的再测试。

    3. 测试范围

    • MR:覆盖所有功能和性能测试,包括硬件、软件、网络等。
    • SMR:主要关注与更新相关的部分,如系统功能、API 兼容性等,可能不涉及全部 MR 测试项。

    4. 测试工具

    • MR:使用 CDD(Compatibility Definition Document) 中定义的所有测试用例。
    • SMR:使用 SMR Test Plan,仅涵盖更新相关部分。

    二、MR 需要运行的测试

    以下是 MR 需要运行的主要测试项目(根据 GMS CDD 要求):

    1. 兼容性测试(Compatibility Testing)

      • 确保应用在设备上能正常运行。
      • 测试 Android API 兼容性(如 API level 是否支持)。
      • 检查设备是否满足 CDD 中的最低硬件和软件要求。
    2. 性能测试(Performance Testing)

      • 测试设备的启动时间、应用加载速度等。
      • 检查内存管理、CPU 使用率等。
    3. 安全性测试(Security Testing)

      • 检查设备是否具备安全机制(如加密、权限控制)。
      • 测试漏洞修复情况。
    4. 网络连接测试(Network Connectivity Testing)

      • 测试 Wi-Fi、蓝牙、移动数据等连接功能。
      • 验证设备能否稳定连接到 Google 服务。
    5. 图形和 UI 测试(Graphics and UI Testing)

      • 检查屏幕显示效果、动画流畅度、UI 响应速度等。
    6. 存储和文件系统测试(Storage and File System Testing)

      • 验证设备对内部/外部存储的支持。
      • 检查文件读写、缓存等功能是否正常。
    7. 多媒体测试(Multimedia Testing)

      • 测试音频、视频播放、摄像头功能等。
      • 检查媒体格式兼容性。
    8. 传感器测试(Sensor Testing)

      • 验证加速度计、陀螺仪、光感器等传感器的功能。
    9. GMS 服务测试(GMS Services Testing)

      • 测试 Google Play、Google Maps、Gmail 等服务是否正常。
      • 确保设备可以正确安装和使用 GMS 应用。
    10. OTA 更新测试(OTA Update Testing)

      • 验证设备能否正常接收和安装系统更新。
      • 检查更新过程中的稳定性与兼容性。

    三、MR 测试的代码示例(部分)

    以下是一个简单的 Android 测试案例,用于验证设备是否支持 GMS 服务:

    import android.content.pm.PackageManager;
    import android.os.Bundle;
    import androidx.appcompat.app.AppCompatActivity;
    
    public class GmsTestActivity extends AppCompatActivity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_gms_test);
    
            // 检查设备是否支持 GMS 服务
            if (getPackageManager().hasSystemFeature("com.google.android.gsf")) {
                // 支持 GMS 服务
                System.out.println("Device supports GMS services.");
            } else {
                // 不支持 GMS 服务
                System.out.println("Device does not support GMS services.");
            }
        }
    }
    

    ⚠️ 注意:实际 MR 测试通常由 Google 提供的 CDD Test Suite 自动完成,开发者无需手动编写所有测试用例。


    四、总结

    | 项目 | MR | SMR | |------|----|-----| | 适用阶段 | 设备首次发布前 | 软件更新后 | | 测试范围 | 全面测试 | 部分测试 | | 测试工具 | CDD Test Suite | SMR Test Plan | | 测试重点 | 兼容性、性能、安全性 | 更新后的功能和兼容性 |


    如果你是开发者或厂商,建议参考 Google 官方文档https://source.android.com/compatibility)获取最新 MR 和 SMR 的测试要求。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月14日
  • 已采纳回答 12月6日
  • 创建了问题 12月6日