So how do we make changes? The first instinct I had was to make changes in the plugin repo in something like sublime, commit them, and reinstall the plugin in a test application. Spoiler alert: that’s terrible for many, many reasons. One big one is that it takes forever for changes regardless of size. How can we do it in a way that makes more sense?

iOS is a simple example. Open the

ExampleProject/platforms/ios/MyApp.xcodeproj

file in Xcode, and take a peak in the plugins folder. In there you’ll find all the iOS project files from all the plugins, all unfolded. Somewhere in there is the file for the plugin you care about! Since we learned earlier that changes to the code in the platform folder can be deployed immediately, we can tweak and play away!

This same thing can be done with android studio with the platforms/android folder, but you should use the ionic-cli android build, the android studio build process seems to muck with the ionic gradle build stuff.

The only thing to keep in mind is that changes in these files have to be moved into your actual plugin repo. Since the platform folder is technically build output of ionic, the expectation is that it can be deleted whenever, so be sure to be proactive about moving your changes out of the platform folder.

Finally, I noticed some wonkiness when changing plugin names or id’s, so as a rule of thumb if strange things are happening, take a peek at your project’s package.lock, remove references to your plugin, blow away that node_modules folder, and reinstall everything.

I’ve also published the example ionic application that works with this plugin at https://github.com/mibzman/PluginTester.