@norcy/react-native-toolkit 0.2.37 → 0.2.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/dependencies.gradle +7 -10
- package/package.json +1 -1
|
@@ -130,20 +130,17 @@ ext.applyCommonPlugins = { targetProject ->
|
|
|
130
130
|
}
|
|
131
131
|
|
|
132
132
|
ext.fixBundleResourcesDependency = { targetProject ->
|
|
133
|
-
//
|
|
134
|
-
//
|
|
133
|
+
// release 打包时须把 Metro 生成的 drawable 注册进 AGP,否则 JS 里 require 的本地图不会进 APK。
|
|
134
|
+
// 当前 RN Gradle 插件里声明的 resourcesDir 与 Metro 实际写入目录不一致,需用 registerGeneratedResFolders 指向真实路径。
|
|
135
|
+
// 可删除时机:升级 RN / @react-native/gradle-plugin 后,若官方已对齐路径或资源合并已正确,assembleRelease 验证本地图正常即可整段删掉。
|
|
135
136
|
targetProject.afterEvaluate {
|
|
136
137
|
targetProject.android.applicationVariants.all { variant ->
|
|
137
|
-
def
|
|
138
|
-
def bundleTaskName = "createBundle${
|
|
139
|
-
def mergeTaskName = "merge${variantName}Resources"
|
|
138
|
+
def variantCap = variant.name.capitalize()
|
|
139
|
+
def bundleTaskName = "createBundle${variantCap}JsAndAssets"
|
|
140
140
|
def bundleTask = targetProject.tasks.findByName(bundleTaskName)
|
|
141
141
|
if (bundleTask) {
|
|
142
|
-
def resDir =
|
|
143
|
-
|
|
144
|
-
targetProject.tasks.named(mergeTaskName).configure {
|
|
145
|
-
dependsOn(bundleTask)
|
|
146
|
-
}
|
|
142
|
+
def resDir = new File(targetProject.buildDir, "RES/createBundle${variantCap}JsAndAssets")
|
|
143
|
+
variant.registerGeneratedResFolders(targetProject.files(resDir).builtBy(bundleTask))
|
|
147
144
|
}
|
|
148
145
|
}
|
|
149
146
|
}
|