@@ -105,37 +105,29 @@ class AndroidProjectService extends projectServiceBaseLib.PlatformProjectService
105
105
this . copy ( projectRoot , frameworkDir , "build.gradle settings.gradle" , "-f" ) ;
106
106
}
107
107
108
- this . copyResValues ( projectRoot , frameworkDir , versionNumber ) . wait ( ) ;
108
+ this . cleanResValues ( versionNumber ) . wait ( ) ;
109
109
110
110
} ) . future < any > ( ) ( ) ;
111
111
}
112
112
113
- private copyResValues ( projectRoot : string , frameworkDir : string , versionNumber : string ) : IFuture < void > {
113
+ private cleanResValues ( versionNumber : string ) : IFuture < void > {
114
114
return ( ( ) => {
115
- let resSourceDir = path . join ( frameworkDir , "src" , "main" , "res" ) ;
116
115
let resDestinationDir = this . getAppResourcesDestinationDirectoryPath ( ) . wait ( ) ;
117
- this . $fs . createDirectory ( resDestinationDir ) . wait ( ) ;
118
- let versionDirName = AndroidProjectService . VALUES_VERSION_DIRNAME_PREFIX + versionNumber ;
119
- let directoriesToCopy = [ AndroidProjectService . VALUES_DIRNAME ] ;
120
- let directoriesInResFolder = this . $fs . readDirectory ( resSourceDir ) . wait ( ) ;
121
- let integerFrameworkVersion = parseInt ( versionNumber ) ;
122
- let versionDir = _ . find ( directoriesInResFolder , dir => dir === versionDirName ) ||
123
- _ ( directoriesInResFolder )
124
- . map ( dir => {
125
- return {
116
+ let directoriesInResFolder = this . $fs . readDirectory ( resDestinationDir ) . wait ( ) ;
117
+ let integerFrameworkVersion = parseInt ( versionNumber ) ;
118
+ let directoriesToClean = directoriesInResFolder
119
+ . map ( dir => { return {
126
120
dirName : dir ,
127
121
sdkNum : parseInt ( dir . substr ( AndroidProjectService . VALUES_VERSION_DIRNAME_PREFIX . length ) )
128
122
} ;
129
123
} )
130
- . filter ( dir => dir . dirName . match ( AndroidProjectService . VALUES_VERSION_DIRNAME_PREFIX ) && dir . sdkNum && ( ! integerFrameworkVersion || ( integerFrameworkVersion >= dir . sdkNum ) ) )
131
- . max ( dir => dir . sdkNum )
132
- . dirName ;
133
-
134
- if ( versionDir ) {
135
- directoriesToCopy . push ( versionDir ) ;
136
- }
137
-
138
- this . copy ( resDestinationDir , resSourceDir , directoriesToCopy . join ( " " ) , "-Rf" ) ;
124
+ . filter ( dir => dir . dirName . match ( AndroidProjectService . VALUES_VERSION_DIRNAME_PREFIX )
125
+ && dir . sdkNum
126
+ && ( ! integerFrameworkVersion || ( integerFrameworkVersion < dir . sdkNum ) ) )
127
+ . map ( dir => path . join ( resDestinationDir , dir . dirName ) ) ;
128
+ this . $logger . trace ( "Directories to clean:" ) ;
129
+ this . $logger . trace ( directoriesToClean ) ;
130
+ Future . wait ( _ . map ( directoriesToClean , dir => this . $fs . deleteDirectory ( dir ) ) ) ;
139
131
} ) . future < void > ( ) ( ) ;
140
132
}
141
133
0 commit comments