I am not sure how I got into this situation, but somehow the plugins and their corresponding ionic-native modules got into an inconsistent state. In retrospect i think I did a bad job merging config.xml and package.json after merging my master branch into a feature branch that I hadn’t touched in a long time as I am finally getting back to working on that feature.
I had to go through the laborious process of removing each plugin one at a time, re-compile and re-run my app on the device until deviceready would fire again. To try to isolate which one might be the problem I had to add them, compiling and running in between each one. I finally got to the point where deviceready would be called with all of my previous plugins installed (newer versions now).
My application still wasn’t working very well… SQLLite databases wouldn’t open properly, log messages were missing, etc. I just realized that this was due to inconsistent versions of my ionic-native libraries. I haven’t tested everything yet and there are still one or two things that are not working.
There isn’t really a question here, more of a rant that there has to be a better way to detect this situation and get better logging out of the system. If anyone has any ideas, I am all ears.