Ivan,
Great points. I agree that descriptive names are necessary. As for the comments is mostly so they may be included automatically as part of the java docs and to provide a further explanation of what the code is doing or how it is implemented.
In regards to long methods and their multiple rerun statements I do prefer to not have long methods and a single return as show here https://github.com/47deg/coding-guidelines/tree/master/java#56-private-helpers . Cheers
We use maven for all of our Android projects and it works like a charm. There are multiple build system for Java as you may already know.
For Android in particular this plugin works great for both Apps and APKLibs.
http://code.google.com/p/maven-android-plugin/
These are also very handy archetypes for different project layouts including ones with integration tests.
Partition,
Thanks for your input. I agree with you that in some cases is more efficient and natural a "package by feature" approach. The reason why do it by layer is that In our largest Android project, a framework that we use to bootstrap app development internally, there is no concrete model thus the more natural way for us to follow infrastructure principles than grouping based on features.