File tree Expand file tree Collapse file tree 1 file changed +45
-0
lines changed
Expand file tree Collapse file tree 1 file changed +45
-0
lines changed Original file line number Diff line number Diff line change 1+ def reactNativeRoot = rootProject. projectDir. parentFile
2+
3+ android. applicationVariants. all { variant ->
4+ if (variant. buildType. name == ' release' ) {
5+ def variantName = variant. name. capitalize()
6+ def bundleTask = tasks. findByName(" createBundle${ variantName} JsAndAssets" )
7+
8+ if (bundleTask != null ) {
9+ def copyAssetsTaskName = " copy${ variantName} AssetsToRoot"
10+
11+ tasks. create(name : copyAssetsTaskName, type : Copy ) {
12+ description = " 将生成的 assets 和 bundle 文件拷贝到 RN 项目根目录"
13+ group = ' Assets'
14+
15+ dependsOn bundleTask
16+
17+ doFirst {
18+ def assetsDir = new File (" ${ reactNativeRoot} /.pushy/intermedia/android" )
19+
20+ if (! assetsDir. exists()) {
21+ def created = assetsDir. mkdirs()
22+ }
23+ }
24+
25+ from(" ${ buildDir} /generated/assets/createBundleReleaseJsAndAssets" ) {
26+ include " index.android.bundle"
27+ rename " index.android.bundle" , " index.bundlejs"
28+ }
29+
30+ from(" ${ buildDir} /generated/res/createBundleReleaseJsAndAssets" ) {
31+ include " drawable*/**"
32+ include " raw/**"
33+ }
34+
35+ into " ${ reactNativeRoot} /.pushy/intermedia/android"
36+
37+ doLast {
38+ println " 资源文件拷贝完成,目标目录: ${ reactNativeRoot} /assets"
39+ }
40+ }
41+
42+ bundleTask. finalizedBy tasks. named(copyAssetsTaskName)
43+ }
44+ }
45+ }
You can’t perform that action at this time.
0 commit comments