2010-12-01 4 views
1

J'ai un assez petit projet Flex4 ciblant Flash 10, développé dans FlashDevelop. Je sais que les SWF Flex apportent des frais supplémentaires à un projet AS3 ordinaire, mais 240Kb pour la version release semble encore beaucoup - n'est-ce pas? Ou est-ce un minimum réaliste?Quelle devrait être la taille d'un SWF Flex?

Dans le cas où il est pertinent, FlashDevelop construit mon projet avec ce qui suit (anonymisées):

mxmlc -load-config+=obj\********.xml -incremental=true -benchmark=false -optimize=true -static-link-runtime-shared-libraries=true -o obj\***************** 

Ne pas inclure Flash player runtimes Flex ou quelque chose de sensé comme ça?

Répondre

2

Le lecteur n'inclut pas la structure Flex. Ça ne devrait pas. La structure Flex est indépendante du joueur et si elle était incluse, le joueur devrait inclure chaque version du framework pour utiliser celle sur laquelle chaque swf a été construit. Pour résoudre ce problème, le framework est différent (comme le framework Flash).

La résolution des grands swfs consiste à utiliser les bibliothèques partagées Framework Runtime. De cette façon, le lecteur chargera une fois la bibliothèque partagée swf pour la version de framework spécifique que vous avez utilisée et cette bibliothèque partagée sera utilisée pour tous les swfs qui ont été compilés avec la même version de framework.

Vous trouverez plus d'informations ici:

http://livedocs.adobe.com/flex/3/html/help.html?content=rsl_09.html

En pratique, il est un peu comme avoir le cadre dans le lecteur, mais il est tout simplement pas pré-chargé. Les cadres sont chargés au besoin.

+0

Ceci est lié à '-static-link-runtime-shared-libraries = true' alors. Mieux que rien, merci. –

1

240KB n'est pas beaucoup. Encore. Cependant, à mon avis, Flex rend les fichiers assez volumineux lorsque vous commencez à développer des applications plus volumineuses. C'est la raison pour laquelle je fais des projets ActionScript simples.

Flash Player ne contient pas de données d'infrastructure préchargées. Par conséquent, 1) faites ce que sam a dit avec les bibliothèques Runtime. 2) charger presque tous les fichiers après le chargement du flash principal, donnant ainsi à l'utilisateur des informations significatives, tandis que le reste se charge (vous pouvez charger la page d'accueil, l'afficher, puis seulement commencer à charger les autres sections). Vous pourriez utiliser quelque chose de gentil appelé BulkLoader.

hth

+0

240k EST beaucoup. C'est acceptable pour les applications (ce qui est ce que Flex est pour) mais c'est quand même assez gonflé. – gthmb

+0

Par intérêt, quelle est la taille des bibliothèques JS comme jQuery? Les fichiers JS non compilés peuvent devenir assez volumineux, bien que j'imagine qu'ils sont assez bien compressés. –

+0

jquery version minifiée est 80k. Mais je ne pense pas que vous pourriez les comparer. AS3 et ses classes est un outil beaucoup plus puissant – mgPePe

Questions connexes