Comments (5)
Can you explain why you are overriding the default source sets? Do you have multiple customers, where each customer has those two flavors? That would be exactly what flavor dimensions are for.
I could, however, think of a solution where we extend the sourceSets DSL. Something like:
sourceSets {
flavor1 {
res.srcDir 'src/main/adhocs/flavor1/res'
assets.srcDir 'src/main/adhocs/flavor1/assets'
play.srcDir 'src/main/adhocs/flavor1/play'
}
flavor2 {
res.srcDir 'src/main/adhocs/flavor2/res'
assets.srcDir 'src/main/adhocs/flavor2/assets'
play.srcDir 'src/main/adhocs/flavor1/play'
}
}
But that seems a little ambitious and I don't see the real benefit for now.
from gradle-play-publisher.
Isn't your customer a flavor dimension on its own? If so, files in src/${customer}/${flavorDimension2}/play
should already be packaged correctly.
from gradle-play-publisher.
I do not use flavorDimension, only productFlavors like:
productFlavors {
flavor1 {
packageName "com.example.flavor1"
versionCode 20
}
flavor2 {
packageName "com.example.flavor2"
minSdkVersion 14
}
}
sourceSets {
flavor1 {
res.srcDir 'src/main/adhocs/flavor1/res'
assets.srcDir 'src/main/adhocs/flavor1/assets'
}
flavor2 {
res.srcDir 'src/main/adhocs/flavor2/res'
assets.srcDir 'src/main/adhocs/flavor2/assets'
}
}
from gradle-play-publisher.
We have a base app fully customizable. We make one flavor for each customer with its own assets folder.
Your solution is perfect for these cases, as each customer has his own google play info.
from gradle-play-publisher.
Since the solution above works and changing source sets is unconventional, the original feature request is no longer needed.
from gradle-play-publisher.
Related Issues (20)
- set :play:android-publisher as an API dependency HOT 1
- Conflict with 'com.google.firebase.appdistribution' plugin HOT 1
- Error: insufficient data written HOT 24
- bootstrapReleaseListing: Unable to tunnel through proxy. Proxy returns "HTTP/1.1 403 Forbidden" HOT 2
- Error: PKIX path building failed HOT 1
- Task installRelease not found when publishing is disabled HOT 1
- Release notes languages management HOT 6
- Release notes for 3.8.5 release? Where to find? HOT 2
- Key Signature Mismatch on CI and not Locally HOT 4
- Publish to Wear OS only? HOT 6
- Build fails on the version conflict with ResolutionStrategy.IGNORE HOT 3
- available-version-codes.txt (No such file or directory) when turned on gradle configuration cache HOT 3
- in-app update priority is always 0 HOT 1
- The Project.getConvention() method has been deprecated. This is scheduled to be removed in Gradle 9.0. HOT 1
- Some problems were found with the configuration of task ':app:promoteArtifact' (type 'UpdatableTrackLifecycleTask')
- PublishBundle$Processor fails with SunCertPathBuilderException HOT 1
- Workaround colon track names
- Ok
- ResolutionStrategy.AUTO: appears not to respect track HOT 1
- Add support for sentry crash reporting plugin
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gradle-play-publisher.