Sometimes when I try to use the Google MAPS API KEY to get a URL to draw a 'polyline', i get an error in my logs:
"error_message":"Keyless access to Google Maps Platform is deprecated. Please use an API key with all your API calls to avoid service interruption. For further details please refer to http://g.co/dev/maps-no-account","routes":,"status":"OVER_QUERY_LIMIT"
I have this in my manifest:
<meta-data android:name="com.google.android.geo.API_KEY" android:value="MY_GOOGLE_MAPS_API_KEY" />
Also, this API KEY 'enabled' in my API CONSOLE and it is restricted to Google Maps Android SDK and Directions API. I also have billing enabled for my Google API CONSOLE but I still get this error sometimes.
Since June 11th 2018, Google began enforcing the use of API keys. Keyless usage will result in a degraded experience, or an error like OVER_DAILY_LIMIT and OVER_QUERY_LIMIT.
Putting the API Key in the URL like this is a good solution:
String url = "https://maps.googleapis.com/maps/api/directions/"+output+"?"+parameters + "&key=" + MY_API_KEY
But be sure that your key restrictions are well configuration. If you have restricted the Key to your app, it may not work because the request make via HTTP are related with your IP address. Meaning that even if you have correctly configured your Android App and manifest, it may result with an ACCESS_DENIED.
For more details about API key and restrictions: Quick guide to getting a key