I've had the same issue as reported above after updating my app dependencies from com.google.android.gms:play-services-maps:15.0.1
to ..:16.1.0
(or ..:17.0.0
). The problem for was that the installed version of Google Play Services on my device (a Zebra TC51 running Android 6.0.1 in this case) is rather old and is managed by our customer using a mobile device management solution (MDM) that is very conservative. Rolling back to ..:15.0.1
or updating Google Play Services to the latest version would both solve this issue for me. Sadly, I cannot force our customers to update Google Play Services (although I'd like them to update obviously).
Reproducing this is straightforward by just installing an older Google Play Services (download the July 2018 version for example, v12.8.74. Set your dependency to 16.0.1 or newer and you'll get the above error message.
I haven't been able to find an overview that lists the compatibility between versions of the installed Google Play Services APK and which versions of the com.google.android.gms:play-services-maps
dependency are supported.
Also, have a look at the Overview of Google Play Services where it is explained how the included dependency (in your app) and the installed client library (on the device) depend on one another.