iOS config.xml has missing plugin related entries when cordova prepare is run on OS X.
Here is the current situation as it gets interesting towards last steps:
Project has two platforms, iOS and Android.
I have added dialogs and vibration plugins using CLI.
- I remove iOS platform and add it again using CLI, iOS config.xml has features added back correctly.
- I run cordova prepare now, everything is still working.
- I run cordova emulate, emulator runs and plugins are working.
- I run cordova prepare again (no changes what so ever) features are removed from iOS config.xml once again.
- I have tested exiting emulator before running prepare again.
- I have tested adding and removing several other plugins before running emulator and everything works until running cordova emulate.
Looking at file changes, only difference is at pbxproj which has different unique identifiers for removed and added files for plugin implementations.
- Nothing works until I repeat removing and adding iOS platform.
- I have tested removing and adding plugins after running emulator. BTW, Android config.xml is correctly modified during these changes.
- If I run cordova prepare on Windows, iOS config.xml is again corrected which is good but not very useful.
- installed cordova 3.1.0 on Windows,
- created the project on Windows
- added android platform on Windows
- added above plugins on Windows using CLI 3.1.0
- updated cordova to 3.2.0 on Windows
- updated project on Windows
- installed cordova 3.2.0 on OSX
- added iOS platform on OSX
- i keep plugins and platforms directories under source control as I intend to make changes, so adding and removing platforms before each build is not an option.