在Android模拟器

时间:2017-09-29 15:35:53

标签: android android-studio android-emulator

每次将新的apk部署到模拟器时,不必登录并导航到特定页面,尝试加速我在Android模拟器上的手动测试。需要确保团队中的粗心开发人员不会意外地将发布版本部署到允许跳过登录的商店(例如,不要取消注释代码以跳过登录)。

目前的做法:

  1. 创造产品口味"正常"和" skiplogin" (没有属性)。
  2. 如果代码从SharedPreferences获取REST API凭据,请添加以下内容:

    if (BuildConfig.DEBUG && BuildConfig.FLAVOR.equals("skiplogin")){
        // use hard-coded username/token
    }
    
  3. 专业 - 它的工作原理。大大减少了点击测试所用的时间

    缺点 - " gradle clean build"当你有两种口味时需要两倍的时间。不适用于依赖于先前活动/片段上提取的状态的页面,例如仅在登录时获取的数据。

    要变得更简单,谁知道呢?

1 个答案:

答案 0 :(得分:0)

如果您想要的是代码不会在发布时运行,为什么不使用BuildConfig.DEBUG?

if (BuildConfig.DEBUG && BuildConfig.mockLogin) {
  // use hard-coded username/token
}

并在你的gradle中定义 buildConfigField('boolean' , 'mockLogin', 'true') 在代码进入生产的情况下,它不会运行导致BuildConfig.DEBUG在执行发布版本时它是错误的,并且您无法上传调试版本到Play商店导致它不会允许的。