Microsoft
29.11.2023, 09:59 Uhr
Android-Ressourcen mit .NET 8 generieren
Wie Dean Ellis, Senior Software Engineer Xamarin Android bei Microsoft, berichtet, hat Microsoft mit .NET 8 ein neues System für die Generierung des C#-Codes eingeführt, der für den Zugriff auf Android-Ressourcen verwendet wird.
Mit der Veröffentlichung von .NET 8 hat Microsoft ein neues System für die Generierung des C#-Codes eingeführt, der für den Zugriff auf Android-Ressourcen verwendet wird. Das System, das in Xamarin.Android, .NET 6 und .NET 7 eine Resource.designer.cs-Datei generierte, ist veraltet. Das neue System generiert eine einzige _Microsoft.Android.Resource.Designer-Assembly. Diese wird laut Dean Ellis alle endgültigen Ressourcenklassen für jede Assembly enthalten. Grund für die Änderung ist, dass das alte System einige Probleme aufwies, die sich sowohl auf die Grösse der App als auch auf die Leistung beim Start auswirkten. Das neue System soll etwa 8 Prozent schnellere Startzeiten bewirken und die Pakete sollen 2-4% kleiner sein.
Alle Android-Anwendungen enthalten eine Art von Ressourcen für die Benutzeroberfläche. Sie enthalten oft die Layouts der Benutzeroberfläche in Form von XML-Dateien, Bilder und Icons in Form von png- oder svg-Dateien und Werte, die Dinge wie Stile und Themen enthalten. Ein Teil des Android-Build-Prozesses besteht darin, diese Ressourcen in eine binäre Form zu kompilieren; dies geschieht mit dem Android-Sdk-Tool aapt2. Um auf diese Ressourcen zuzugreifen, stellt Android ein API zur Verfügung, das es erlaubt, eine Integer-ID zu übergeben, um die Ressource abzurufen.
Alle Details über das neue System für den Zugriff auf Android-Ressourcen finden Sie in diesem Blogbeitrag.