Just to make sure I understand correctly, should I execute [OEPocketsphinxController sharedInstance] stopListening] in the appWillResignActive notification or appEnteredBackground notification?
That is your call – I don’t actively support background mode usage of OpenEars which means I don’t test against it or recommend approaches for it; there are so few API promises from Apple about what is supposed to happen there and it is assumed to be a best-effort service, so I can’t take on a higher level of obligation about it when I have no control over that. However, if something used to work in 1.x and has stopped in 2.x, I would like to fix it if I can.
What you should show me is the closest thing possible to what used to work, but in the simplest possible implementation, based on the sample app with as few changes as possible. That way we can disengage it from your other app implementation details and we’ll both have a simple and repeatable reference point for discussing it. You may also discover in the process that it works better with the sample app, which might give you a hint about how to change the unwanted behavior in your own app, but either way I’ll take a look at what you have to show me.