Question

Une partie importante du développement mobile, en particulier lorsque vous parlez de jeux pour mobiles, concerne les restrictions relatives à la taille des applications. Certains appareils imposent leurs propres limites de taille, tandis que tous les opérateurs ont leurs propres exigences en matière de taille pour que les applications puissent être libérées dans leur espace-pont.

Ma question est la suivante: existe-t-il une application d’obfuscation java qui obtient de meilleurs résultats de réduction de taille que les autres applications d’obfuscation java existantes?

J'utilise Proguard parce que c'est l'obfuscateur Netbeans par défaut et que vous pouvez obtenir des résultats de réduction de taille assez bons (en passant, la version de Proguard fournie avec Netbeans 6.1 est 3.7. De nouvelles versions sont encore meilleures résultats, je vous recommande d’obtenir les dernières nouvelles). Mais je suis intéressé par ce qu’il ya d’autre et par s’ils font un meilleur travail que Proguard.

Ma conclusion:

J'apprécie les réponses. Carlos, votre réponse a été suffisante pour me convaincre que Proguard est la voie à suivre actuellement. Je pourrais toujours être convaincu du contraire, mais je ne me sens pas mal avec ma configuration actuelle.

J'ai également eu des problèmes d'obfuscation et de fonctionnement sur certains téléphones, mais pas trop. J'ai toujours réussi à résoudre le problème en n'utilisant pas l'argument Proguard "-overloadaggressress". Juste quelque chose à garder à l'esprit si vous rencontrez un comportement étrange lié à obscurcir.

Merci encore.

Était-ce utile?

La solution

En ce qui concerne J2ME et l’obscurcissement, il est prudent d’être un peu prudent. Proguard est le meilleur choix en raison de ses nombreuses années de développement et des nombreuses corrections de bugs qu’il a reçues. Je me souviens de la transition de version entre 2.X et 3.X et de la façon dont elle a cassé bon nombre des versions de mon (alors) employeur. Cela est dû au fait que certaines des modifications permettant une plus grande économie de taille ont également fracturé les fichiers de classe de manière subtile dans certains combinés, tout en étant parfaitement corrects dans d’autres et sur les machines virtuelles de bureau.

De nos jours, Proguard 3.11 est le choix le plus sûr pour les obfuscateurs. 4.XX convient probablement si vous ne devez pas prendre en charge de très vieux combinés.

Autres conseils

Je préfère également ProGuard pour la réduction de sa taille et l'étendue de l'obscurcissement - voir http://proguard.sourceforge.net / . Je n'ai pas nécessairement de contraintes de taille autres que les vitesses de téléchargement, mais je n'ai rien trouvé qui diminue davantage.

Étrange que personne ne se soit souvenu que ProGuard ne peut pas simplement réduire et obscurcir le code, il doit également optimiser. Les dernières versions permettent de spécifier plusieurs passes pour l'optimisation (par défaut, il n'y a qu'une seule passe), je peux spécifier, par exemple, 9 passes.

Après avoir décompilé mes classes, je les reconnais à peine, ProGuard restructure de nombreux appels de méthodes. Tout ce qu'il faut, c'est juste un peu de peaufiner cette merveilleuse application. Je pense donc que ProGuard est la voie à suivre, mais n'oubliez pas de l'ajuster un peu. Il possède également un très joli manuel .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top