Well I would say if you know Java well enough to get a basic app done I would say studying how GUI's work with event-driven driver. Meaning you press a button and something happens and then press another button and something else happens. On any mobile device a GUI is required for an application. Having a good design of how you want them to look and feel might take time, experience, and feedback. However, you can learn XML to help to rapidly develop GUI's for Android.
Android allows you to use XML to easily develop the GUI. Now what is great is the Android Development Tools (ADT) plugin for Eclipse IDE allows you to create a very fast GUI. However the drag and drop approach only gets you so far. A lot of what you need to learn is through learning XML, and learning design architecture such as Model-View-Controller (MVC) Arch. The idea is that when you have a GUI and your model changes your GUI or "View" should reflect said changes. Also when you input data into text boxes or press buttons on the GUI "View" your Model should have the respective data modified to reflect changes required.
Another thing is from the ground up make sure you can make your code extensible.
Meaning modular and have the ability to be fluid and dynamic in the ability to change in the never ending uphill battle of the developer, and the changing API and feedback of the end-users. The power of Java is in its ability to, if utilized correctly and planned out, create extensible code that for the most part can stand the changes of the times. The best thing you can do is to plan ahead by allowing your application to only require modular additions to existing code for extra functionality requested by the end-users, or to change just the data structure when new API is released that allows for better performance. With the approach of extensible design of your code your project can have the ability to put all your eggs into one basket knowing that when the basket gets old you can transport the existing placement and structure of the eggs into a new basket, or when you need to add another egg to the basket. Resources:
Here is Android's Best Practices: http://developer.android.com/guide/practices/index.html
XML Android GUI: http://developer.android.com/guide/topics/ui/declaring-layout.html
Useful Resource for Best Practices in Java: http://www.javapractices.com/home/HomeAction.doEdited by adramalech707 - 11/8/12 at 2:44pm