2012-11-12 4 views

risposta

7

Mono per Android non fornisce questa funzionalità, tuttavia è possibile utilizzare uno strumento di terze parti per l'offuscamento. Poiché Mono per Android produce assemblaggi CIL JITed dal runtime Mono sul dispositivo Android, è necessario nascondere questi assembly .NET. Pertanto strumenti come l'obduscatore Android Proguard non ti aiuteranno. È stato segnalato che i seguenti offuscatori .NET funzionano con Mono per Android.

Se si utilizza Xenocode Postbuild quindi assicurarsi di disattivare "riduzione metadati" in modo che i nomi di classe rimangono valide in Java.

Aggiornamento

Xamarin.Android consente di comprimere i file APK, senza la necessità per le DLL .NET compilati. Ciò significa che non è necessario applicare l'offuscamento da un punto di vista .NET. Posso estrarre il mio file APK di rilascio e scoprire che sono inclusi solo il file classes.dex e i file della libreria .so. Per abilitare questa casella spuntare la casella "Incorpora assembly in codice nativo" (questo potrebbe essere disponibile solo per gli abbonati Enterprise).

+1

Grazie. Ho trovato poche altre fonti suggeriscono anche di usare Xenocode Postbuild. Vado e provalo –

+1

Se hai trovato la risposta sufficiente, non esitare a contrassegnarla come risposta accettata. –

+0

@alexw Come hai confezionato l'APK senza le DLL? – Ian