mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 15:23:00 +00:00 
			
		
		
		
	Add snippet to ensure baseline.profm file is sorted
Thanks to obfusk, see https://issuetracker.google.com/issues/231837768 and #6486
This commit is contained in:
		| @@ -1,3 +1,7 @@ | ||||
| import com.android.tools.profgen.ArtProfileKt | ||||
| import com.android.tools.profgen.ArtProfileSerializer | ||||
| import com.android.tools.profgen.DexFile | ||||
|  | ||||
| plugins { | ||||
|     id "com.android.application" | ||||
|     id "kotlin-android" | ||||
| @@ -308,3 +312,24 @@ static String getGitWorkingBranch() { | ||||
|         return "" | ||||
|     } | ||||
| } | ||||
|  | ||||
| project.afterEvaluate { | ||||
|     tasks.compileReleaseArtProfile.doLast { | ||||
|         outputs.files.each { file -> | ||||
|             if (file.toString().endsWith(".profm")) { | ||||
|                 println("Sorting ${file} ...") | ||||
|                 def version = ArtProfileSerializer.valueOf("METADATA_0_0_2") | ||||
|                 def profile = ArtProfileKt.ArtProfile(file) | ||||
|                 def keys = new ArrayList(profile.profileData.keySet()) | ||||
|                 def sortedData = new LinkedHashMap() | ||||
|                 Collections.sort keys, new DexFile.Companion() | ||||
|                 keys.each { key -> sortedData[key] = profile.profileData[key] } | ||||
|                 new FileOutputStream(file).with { | ||||
|                     write(version.magicBytes$profgen) | ||||
|                     write(version.versionBytes$profgen) | ||||
|                     version.write$profgen(it, sortedData, "") | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Stypox
					Stypox