Autodesk Exchange Apps - Information for Maya Developers
This guide is for developers and content providers new to publishing plug-ins and other content on Autodesk® Exchange Apps – either free, trial or for fee versions. It outlines best practice guidelines and a few requirements for publishers to follow when creating products for the Autodesk Exchange Apps. These guidelines are designed to ensure that users on Autodesk Exchange have a consistent experience when downloading multiple products from the store.
Depending on the type of content, there may be different requirements. Please read the following sections for details:
All content types
Most of the information we need from you is collected via the web form you complete when submitting your content. This includes gathering information to auto-generate a HTML ‘quick start’ page that is included with the download of your product and viewable online. Other requirements are:
- Compatibility: Your product must be relevant to (and usable with) Autodesk® Maya® 2016, and must run on all version of the operating system supported by Maya 2016. But you do not necessarily have to support all platforms, you can choose to support Windows and MacOS only for example. You may also indicate compatibility with Maya 2015/2014.
- Your product must work with any higher tiered version of the Maya product. For example if your application works with the Maya Suites, it must also work with the standard version of Maya.
- HTML help page: The documentation information you provide as part of the submission process is used to populate a standard, auto-generated HTML page. This information must allow the user to quickly understand how to use your product. You can reference additional information (for example, additional help files posted on your website) from this standard documentation. The auto-generated HTML page will be populated using information you provide when submitting your product to the store – you will be prompted to supply it as part of the submission process.
- User privileges: If you don’t use the standard installer template we provide, or if your installer or product requires elevated user privileges (greater than a Windows 7/8/8.1 Standard User) to install, then this must be very clearly documented in the description of your product displayed on the Store. For MacOS, the user will need the root password like for every application installed on a Mac. Linux: the user can either install as single user or root.
- Ready to run: Your product must be "ready to run" as soon as it's installed. It must not require the user to manually copy or register files, or manually edit Maya settings (such as support paths).
- If you use a licensing system, then it must allow your product to run as soon as it is installed by the user. This means that your application allows either instant activation (e.g., online activation), or full functionality with a time-bombed "grace period" that is long enough for you to send activation information to the customer.
- Product Stability: Your product should be stable, and not behave or alter the behavior of Maya in a way that we deem unsuitable (for example, blocking standard functionality, blocking the functionality of another plug-in, causing data loss etc…).
Additional requirements for plug-ins are:
- You must use an plug-in manifest as the loading mechanism. This is typically a PackageContents.xml file.
- Your plug-in must include a shelve button in the Custom shelve and/or a menu to access your main command(s) when applicable. If your application has many buttons, you may also choose to have a separate custom shelve.
Standalone applications and other content
There are no additional requirements for products that are not integrated with Maya. this might include eBooks, video tutorials, industry specific calculators, connectors to Cloud based services and the like.
Use of the bundle and XML file for the Maya 2016/2015/2014 plug-in
As a default location, we’ll be using "All user" location to place the plug-in manifest:
Windows - %ProgramData%\Autodesk\ApplicationPlugins
OSX - /Users/Shared/Autodesk/ApplicationAddins
Linux - ~/Autodesk/ApplicationPlugins (single user) or /usr/autodesk/ApplicationPlugins (all users / root)
The plug-in files will be contained in a specific folder called “<your application name>” and a PackageContents.xml file (created by the installer we create for your app) will be stored within this bundle folder together with the contents that you need for your application:
PackageContents.xml contains the following xml tag among other tags that controls the information of about the installer.
Use the Autoloader system
We strongly encourage you to make use of the autoloader mechanism to deploy your plug-in. Information on the required format for autoloader ‘bundles’ is documented here.
You can also download some of the free plug-ins already available on Autodesk Exchange and study their format – such as one of the Autodesk Plug-in of the Month samples (for example, MathNode).
Use a NodeID for custom nodes
We must get and assign your own NodeID when your plug-in define a custom node Autodesk supports a developer registration scheme to prevent Maya node conflicts between different applications. To register your own block, go here.
End User License Agreement
The installer that the ADN team creates for your app includes a button that allows the user to view the standard End User License Agreement (EULA) during the app installation.
Note: This EULA is NOT modifiable. If you wish to include your own EULA to your app, you can either:
- reference your EULA from the standard HTM help file text, or
- display your EULA when the app runs for the first time, and require the user to accept it before the app will work
If your app or content has any special requirements and the standard installer template cannot handle as is, please talk to us.
For example, if you have specific requirements for your app to be written to a single-user, we can create the installer that install only to the current user.
For any other special needs that require a custom installation, you can provide them in the form of Windows Installer Merge Modules (.msm) files. We will merge your msm file with the Windows Installer (.msi) file that we create for your app. Examples of such a scenario would be: writing entries to the registry for a licensing system you are using, installing dependent components by other vendors, and running custom scripts. For additional information, please contact us at email@example.com.
The ADN team is here to help you be a successful publisher on Autodesk Exchange store. We’ll do whatever we can do to help you. You are welcome to email firstname.lastname@example.org if you have any further questions after reviewing these guidelines and the other documentation on www.autodesk.com/developapps.
Thank you for participating on Autodesk Exchange Apps.