在单个应用中为不同清单创建 Gradle 风格时遇到问题
Having trouble creating Gradle flavors for different manifests in a single app
我正在关注 these instructions 以创建风格,但 Android Studio 一直抱怨找不到
/path/to/my/project/app/src/main
而不是 main 按照说明,我有一个名为 portrait 的文件夹和一个名为 landscape
换句话说
/path/to/my/project/app/src/portrait/[res,java,assets,AndroidManifest.xml]
和
/path/to/my/project/app/src/landscape/[res,java,assets,AndroidManifest.xml]
我的 gradle 文件包含:
productFlavors {
portrait {
applicationId "com.my.project"
versionName "1.0-portrait"
}
landscape {
applicationId "com.my.project"
versionName "1.0-landscape"
}
}
然而,当我尝试制作项目时,我得到了
Error:Cause: java.io.FileNotFoundException:
/Users/me/git/MY/PROJECT/app/src/main/AndroidManifest.xml (No such
file or directory)
我尝试修改目录结构,但无法清除此投诉。我完全不清楚它为什么要寻找 "main"... 它从哪里获得该指令?
main
sourceSet 不是可选的,您所有的 java 代码和资源都应该放在那里。只有口味特定的代码和资源应该适合您的口味。然后Gradle会按照http://tools.android.com/tech-docs/new-build-system/resource-merging
合并
所以,如果你没有 main
,Gradle 就会抱怨。
我正在关注 these instructions 以创建风格,但 Android Studio 一直抱怨找不到 /path/to/my/project/app/src/main
而不是 main 按照说明,我有一个名为 portrait 的文件夹和一个名为 landscape 换句话说
/path/to/my/project/app/src/portrait/[res,java,assets,AndroidManifest.xml]
和
/path/to/my/project/app/src/landscape/[res,java,assets,AndroidManifest.xml]
我的 gradle 文件包含:
productFlavors {
portrait {
applicationId "com.my.project"
versionName "1.0-portrait"
}
landscape {
applicationId "com.my.project"
versionName "1.0-landscape"
}
}
然而,当我尝试制作项目时,我得到了
Error:Cause: java.io.FileNotFoundException: /Users/me/git/MY/PROJECT/app/src/main/AndroidManifest.xml (No such file or directory)
我尝试修改目录结构,但无法清除此投诉。我完全不清楚它为什么要寻找 "main"... 它从哪里获得该指令?
main
sourceSet 不是可选的,您所有的 java 代码和资源都应该放在那里。只有口味特定的代码和资源应该适合您的口味。然后Gradle会按照http://tools.android.com/tech-docs/new-build-system/resource-merging
所以,如果你没有 main
,Gradle 就会抱怨。