Android注释和applicationIdSuffix

我最近一直在尝试Android注释 ,一切都运行良好,直到我决定在build.gradle文件中添加buildTypes中的build.gradle 。 目前看起来像这样:

 buildTypes { debug { applicationIdSuffix '.debug' } ... } 

编译时,我得到以下login到gradle控制台:

:app:preDebugBuild UP-TO-DATE
:应用:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:pre_testBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72220Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42220Library UP-TO-DATE
:应用:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:应用:processDebugGoogleServices
找不到匹配的客户端软件包名称'org.me.myapp.debug'
:应用:generateDebugResources
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:processDebugJavaRes UP-TO-DATE
:应用:compileDebugJavaWithJavac
注:将日志文件parsing到/dir/myapp/app/build/generated/source/apt/androidannotations.log
注意:使用options {androidManifestFile = / dir / myapp / app / build / intermediates / manifests / full / debug / AndroidManifest.xml}初始化AndroidAnnotations 3.3.1
注意:开始处理18个元素上的4个注释
注意:用指定的pathfindAndroidManifest.xml文件:/dir/myapp/app/build/intermediates/manifests/full/debug/AndroidManifest.xml注意:AndroidManifest.xml发现:AndroidManifest [applicationPackage = org.me.myapp.debug,你可以使用下面的代码来创build一个新的程序集,其中包括: minSdkVersion = 15,maxSdkVersion = -1,targetSdkVersion = 22]
错误:无法find生成的org.me.myapp.debug.R类
注意:findAndroid类:android.R
注意:时间测量:[整体处理时间= 15 ms],[Extract Manifest = 4 ms],[Extract Annotations = 3 ms],
注意:完成处理
注意:开始处理0个元素上的0个注释
注意:时间测量:[整个处理= 0毫秒],
注意:完成处理
1错误
失败
失败:生成失败,出现exception。
* 什么地方出了错:
执行任务':app:compileDebugJavaWithJavac'失败。

我试过再次清理和重build,从项目中删除generated目录,但没有任何帮助。 如果我从build.gradle文件中删除applicationIdsuffix ,一切工作正常。 我该如何解决这个问题?

Solutions Collecting From Web of "Android注释和applicationIdSuffix"

build.gradle文件中删除这一行:

 resourcePackageName android.variant.applicationId 

编辑 :尝试添加此行到您的apt块:

 resourcePackageName "org.me.myapp" 

对我来说,这是因为google-services.json指的是我的产品包名称。 在编写本文时,最好的解决scheme似乎是编写自己的gradle任务,以便在文件的releasedebug版之间切换,或者在文件中包括两个包名:

google-services.json为不同的productFlavors