Why the Android convention does not follow Java


So I've been around android for about two years now, and around 6 with java, something that I liked from the very start that i discover them where the Java Convetion, this guide that help me wrote more understandable code you know the typical CalmelCase Upper for class lower for method, or the getter and setter of JavaBean, etc. But what i've also seen it's that Android itself sometimes does not follow some of them,

I would like to know Why?

Does not declared private attribute and follow the getter and setter pattern. Is it as evil as some say it is? or they just leave it like that for example purposes.

They start the member with 'm' preffix? for me it's sometimes annoying but is there any hidden true about it? or it just to specify members?

They seem to love static class while before I used to avoid them?

Do you know any other that you'd like to share?

I found a few answers for your questions when I ever have questions like you have. Here is the link:

Android: Designing For Performance