2
Packaging and Signing Extensions
About Adobe® Application Extensions
The Adobe Extension SDK provides developers with a consistent platform in which to develop and deploy
extensions across the suite. Adobe Application Extensions run in much the same way in different Adobe
desktop applications, providing users with a rich and uniform experience.
Adobe Application Extensions use HTML and JavaScript to create cross-platform user interfaces.
Extensions have access to the host application's scripting interface, and can use the host’s scripting DOM
to interact with the application. ExtendScript is Adobe’s extended version of ECMA JavaScript. The host
applications that have ExtendScript DOMs are packaged with the ExtendScript Toolkit, which allows you
to develop and debug ExtendScript code.
Packaging and signing your extension for deployment
The Extension Manager allows users to install the extension you are developing on machines other than
the one you are currently using (across platforms), to share the extension with other users, and to
distribute it to customers.
Extenstion Manager requires that an extension be packaged in the ZXP format, and the package must be
signed with a valid certificate and time-stamped.
I
MPORTANT NOTE ABOUT TIME STAMPS: Digital certificates typically have a lifetime of one to four years, and
long-lasting certificates can be prohibitively expensive. Without a time stamp, an extension that
previously loaded and ran successfully can suddenly become unusable because a certificate that was
valid when it was used to sign the extension has since expired.
You can add a time stamp using a free, self-signed certificate, and it has the effect of extending the
validity of the signature. For this reason, we recommend that you always include a time stamp when
signing your extension package. For details, see “
How signing works” on page 5.
The package format
An Extension Manager package uses the ZXP format. This is an archive file with the extension .zxp, which
contains:
A copy of the CSXS folder containing the manifest.xmlfile.
A copy of the folder containing the extension-panel HTML file and any dependant files.
A copy of any other optional resources used by the extension, such as icons and localization files. For a
hybrid extension, it must include the resource files for the native plug-in or scripting component.
A file named mimetype, generated by the packaging and signing process.