NativeScript / NativeScript/android
Android Runtime doesn't play nice with productFlavors
Aperta
@vmutafov ci sta già lavorando.
Dal 19/5/2020.
- Lingua principale
- C++
- Stelle
- 563
- Fork
- 144
- Merge medio
- 10h 46m
- PR unite (30g)
- 14
Descrizione
Environment
- CLI: 6.5.0
- Cross-platform modules: 6.5.1
- Android Runtime: 6.5.0
Describe the bug
When adding productFlavors to your build.gradle, something odd seems to happen in the metadata generation and some classes aren't available to NativeScript anymore.
To Reproduce
- Create a sample project where you call
console.log(com.tns.NativeScriptApplication.getInstance());from Typescript - Test the app, it should work and return the application instance
- Now add productFlavors (they don't even have to include any specific settings) to your project, like this:
android {
defaultConfig {
minSdkVersion 17
generatedDensities = []
}
flavorDimensions "api"
productFlavors {
minApi21 {
dimension "api"
versionNameSuffix "-minApi21"
}
minApi17 {
dimension "api"
versionNameSuffix "-minApi17"
}
}
aaptOptions {
additionalParameters "--no-version-vectors"
}
}
android.variantFilter { variant ->
// Don't build minApi21 apk for debug.
if(variant.buildType.name.endsWith('debug') && variant.name.contains("minApi21")) {
variant.setIgnore(true);
}
}
- Remove your platforms folder
- Run the app again, now the
com.tns.NativeScriptApplication.getInstance()will result in aCannot read property 'getInstance' of undefinederror.
Expected behavior
Behavior should be the same as without productFlavors.
Sample project
https://github.com/jerbob92/nativescript-productflavor-bug
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Valutazione
Questa issue non è ancora stata valutata.