我可以在我的android项目中成功设置Transfuse,但是在使用Android Studio运行该应用程序时却失败了。可能是因为Manifest xml必须为空才能让Transfuse处理。
有谁能一起工作?
最佳答案
Transfuse和Android Studio可以很好地协同工作。诀窍是将Transfuse与Gradle集成在一起。一旦Gradle正常工作,构建便会启动注释处理器并运行Transfuse。
我在这里整理了一个示例引用项目:https://github.com/johncarl81/transfuse/tree/master/examples/gradle
这是到达那里的过程:
〜/project/src/main/AndroidManifest.xml->〜/project/AndroidManifest.xml
android {
...
sourceSets.main {
manifest.srcFile 'AndroidManifest.xml'
}
}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.1'
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android'
apply plugin: 'android-apt'
dependencies {
apt 'org.androidtransfuse:transfuse:0.2.7'
compile 'org.androidtransfuse:transfuse-api:0.2.7'
}
您的最终gradle.build将如下所示:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.1'
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android'
apply plugin: 'android-apt'
repositories {
mavenCentral()
}
dependencies {
apt 'org.androidtransfuse:transfuse:0.2.7'
compile 'org.androidtransfuse:transfuse-api:0.2.7'
}
android {
compileSdkVersion 19
buildToolsVersion "19.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 19
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_6
targetCompatibility JavaVersion.VERSION_1_6
}
sourceSets.main {
manifest.srcFile 'AndroidManifest.xml'
}
}
编辑:
最后,您可能想将source/apt_generated/debug或source/apt_generated/release文件夹添加为项目配置下的源文件夹。
第二编辑:
我使用新的Android-APT插件更新了上述示例