Skip to content

Commit e15d800

Browse files
committed
fix: fix release build crash by removing React codegen plugin and adding R8 keep annotations
1 parent d19636b commit e15d800

File tree

3 files changed

+9
-14
lines changed

3 files changed

+9
-14
lines changed

package/android/build.gradle

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,6 @@ apply plugin: 'org.jetbrains.kotlin.android'
2323
apply from: '../nitrogen/generated/android/NitroVersionCheck+autolinking.gradle'
2424
apply from: "./fix-prefab.gradle"
2525

26-
if (isNewArchitectureEnabled()) {
27-
apply plugin: "com.facebook.react"
28-
}
29-
3026
def getExtOrDefault(name) {
3127
return rootProject.ext.has(name) ? rootProject.ext.get(name) : project.properties["NitroVersionCheck_" + name]
3228
}
@@ -42,6 +38,7 @@ android {
4238
compileSdkVersion getExtOrIntegerDefault("compileSdkVersion")
4339

4440
defaultConfig {
41+
consumerProguardFiles 'consumer-rules.pro'
4542
minSdkVersion getExtOrIntegerDefault("minSdkVersion")
4643
targetSdkVersion getExtOrIntegerDefault("targetSdkVersion")
4744
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
@@ -112,16 +109,6 @@ android {
112109
targetCompatibility JavaVersion.VERSION_1_8
113110
}
114111

115-
sourceSets {
116-
main {
117-
if (isNewArchitectureEnabled()) {
118-
java.srcDirs += [
119-
// React Codegen files
120-
"${project.buildDir}/generated/source/codegen/java"
121-
]
122-
}
123-
}
124-
}
125112
}
126113

127114
repositories {

package/android/consumer-rules.pro

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# react-native-nitro-version-check
2+
# Nitro Hybrid Objects are instantiated from C++ via JNI (FindClass),
3+
# which R8 cannot trace. Keep all Nitro classes to prevent stripping.
4+
-keep class com.margelo.nitro.nitroversioncheck.** { *; }

package/android/src/main/java/com/margelo/nitro/nitroversioncheck/HybridVersionCheck.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
package com.margelo.nitro.nitroversioncheck
22

3+
import androidx.annotation.Keep
4+
import com.facebook.proguard.annotations.DoNotStrip
35
import com.margelo.nitro.NitroModules
46
import com.margelo.nitro.core.Promise
57
import java.net.HttpURLConnection
68
import java.net.URL
79

10+
@Keep
11+
@DoNotStrip
812
class HybridVersionCheck : HybridVersionCheckSpec() {
913
companion object {
1014
private const val TIMEOUT_MS = 15_000

0 commit comments

Comments
 (0)