I agree with you about the laches defense of Harmony, and yes, I do think Google got the things from Harmony.
Also, I'm told by Java experts that Google and Java are not word-for-word similar in that while they are identical by way of:
Type FunctionName(Type, Type)
the variable names of the arguments are different in many cases:
where Java might say:
int Compare(String left, String right)
Google's says something like:
int Compare(String s1, String s2)
Anyway, I do disagree that the API is just the function declarations. You need the semantics: the API must include something that explains the semantics to be an API.
Mike Linksvayer likes this.