0

imagine some proyect like this one that use android-annotations and for this work i have to put this in build.gradle

apt {
    arguments {
        resourcePackageName "com.pandaos.smartconfig"
        androidManifestFile variant.outputs[0].processResources.manifestFile
    }
}

where: resourcePackageName "com.pandaos.smartconfig"

its the path where code its annotated... the config for plugin android-apt

apply plugin: 'com.neenbedankt.android-apt'

I suppose, that plugin "invoke" some task to generate the code that android-annotations create under the hood, but...

Its possible define multiple "packages in the app"?

4

1 回答 1

3

resourcePackageName来自此处提到的AndroidAnnotations的配置选项:

默认情况下,AndroidAnnotations 尝试通过从文件中R提取应用程序包来查找类。AndroidManifest.xml但在某些情况下,您可能希望指定一个自定义包来查找 R 类。这就是我们添加resourcePackageName选项的原因。

有两点需要注意:

  1. 该选项指的是 Android 包名称,它不必与您的java包名称相同。

  2. 如果您使用Gradle 构建文件中的选项,则R包名称可以与您设置的 Android 包名称不同。AndroidManifest.xmlapplicationId

在您的代码中使用不同的java包名称是完全可以的。AFAIK 这不会以任何方式影响 AndroidAnnotations。

apt块由android-apt插件提供,允许您为项目中的注释处理器配置任何参数。在这种情况下,它会配置 AndroidAnnotations 完成其工作所需的参数。在这种情况下,该android-apt插件有两个用途:它为 AndroidAnnotations 处理器配置参数,并确保您可以在 Android Studio 中引用由 AA 生成的源。

于 2015-07-21T10:46:32.243 回答