@@ -275,30 +275,8 @@ export class AndroidProjectService extends projectServiceBaseLib.PlatformProject
275
275
} ) ;
276
276
}
277
277
278
- this . $androidToolsInfo . validateInfo ( { showWarningsAsErrors : true , validateTargetSdk : true } ) . wait ( ) ;
279
- let androidToolsInfo = this . $androidToolsInfo . getToolsInfo ( ) . wait ( ) ;
280
- let compileSdk = androidToolsInfo . compileSdkVersion ;
281
- let targetSdk = this . getTargetFromAndroidManifest ( ) . wait ( ) || compileSdk ;
282
- let buildToolsVersion = androidToolsInfo . buildToolsVersion ;
283
- let appCompatVersion = androidToolsInfo . supportRepositoryVersion ;
284
- let buildOptions = [ "buildapk" ,
285
- `-PcompileSdk=android-${ compileSdk } ` ,
286
- `-PtargetSdk=${ targetSdk } ` ,
287
- `-PbuildToolsVersion=${ buildToolsVersion } ` ,
288
- `-PsupportVersion=${ appCompatVersion } ` ,
289
- ] ;
290
-
291
- if ( this . $options . release ) {
292
- buildOptions . push ( "-Prelease" ) ;
293
- buildOptions . push ( `-PksPath=${ path . resolve ( this . $options . keyStorePath ) } ` ) ;
294
- buildOptions . push ( `-Palias=${ this . $options . keyStoreAlias } ` ) ;
295
- buildOptions . push ( `-Ppassword=${ this . $options . keyStoreAliasPassword } ` ) ;
296
- buildOptions . push ( `-PksPassword=${ this . $options . keyStorePassword } ` ) ;
297
- }
298
-
299
- if ( ! this . canUseStaticBindingGenerator ( ) ) {
300
- buildOptions . push ( "-PdontRunSbg" ) ;
301
- }
278
+ let buildOptions = this . getBuildOptions ( ) ;
279
+ buildOptions . unshift ( "buildapk" ) ;
302
280
303
281
let gradleBin = this . useGradleWrapper ( projectRoot ) ? path . join ( projectRoot , "gradlew" ) : "gradle" ;
304
282
if ( this . $hostInfo . isWindows ) {
@@ -312,6 +290,35 @@ export class AndroidProjectService extends projectServiceBaseLib.PlatformProject
312
290
} ) . future < void > ( ) ( ) ;
313
291
}
314
292
293
+ public getBuildOptions ( ) : Array < string > {
294
+ this . $androidToolsInfo . validateInfo ( { showWarningsAsErrors : true , validateTargetSdk : true } ) . wait ( ) ;
295
+ let androidToolsInfo = this . $androidToolsInfo . getToolsInfo ( ) . wait ( ) ;
296
+ let compileSdk = androidToolsInfo . compileSdkVersion ;
297
+ let targetSdk = this . getTargetFromAndroidManifest ( ) . wait ( ) || compileSdk ;
298
+ let buildToolsVersion = androidToolsInfo . buildToolsVersion ;
299
+ let appCompatVersion = androidToolsInfo . supportRepositoryVersion ;
300
+ let buildOptions = [
301
+ `-PcompileSdk=android-${ compileSdk } ` ,
302
+ `-PtargetSdk=${ targetSdk } ` ,
303
+ `-PbuildToolsVersion=${ buildToolsVersion } ` ,
304
+ `-PsupportVersion=${ appCompatVersion } ` ,
305
+ ] ;
306
+
307
+ if ( this . $options . release ) {
308
+ buildOptions . push ( "-Prelease" ) ;
309
+ buildOptions . push ( `-PksPath=${ path . resolve ( this . $options . keyStorePath ) } ` ) ;
310
+ buildOptions . push ( `-Palias=${ this . $options . keyStoreAlias } ` ) ;
311
+ buildOptions . push ( `-Ppassword=${ this . $options . keyStoreAliasPassword } ` ) ;
312
+ buildOptions . push ( `-PksPassword=${ this . $options . keyStorePassword } ` ) ;
313
+ }
314
+
315
+ if ( ! this . canUseStaticBindingGenerator ( ) ) {
316
+ buildOptions . push ( "-PdontRunSbg" ) ;
317
+ }
318
+
319
+ return buildOptions ;
320
+ }
321
+
315
322
public buildForDeploy ( projectRoot : string , buildConfig ?: IBuildConfig ) : IFuture < void > {
316
323
return this . buildProject ( projectRoot , buildConfig ) ;
317
324
}
@@ -423,14 +430,15 @@ export class AndroidProjectService extends projectServiceBaseLib.PlatformProject
423
430
}
424
431
425
432
public afterPrepareAllPlugins ( ) : IFuture < void > {
433
+ let buildOptions = this . getBuildOptions ( ) ;
434
+ buildOptions . unshift ( "clean" ) ;
426
435
427
436
let projectRoot = this . platformData . projectRoot ;
428
-
429
437
let gradleBin = this . useGradleWrapper ( projectRoot ) ? path . join ( projectRoot , "gradlew" ) : "gradle" ;
430
438
if ( this . $hostInfo . isWindows ) {
431
439
gradleBin += ".bat" ;
432
440
}
433
- this . spawn ( gradleBin , [ "clean" ] , { stdio : "inherit" , cwd : this . platformData . projectRoot } ) . wait ( ) ;
441
+ this . spawn ( gradleBin , buildOptions , { stdio : "inherit" , cwd : this . platformData . projectRoot } ) . wait ( ) ;
434
442
435
443
return Future . fromResult ( ) ;
436
444
}
0 commit comments