Ich versuche Proguard mit Xamarin zu verwenden. So ermöglichte ich es in Projektoptionen (geprüft Enable ProGuard
), und ich erstellt eine Datei proguard.cfg
in Eigenschaften (als neue Textdatei, ist es richtig?) und überprüfte die Buildaction -> ProguardConfigurationXamarin proguard.ParseException: Unbekannte Option '' in Zeile 1 der Datei 'Properties/proguard.cfg'
Die Proguard-Datei enthält nur eine -keep-Konfiguration mit einem Kommentar. Ob ich den Kommentar verlassen oder entfernen, habe ich immer einen Parse Fehler in Zeile 1:
# test comment
-keep class !android.support.v7.view.menu.**, !android.support.design.internal.NavigationMenu, !android.support.design.internal.NavigationMenuPresenter, !android.support.design.internal.NavigationSubMenu, android.support.** {*;}
ich einen Unknown option '' in line 1
Fehler.
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets: Error: Tool exited with code: 1. Output: proguard.ParseException: Unknown option '' in line 1 of file 'Properties/proguard.cfg'
included from argument number 10 at proguard.ConfigurationParser.parse(ConfigurationParser.java:191) at proguard.ProGuard.main(ProGuard.java:484) (WheezMe.Droid)
Irgendwelche Idee?
Dank! Notepad ++ mit "Encode in UTF-8 (ohne BOM)" funktioniert gut! –
Es wäre schön, wenn dieser Prozess raffinierter wäre. Wenn proguard in den Projekteinstellungen aktiviert wird, sollte automatisch eine proguard.cfg im Wurzelverzeichnis des Projekts in der UTF-8-Codierung erstellt werden. Die proguard.cfg-Datei sollte einige Standardbefehle enthalten, um Google Play-Dienstklassen usw. beizubehalten ... Auf diese Weise braucht nicht jeder Entwickler 4-8 Stunden, um den Proguard richtig einzurichten. – Justin
Obwohl die UTF-8-Sache ein Visual-Studio-Problem ist (wir arbeiten gerade an einem Fix für Xamarin), ziehen die Proguard-Standard-Aufbewahrungselemente tatsächlich die Google Play Services- und Android-Support-Dateien "proguard.keep" herunter und fügen sie ein die 'Proguard'-Aufgabe. –