csath / csath/react-native-config-reader

Enabling ProGuard results in "Could not find BuildConfig class" error when attempting to assembleRelease

Aperta
#21 6 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug good first issue platform: android question
Lingua principale
Objective-C
Stelle
47
Fork
17
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

**React Native**: `61`
**Android**: `AndroidX`

There seems to be an issue with assembling for release when using ProGuard:

```
android() {
...
buildTypes {
debug {
buildConfigField "String", "FOO", "\"bar\""
}
release {
buildConfigField "String", "FOO", "\"baz\""
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
signingConfig signingConfigs.release
}
}
...
}
```

In short, attempting to build via `./gradlew assembleRelease -x bundleReleaseJsAndAssets` builds the project just fine, but it results in RN Config Reader throwing the following error:

```
ReactNative: RNConfigReader: Could not find BuildConfig class
```

The app assembles and works just fine using `assembleDebug`. All of the build variant BuildConfig files are properly automatically generated with the correct values.

```
import Config from 'react-native-config-reader'

export default class Root extends React.Component {
constructor(props: any) {
super(props)

console.log('Config', JSON.stringify(Config))
}
}
```

`Config` returns `null`.

Any suggestions?

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia dalla configurazione di buildTypes in Android build.gradle ed esegui ./gradlew assembleRelease -x bundleReleaseJsAndAssets, quindi esamina proguard-rules.pro e i file BuildConfig di release generati. Il lavoro è completato quando la build di release termina con ProGuard abilitato e RN Config Reader restituisce i valori configurati invece di restituire null o segnalare di non riuscire a trovare BuildConfig.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
android, react-native
Ambito
build-system, mobile
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.