ZXPackager : application pour l’empaquetage ZXP d’extensions CS5


Vous l’aurez peut être remarqué, nous avons ajouté une rubrique Applications au blog. Nous travaillons actuellement sur plusieurs applications AIR orientées « aide au développeur ». ZXPackager est la première d’entre elles.

Cette application propose un moyen simple de packager vos extensions CS5 développées avec le nouveau SDK Creative Suite.

Les extensions ZXP

Depuis la CS5, Adobe propose un nouveau SDK de développement et un format d’extension commun a toute la suite logicielle.
Ce SDK, disponible ici, vous permet de développer vos propres panneaux et autres menus CS5. Le premier format de sortie est le MXP, toujours disponible, vous permettant d’exporter votre extension pour un logiciel cible.
Maintenant, avec la CS5, vous disposez d’un format commun, le ZXP, qui rend compatible votre extension avec toutes la suites CS.

Un fichier ZXP est défini par un manifeste xml, définissant le fonctionnement de l’extension (type, portée logiciel, …), et contient le (les) SWF de l’extension (une extension est en fait une pseudo application AIR, basée sur le SDK CS). Un fichier ZXP est signé numériquement. Vous devez donc avoir un certificat (PKCS12, PKCS11, JKS). Vous pouvez bien entendu utiliser votre certificat auto-signé préalablement créé avec Flash/Flex Buider.

Pour plus d’informations :

Un fichier ZXP doit (habituellement) être compilé en utilisant le packager Java UCF. Et c’est là l’idée de cette petite application : ne pas avoir a redéfinir vos certificats et autres options pour chaque package, et vous proposer une interface plus « user friendly » que le terminal.

Fonctionnement

Démarrage, et préférences

Au premier démarrage, l’application doit obtenir vos préférences de base.

Preferences

  • Java Home

    Vous devez indiquer le chemin vers votre JDK/JRE java, si celui-ci ne correspond pas à celui par défaut (l’application intègre le packager jar UCF, et elle doit connaître le répertoire racine de Java pour pouvoir le lancer). Les chemins racines par défaut sont:

    • Pour Windows : ‘C:\Program Files\Java\jdk1.6.0′
    • Pour Mac : ‘/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0′
  • Certificat

    Vous devez préciser l’emplacement de votre certificat (généralement un fichier de type .p12 ou .p11), ainsi que votre mot de passe. Ces informations sont nécessaires pour la signature de l’extension.

    • Fichier cible

      Vous devez indiquer le fichier de destination. L’extension .zxp est ajoutée automatiquement.

    • Source de l’extension

    • Les sources de l’extension, comme défini dans la nomenclature du SDK CS, doivent correspondre à ce schéma:


      Ce répertoire est construit préalablement par la tâche ant de compilation, dans votre projet (cf. en fin d’article, le téléchargement du projet test d’extension)
      Vous devez pointer sur le répertoire « bin ».

    • Démarrer un nouveau package;
    • Ouvrir et installer l’extension via Extension Manager (vous devez bien entendu avoir préalablement installé Extension Manager CS5)
  • Définition de votre extension

    Un package ZXP a besoin de 2 informations : le nom et l’emplacement de votre extension cible, et l’endroit où se trouve le répertoire « bin » de votre extension.

    start package

    Une fois le packaging démarré, un message d’attente s’affiche.

    Finalisation

    Une fois le package créé, l’application vous propose de :

    Téléchargements

    ZXPackager

    Extension de test


Tags: , , , , ,


5 commentaires ...

» RSS des commentaires
  1. Palleas /
    -->

    C’est vraiment sympa, par contre ça ne vous embête pas de ne pas garder le look’n feel d’une application par rapport à son OS d’éxecution? C’était un peu ça l’intérêt de AIR au final, comme java sans les composants moches…
    Après j’pose la question par curiosité, ça passe très bien sur mon mac :3

    Ton extension UIGFX de démo fonctionne comment sous Fireworks? Je n’ai pas réussi à la faire fonctionner alors qu’elle est bien installée :o

  2. Hervé /
    -->

    :?

    Qu’entends-tu par « ne pas garder le look’n feel d’une application par rapport à son OS d’exécution? » Si ça peut te rassurer, l’application a bien le même look’n feel sous Windows ou Mac, mais l’usage des NativeProcess implique de packager pour l’un et l’autre des OS.
    A suivre, j’ai un joli post qui parcourt tout ça pour bientôt… :)

  3. Fabien /
    -->

    @palleas ba je trouve pas que ce soit l’intérêt de AIR de garder le look de l’OS d’exécution…. Bien au contraire ! Le truc intéressant c’est de pouvoir enlevé le chrome par défaut et de mettre ce qu’on veut. Du coup de pouvoir avoir une interface graphique qui s’étend jusqu’au chrome de l’application. Et faire des trucs un peu plus classe. Parce-que globalement les fenêtres de windows son moches et celles de mac austère. Un peu de fun qe diable! même pour un packager d’appli :)
    Sinon, j’admet, je n’ai pas tester sur toutes la suite CS5, pour la bonne raison que je ne l’ai pas en complet :) Pour Fireworks CS5 (que je m’est pas tester), c’est le seul de la suite qui est pris en charge d’une manière différente par le format ZXP et le SDK CS. Déjà, le wrapper actionscript n’est pas prix en charge. Du coup pas de levé d’événement entre votre extension et l’application. Et puis il y a le JSF, le javascript de Fireworks. C’est le seul de la suite avec flash et le JSFL à fournir une api complète. Du coup il est facile de créer une extension pour Fireworks par ce biais. Est-ce une raison de ne pas l’intégrer complètement dans le SDK CS? Je ne sais pas. Il faudrait demander a Adobe, mais je craint que les réponses me déplaises !

  4. Palleas /
    -->

    Quand je parlais du Look’n Feel, c’était plutôt pour parler du chrome de l’application justement. Comme je l’ai dis, sous mac ça passe très bien vu qu’on retrouve globalement les boutons fermer/agrandir/reduire au même endroit. Sous Windows/Linux cependant je suppose que c’est la même chose, et que justement les utilisateurs risques d’être perturbés, j’ai pas testé sous ces OS en même temps, j’avoue que je ne sais pas ce que ça rend.

  5. Hervé /
    -->

    Je te rejoins dès lors qu’on parle d’une application grand public. Ici, c’est quand même super Adobe-geek comme appli, donc je reste à peu près sûr que ça ne perturbera pas grand monde…
    En revanche, ça me semble clairement pertinent si la diffusion est plus large.


Sois pas timide...


Bad Behavior has blocked 271 access attempts in the last 7 days.