I PreEmptive Lösungen zu verwenden bin versucht - Dotfuscator mit meiner Xamarin.IOS app, aber die Erstellung fehl und ich erhalte diese Störung:Dotfuscator Befehl beendet mit Code 1 xamarin.ios
ich alle Schritte von getan haben hier:
https://www.preemptive.com/obfuscating-xamarin-with-dotfuscator
Mein Xamarin.Android funktioniert gut, aber das IOS-Projekt schlägt fehl.
Der Fehler:
The command ""C:\Program Files (x86)\Microsoft Visual Studio 14.0\PreEmptive Solutions\Dotfuscator and Analytics Community Edition\dotfuscatorCLI.exe" /p:InDir="obj\iPhone\Release\DotfuscatorXamarin\dfin",OutDir="obj\iPhone\Release\DotfuscatorXamarin\dfout",ReportDir="DotfuscatorReports\iPhone\Release" "DotfuscatorConfig.xml"" exited with code 1.
Jede Idee, wie ich das Problem beheben kann?
-Update 29-06-2017: Inhalt der DotfuscatorConfig.xml-Datei für das Projekt Xamarin.IOS
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE dotfuscator SYSTEM "http://www.preemptive.com/dotfuscator/dtd/dotfuscator_v2.3.dtd">
<dotfuscator version="2.3">
<propertylist>
<property name="InDir" value="obj\iPhone\Release\DotfuscatorXamarin\dfin" />
<property name="OutDir" value="obj\iPhone\Release\DotfuscatorXamarin\dfout" />
<property name="ReportDir" value="DotfuscatorReports\iPhone\Release" />
</propertylist>
<global>
<option>monocompat</option>
</global>
<input>
<asmlist>
<inputassembly refid="7cf160e1-e28e-4f81-bd8d-f10fdcbcc3f8">
<option>honoroas</option>
<option>stripoa</option>
<option>library</option>
<option>transformxaml</option>
<file dir="${configdir}\${InDir}" name="MyProject.dll" />
</inputassembly>
<inputassembly refid="2d40ee83-3b30-421c-8b1a-fa4d404fb2d9">
<option>honoroas</option>
<option>stripoa</option>
<option>library</option>
<option>transformxaml</option>
<file dir="${configdir}\${InDir}" name="MyProject.dll.mdb" />
</inputassembly>
<inputassembly refid="11652964-9a02-4f24-b042-25f260fada88">
<option>honoroas</option>
<option>stripoa</option>
<option>library</option>
<option>transformxaml</option>
<file dir="${configdir}\${InDir}" name="MyProject.iOS.exe" />
</inputassembly>
</asmlist>
</input>
<output>
<file dir="${configdir}\${OutDir}" />
</output>
<renaming>
<option>xmlserialization</option>
<mapping>
<mapoutput overwrite="true">
<file dir="${configdir}\${ReportDir}" name="Renaming.xml" />
</mapoutput>
</mapping>
<referencerulelist>
<referencerule rulekey="{6655B10A-FD58-462d-8D4F-5B1316DFF0FF}" />
<referencerule rulekey="{7D9C8B02-2383-420f-8740-A9760394C2C1}" />
<referencerule rulekey="{229FD6F8-5BCC-427b-8F72-A7A413ECDF1A}" />
<referencerule rulekey="{2B7E7C8C-A39A-4db8-9DFC-6AFD38509061}" />
<referencerule rulekey="{494EA3BA-B947-44B5-BEE8-A11CC85AAF9B}" />
<referencerule rulekey="{89769974-93E9-4e71-8D92-BE70E855ACFC}" />
<referencerule rulekey="{4D81E604-A545-4631-8B6D-C3735F793F80}" />
</referencerulelist>
</renaming>
<sos mergeruntime="true">
<option>version:v4</option>
<option>disable</option>
<option>dontsendtamper</option>
</sos>
<smartobfuscation>
<smartobfuscationreport verbosity="all" overwrite="true">
<file dir="${configdir}\${ReportDir}" name="SmartObfuscation.xml" />
</smartobfuscationreport>
</smartobfuscation>
</dotfuscator>
Und für PreEmptive.Dotfuscator.Xamarin.targets Datei, ich bin derjenige, der offical mit Webseite. PreEmptive.Dotfuscator.Xamarin.targets
Könnten Sie [die Ausführlichkeit der Build-Ausgabe auf "Normal" erhöhen] (https://docs.microsoft.com/en-us/visualstudio/ide/how-to-view-save-and-configure-build -log-files # to-change-die-Menge-der-Informationen-in-the-Build-Protokoll enthalten? Das sollte die Dotfuscator-Textausgabe selbst anzeigen und weitere Informationen bereitstellen. * (Disclaimer, ich arbeite für PreEmptive und schrieb den Artikel, den Sie verlinkt haben.) * –
Der Fehler tritt bei Zeile 347 (Exec-Task) in der Datei PreEmptive.Dotfuscator.Xamarin.targets auf. Auch gibt es diesen Fehler: PE-Signatur nicht gefunden. Ist das eine PE-Datei? –
Der Fehler schlägt vor, dass Dotfuscator versucht, eine Datei zu verarbeiten, die keine .NET-Assembly ist. Das könnte ein Problem mit der Build-Integrationsdatei sein, daher wäre es für PreEmptive hilfreich, wenn Sie die Frage so bearbeiten könnten, dass sie den Inhalt der 'DotfuscatorConfig.xml'-Datei enthält. Wenn es sich um vertrauliche Informationen handelt, können Sie stattdessen [eine Testversion von Dotfuscator Professional starten] (https://www.preemptive.com/products/dotfuscator/downloads) und [das Support-Team kontaktieren] (https://www.preemptive.com)/contact/supportrequestform). –