Friday 22 November 2013

Managed & Unmanaged Packages


  • Unmanaged package editable by developer and Installer cannot be upgraded. In managed package certain components are locked and changes are not allowed.
  • Unmanaged package used for 1:1 distributions and managed package used for 1: Many distributions.
  • All editions can create unmanaged package and only developer edition can create managed package.
Managed packages
  • Managed packages are typically used by salesforce.com partners to distribute and sell applications to customers. These packages must be created from a Developer Edition organization. Using the AppExchange and the License Management Application (LMA), developers can sell and manage user-based licenses to the app. Managed packages are also fully upgradeable. To ensure seamless upgrades, certain destructive changes, like removing objects or fields, can not be performed.
  • Managed packages also offer the following benefits:
  • Intellectual property protection for Apex
  • Built-in versioning support for API accessible components
  • The ability to branch and patch a previous version
  • The ability to seamlessly push patch updates to subscribers
  • Unique naming of all components to ensure conflict-free installs
User-added image

Unmanaged packages

        Unmanaged packages are typically used to distribute open-source projects or application templates to provide developers with the basic building blocks for an application. Once the components are installed from an unmanaged package, the components can be edited in the organization they are installed in. The developer who created and uploaded the unmanaged package has no control over the installed components, and can't change or upgrade them. Unmanaged packages should not be used to migrate components from a sandbox to production organization. Instead, use Change Sets.

No comments:

Post a Comment