Heading event: -1 for geographic orientation

I’ve just found an issue where on iOS the heading event can return -1 for geographic orientation if the location services are disabled or the compass is not properly calibrated. Has anyone else come across this, and are there any good approaches to detecting this issue?

This does not seem to affect the magnetic value.

If it’s negative ignore it?

That’s my current approach, but I was wondering if there’s a way to detect it using a system.getInfo call or similiar.

So reading through the Apple docs it is clear that iOS requires location services to return geographic heading. If iOS cannot get the location geographic returns a negative value.

https://developer.apple.com/documentation/corelocation/clheading/1423568-trueheading

Is there anyway to detect if location services are enabled?