Moved all camera handling from onCreate() to onStart(), as a result camera now resumes correctly.