Skip to content

Commit c36dbb4

Browse files
turgenevivanminggo
authored andcommitted
Fix APK not have assets folder (#19679)
* Fix APK not have assets folder * Android project: copy all res to assets folder
1 parent b33333d commit c36dbb4

File tree

3 files changed

+47
-37
lines changed
  • templates
    • cpp-template-default/proj.android/app
    • js-template-default/frameworks/runtime-src/proj.android/app
    • lua-template-default/frameworks/runtime-src/proj.android/app

3 files changed

+47
-37
lines changed

templates/cpp-template-default/proj.android/app/build.gradle

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ android {
5050
java.srcDir "src"
5151
res.srcDir "res"
5252
manifest.srcFile "AndroidManifest.xml"
53-
assets.srcDir "../../Resources"
53+
assets.srcDir "assets"
5454
}
5555

5656
externalNativeBuild {
@@ -111,13 +111,16 @@ android {
111111
}
112112

113113
android.applicationVariants.all { variant ->
114+
def project_root_folder = "${buildDir}/../../.."
115+
def dest_assets_folder = "${buildDir}/../assets"
116+
114117
// delete previous files first
115-
delete "${buildDir}/intermediates/assets/${variant.dirName}"
118+
delete dest_assets_folder
116119

117-
variant.mergeAssets.doLast {
120+
variant.mergeAssets.doFirst {
118121
copy {
119-
from "${buildDir}/../../../Resources"
120-
into "${buildDir}/intermediates/assets/${variant.dirName}"
122+
from project_root_folder + "/Resources"
123+
into dest_assets_folder
121124
exclude "**/*.gz"
122125
}
123126
}

templates/js-template-default/frameworks/runtime-src/proj.android/app/build.gradle

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ android {
4949
res.srcDir "res"
5050
jniLibs.srcDir "libs"
5151
manifest.srcFile "AndroidManifest.xml"
52+
assets.srcDir "assets"
5253
}
5354

5455
externalNativeBuild {
@@ -145,29 +146,32 @@ def compileJS(srcDir, dstDir) {
145146
}
146147

147148
android.applicationVariants.all { variant ->
149+
def project_root_folder = "${buildDir}/../../../../.."
150+
def dest_assets_folder = "${buildDir}/../assets"
151+
148152
// delete previous files first
149-
delete "${buildDir}/intermediates/assets/${variant.dirName}"
153+
delete dest_assets_folder
150154

151-
variant.mergeAssets.doLast {
155+
variant.mergeAssets.doFirst {
152156
copy {
153-
from "${buildDir}/../../../../../res"
154-
into "${buildDir}/intermediates/assets/${variant.dirName}/res"
157+
from project_root_folder + "/res"
158+
into dest_assets_folder + "/res"
155159
}
156160

157161
copy {
158-
from "${buildDir}/../../../../../src"
159-
into "${buildDir}/intermediates/assets/${variant.dirName}/src"
162+
from project_root_folder + "/src"
163+
into dest_assets_folder + "/src"
160164
}
161165

162166
copy {
163-
from "${buildDir}/../../../../cocos2d-x/cocos/scripting/js-bindings/script"
164-
into "${buildDir}/intermediates/assets/${variant.dirName}/script"
167+
from project_root_folder + "/frameworks/cocos2d-x/cocos/scripting/js-bindings/script"
168+
into dest_assets_folder + "/script"
165169
}
166170

167171
copy {
168-
from "${buildDir}/../../../../../main.js"
169-
from "${buildDir}/../../../../../project.json"
170-
into "${buildDir}/intermediates/assets/${variant.dirName}"
172+
from project_root_folder + "/main.js"
173+
from project_root_folder + "/project.json"
174+
into dest_assets_folder
171175
}
172176

173177
// compile the scripts if necessary
@@ -177,8 +181,7 @@ android.applicationVariants.all { variant ->
177181
}
178182

179183
if (compileScript) {
180-
compileJS("${buildDir}/intermediates/assets/${variant.dirName}",
181-
"${buildDir}/intermediates/assets/${variant.dirName}")
184+
compileJS(dest_assets_folder, dest_assets_folder)
182185
}
183186
}
184187
}

templates/lua-template-default/frameworks/runtime-src/proj.android/app/build.gradle

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ android {
5050
res.srcDir "res"
5151
jniLibs.srcDir "libs"
5252
manifest.srcFile "AndroidManifest.xml"
53+
assets.srcDir "assets"
5354
}
5455

5556
externalNativeBuild {
@@ -160,23 +161,26 @@ def compileLua(srcDir, dstDir, doCompile, is64bit, doEncrypt) {
160161
}
161162

162163
android.applicationVariants.all { variant ->
164+
def project_root_folder = "${buildDir}/../../../../.."
165+
def dest_assets_folder = "${buildDir}/../assets"
166+
163167
// delete previous files first
164-
delete "${buildDir}/intermediates/assets/${variant.dirName}"
168+
delete dest_assets_folder
165169

166-
variant.mergeAssets.doLast {
170+
variant.mergeAssets.doFirst {
167171
copy {
168-
from "${buildDir}/../../../../../res"
169-
into "${buildDir}/intermediates/assets/${variant.dirName}/res"
172+
from project_root_folder + "/res"
173+
into dest_assets_folder + "/res"
170174
}
171175

172176
copy {
173-
from "${buildDir}/../../../../../src"
174-
into "${buildDir}/intermediates/assets/${variant.dirName}/src"
177+
from project_root_folder + "/src"
178+
into dest_assets_folder + "/src"
175179
}
176180

177181
// copy {
178182
// from "${buildDir}/../../../../cocos2d-x/cocos/scripting/lua-bindings/script"
179-
// into "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos"
183+
// into dest_assets_folder + "/src/cocos"
180184
// }
181185

182186
// compile & encrypt the scripts if necessary
@@ -220,32 +224,32 @@ android.applicationVariants.all { variant ->
220224
// invoke cocos command to compile & encrypt the lua files
221225
switch (buildType) {
222226
case -1:
223-
compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src",
224-
"${buildDir}/intermediates/assets/${variant.dirName}/src",
227+
compileLua(dest_assets_folder + "/src",
228+
dest_assets_folder + "/src",
225229
false, false, encryptLua)
226230
break
227231
case 0:
228-
compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src",
229-
"${buildDir}/intermediates/assets/${variant.dirName}/src",
232+
compileLua(dest_assets_folder + "/src",
233+
dest_assets_folder + "/src",
230234
true, false, encryptLua)
231235
break
232236
case 1:
233-
compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src",
234-
"${buildDir}/intermediates/assets/${variant.dirName}/src/64bit",
237+
compileLua(dest_assets_folder + "/src",
238+
dest_assets_folder + "/src/64bit",
235239
true, true, encryptLua)
236240

237241
// remove the lua files in src dir
238-
delete fileTree("${buildDir}/intermediates/assets/${variant.dirName}/src") {
242+
delete fileTree(dest_assets_folder + "/src") {
239243
include '**/*.lua'
240244
}
241-
delete "${buildDir}/intermediates/assets/${variant.dirName}/src/cocos"
245+
delete dest_assets_folder + "/src/cocos"
242246
break
243247
case 2:
244-
compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src",
245-
"${buildDir}/intermediates/assets/${variant.dirName}/src/64bit",
248+
compileLua(dest_assets_folder + "/src",
249+
dest_assets_folder + "/src/64bit",
246250
true, true, encryptLua)
247-
compileLua("${buildDir}/intermediates/assets/${variant.dirName}/src",
248-
"${buildDir}/intermediates/assets/${variant.dirName}/src",
251+
compileLua(dest_assets_folder + "/src",
252+
dest_assets_folder + "/src",
249253
true, false, encryptLua)
250254
break
251255
}

0 commit comments

Comments
 (0)