gps not removed/disabled when app suspended via screen lock

I don’t see anything inherently wrong with your code.

Rob