The hooks in this repository are hooks that you can run during the packaging of your app. Ionic Package uses Cordova, so these are just standard Cordova Hooks that we've selected/accepted.
To run these hooks in Ionic Package, just put a <hook />
tag in your
config.xml
, like this:
<hook type="after_prepare" src="package-hooks/add_platform_class.js" />
That's it! Package will run that hook on the server.
This is probably one of the main reasons you're here, so this is how you do that:
-
Put the following XML in your
config.xml
:<hook type="after_prepare" src="package-hooks/ios9_allow_http.sh" />
-
That's it, actually. Run
ionic package build ios ...
again and your binary should allow HTTP.
These are the available hooks. The type is what you put in type
of your
<hook />
tag, unless you want to run the hook at a different stage (not
recommended). If you want a hook to run before another one, reorder the <hook />
tags.
- author: Ionic
- usage:
<hook type="after_prepare" src="package-hooks/add_platform_class.js" />
- function: Adds the various platform CSS classes to the
<body>
tag of your app such asplatform-android
,platform-ios
, etc.
- author: @daruwanov
- usage:
<hook type="after_prepare" src="package-hooks/ios9_allow_http.sh" />
- function: Sets
NSAllowsArbitraryLoads
to true in your.plist
file, allowing all regular HTTP connections in your app again for iOS9.
You don't need to download these hooks locally, but if you want to use them for
local builds, you can clone the repository within your Ionic App, and Cordova
should pick up your <hook />
tags within config.xml
automatically.
Within your app directory:
$ git clone https://github.com/driftyco/ionic-package-hooks.git ./package-hooks