Migliore applicazione di offuscamento Java per la riduzione delle dimensioni [chiusa]

StackOverflow https://stackoverflow.com/questions/93290

  •  01-07-2019
  •  | 
  •  

Domanda

Una parte importante dello sviluppo mobile, soprattutto quando si parla di giochi mobile, riguarda le restrizioni sulle dimensioni dell'applicazione.Alcuni dispositivi impongono i propri limiti di dimensione, mentre tutti gli operatori hanno i propri requisiti di dimensione per le applicazioni da rilasciare nel loro spazio di deck.

La mia domanda è: esiste un'applicazione di offuscamento Java che ottiene risultati di riduzione delle dimensioni migliori rispetto alle altre app di offuscamento Java disponibili?

Utilizzo Proguard perché è l'offuscatore Netbeans predefinito e puoi ottenere risultati di riduzione delle dimensioni abbastanza buoni (a proposito, la versione di Proguard fornita con Netbeans 6.1 è 3.7.Esistono versioni più recenti che ottengono risultati ancora migliori, consiglio di ottenere l'ultima).Ma mi interessa cos'altro c'è là fuori e se fanno un lavoro migliore di Proguard.

La mia conclusione:

Apprezzo le risposte.Carlos, la tua risposta è stata sufficiente per convincermi che Proguard è la strada da percorrere attualmente.Potrei ancora convincermi del contrario, ma non sentirti male con il mio attuale setup.

Ho anche avuto alcuni problemi con l'offuscamento e il funzionamento di Proguard su alcuni telefoni, ma non troppi.Sono sempre riuscito a risolvere il problema non utilizzando l'argomento Proguard "-overloadaggressively".È solo qualcosa da tenere a mente se riscontri comportamenti strani legati all'offuscamento.

Grazie ancora.

È stato utile?

Soluzione

Quando si tratta di J2ME e di offuscamento, vale la pena essere un po' cauti.Proguard è la scelta migliore grazie ai molti anni di sviluppo e alle numerose correzioni di bug che ha ricevuto.Ricordo la transizione della versione tra 2.X e 3.X e come ha rotto molte delle build del mio (allora) datore di lavoro.Ciò è accaduto perché alcune delle modifiche che hanno consentito un maggiore risparmio di dimensioni hanno anche danneggiato i file di classe in modo subdolo in alcuni telefoni, mentre erano perfettamente funzionanti in altri e sulle JVM desktop.

Al giorno d'oggi Proguard 3.11 è la scelta più sicura negli offuscatori.4.XX probabilmente va bene se non devi supportare telefoni molto vecchi.

Altri suggerimenti

Preferisco anche ProGuard sia per la riduzione delle dimensioni che per l'ampiezza dell'offuscamento - vedi http://proguard.sourceforge.net/.Non ho necessariamente vincoli di dimensione diversi dalla velocità di download, ma non ho trovato nulla che si riduca ulteriormente.

Strano che nessuno si sia ricordato che ProGuard non solo può ridurre e offuscare il codice, ma anche ottimizzarlo.Le ultime versioni consentono di specificare diversi passaggi per l'ottimizzazione (per impostazione predefinita esiste un singolo passaggio), potrei specificare, ad esempio, 9 passaggi.

Dopo aver decompilato le mie classi riesco a malapena a riconoscerle, ProGuard ristruttura molte chiamate di metodo.Tutto ciò che serve è solo qualche modifica a questa meravigliosa app.Quindi penso che ProGuard sia la strada da percorrere, ma non dimenticare di aggiustarlo un po'.Ha anche un aspetto molto carino Manuale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top