编译具有多种风格和Play服务的错误构建项目

时间:2016-01-16 01:13:27

标签: android google-play google-play-services analytics

当尝试构建具有多种风格的Play服务启用项目时,我收到编译错误。我认为这可能与我的包名不匹配有关,但我不确定。有人对我做错了什么有任何暗示吗?

我正在使用新的gradle插件,允许这个(per this GH issue

当我尝试构建多种口味时,我发现了一个错误:

Error:(115, 50) error: cannot find symbol variable global_tracker

我仔细检查了包装名称是否符合我的期望,但是想知道我是否仍然不正确。

我的build.gradle看起来像这样:

productFlavors {
        app1 {
            applicationId "com.examplea.app"
            manifestPlaceholders = [domain:"examplea"]
        }
        imore {
            applicationId "com.exampleb.app"
            manifestPlaceholders = [domain:"exampleb"]
        }
        crackberry {
            applicationId "com.examplec.app"
            manifestPlaceholders = [domain:"examplec"]
        }

我的一个 google-services.json 文件(位于main / src / examplea)的示例是:

{
  "project_info": {
    "project_id": "",
    "project_number": "",
    "name": ""
  },
  "client": [
    {
      "client_info": {
        "mobilesdk_app_id": "1:10908349452:android:bb075abfhadshfjd",
        "client_id": "android:com.examplea.app",
        "client_type": 1,
        "android_client_info": {
          "package_name": "com.examplea.app"
        }
      },
      "oauth_client": [],
      "api_key": [],
      "services": {
        "analytics_service": {
          "status": 1
        },
        "cloud_messaging_service": {
          "status": 1,
          "apns_config": []
        },
        "appinvite_service": {
          "status": 1,
          "other_platform_oauth_client": []
        },
        "google_signin_service": {
          "status": 1
        },
        "ads_service": {
          "status": 1
        }
      }
    }
  ]
}

1 个答案:

答案 0 :(得分:3)

我弄清楚了我的问题,是某些风格没有谷歌分析配置信息,所以显然该插件并没有为该变体生成配置文件。

我仔细检查了每个风味的 google-services.json 文件,并意识到其中一些文件具有分析信息(如下所示):

"analytics_service": {
          "status": 2,
          "analytics_property": {
            "tracking_id": "UA-10XXXXX6-1"
          }
        },

而其他人有这个(这是不正确的):

"analytics_service": {
          "status": 1
        }

我确保两者都是一致的(并且有分析配置信息),这解决了我的构建问题。