Maps V2 May Need ACCESS_NETWORK_STATE Permission
The Google Maps V2 documentation has a section describing the permissions needed to use Maps V2 in your app.
However, there is evidence that this list is missing one entry:
ACCESS_NETWORK_STATE. The stack trace shown in
this StackOverflow question
clearly shows Maps V2 code calling
Now, most of the time, Maps V2 does not call
I have never seen a crash in the lab for missing
and neither has the author of the StackOverflow question. But, it would
appear that there is some set of conditions whereby Maps V2 does
getActiveNetworkInfo(). Probably, therefore, this is a documentation
bug, though there’s a slight chance that the bug is that Maps V2
should not be calling
getActiveNetworkInfo() at all.
Since the Maps V2 code is coming from an Android library project attached to your project, and since at the time of this writing (AFAIK) there has only been one release of this project, this issue may affect all apps using Maps V2.
Whether you go ahead and add
ACCESS_NETWORK_STATE now, or you wait
to see what happens with
the associated Google Maps issue,
is up to you. The more permissions you request, the more likely it
is that some prospective user will skip your app. However, crashing
under some unknown circumstances because you lack this permission
is not exactly a great answer, either.
(and mad props to Tristan Waddington for posting the StackOverflow question!)
Stuck on an Android problem? Subscribers have access to live office hours chats with Mark Murphy, to help you work through your challenges!Tweet