Thanks for the quick response
From the difference in symptoms between the two tablets my gut feeling was also that there is nothing wrong in the top level code. So my suspicion was that it might be somewhere in the part of Android that delivers the frames upwards. Sorry for such a loose description but like I say I'm on a slow and sporadic learning curve.
I did try at one point to put an incrementing counter in the Camera_preview event in the CameraEX class and decremented this counter after the jpeg conversion of the frame in the main activity Camera1_preview sub. I also set the Interval to 10ms to maximise the possible rate of jpeg conversions. In my mind this was to test the idea that the CameraEX Preview event was being fired more regularly than the main activity could respond to (i.e wondered whether a large queue was thus building up - if such a mechanism exists). However the counter remained at zero. So I then wondered if it could be something lower down i.e where Android might buffer the frames before these are then finally 'consumed' by the main activity. Again don't know if such structures/mechanisms exist, so vague conjecture.
I'm pretty sure its not in the communications side of things either because I also took these out of the equation but still the same symptom.
I guess you are probably right about Android in general, though I have to say that before I started introducing the camera code I had a fairly complicated (and Im sure badly written) app using various UI and communication structures which has been running for quite a while (few months) with no apparent memory creep and no need so far for a restart. Maybe fortunate pick of code components and perhaps environment, but encouraged by this.
In the case of using a background app could that also mean that this itself would have to be occasionally restarted (say by the main app)? Have to admit not so keen on the idea of invoking watchdogs on a regular basis since each one could be a glitch in the user experience. So still interested in understanding the root cause. Guess some more dabbling and learning required