Refactor GNSS listeners
Gnss listeners currently simply ignore requests that are not made in the foreground or with appropriate permissions, even though these are transitory attributes. In addition, some gnss listener use appops APIs incorrectly. The RemoteListenerHelper pattern is not great either, and makes it extremely difficult to write clear code, as well as duplicates much of the functionality provided by AbstractListenerManager on the client side. This CL unifies logic for multiplexing listeners so it can be used across both the client and server side, and updates all GNSS listeners to use the new model, which properly respects foreground, appops, permissions, gnss enablement, and capabilities. Test: presubmits + manual Change-Id: I8f158e860e10c3ed43b246f6f3687169ac134343
Loading
Please register or sign in to comment