Wrong.
The GPL prevents linking via API to existing GPL'd libraries. It does not stop you from writing your own library with the exact same method declarations but your OWN implementation.
What google did is specifically NOT prevented by the GPL either.
The GPL focusses on linking because that means MY implementation is used by your code. If you write your own library with the same declarations and your own implementation - then even though your application code is unchanged, I no longer hold a claim.
Indeed most of GNU's libraries (both those under the GPL like readline and those under the LGPL like glibc) could not have existed if Oracle is right - since they were mostly re-implementations of long-existing APIs that every Unix OS ever developed also included. LibC in particular - EVERY unix since the very first Bell Labs one has had a generic C library - and they all implemented essentially the same core set of functions. Their APIs are all virtually identical yet they were all deemed legal and all under their own distinct copyrights. Some were proprietory, some were BSD licensed (i.e. the libc's in every BSD today) and GNU made theirs LGPLd.
A better example would be the wine project. Wine reimplemented just about the entire windows API - all the calls are identical - so identical that you can run windows programs and games with Wine - but every implementation written from scratch as a clean-room reverse-engineer process. That has been legal for many, many years -this case threatens that. It would make it possible for Microsoft to get Wine declared illegal.
If this is illegal Wine would actually be MORE illegal since it is much more compatible with the original API than Android is with Java. In fact that is Oracle's entire PR about this matter: that they are trying to sue google for NOT making the API ENTIRELY compatible with theirs !
Disclaimer: I am a former Oracle engineer, I quite my job because I could not in good conscience keep working for the company that filed this suit !