Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-6481

Add unified hooks support for cordova app and plugins

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Implemented
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      As per "Proposal: hooks support for plugins" dev mail thread discussion

      Hi, I have an idea how we can add more flexibility to plugin developers.

      Note, right now we have Application Developers – someone who use Cordova for developing applications and Plugin Developers – someone who creates plugins so that Application Developers can use them. For Application Developers we expose hooks so that they can customize their build/package/etc process. I want us to provide similar sort of flexibility to Plugin Developers so that they can go beyond of <source/>, <framework/> tags and get mechanism to add custom installation, build logic required by a plugin. Example usage will include: downloading/compiling additional binaries, marking source file to be copied to output dir, changing target build platform, etc. At present time the steps described could be only achieved by hooks manually added by Application Developer, but the right way is to allow Plugin Developer to expose this as part of plugin definition.

      Example configuration could look like
      ```
      <script type="postinstall" src="scripts/postinstall.js" />
      <script type="preinstall" src="scripts/preinstall.js" />
      <script type="install" src="scripts/install.js" />
      ```
      beforeinstall/preinstall – run before plugin is installed
      install/postinstall/afterinstall – run after plugin is installed
      uninstall – run after plugin is uninstalled

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                sgrebnov Sergey Grebnov
                Reporter:
                sgrebnov Sergey Grebnov
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: