Android apps are written in two languages. One is a version of XML that is used to create user interfaces for Android mobile devices and the other is the Java code that provides the programmed action.
Java is a very widely used programming language and comes in several varieties. There is Java for desktops, Java for web servers, Java for web pages and Java for Android mobile devices. Android Java has to be coded in a particular structure which is sometimes described as a framework. This provides the structural component classes and other helper classes in an API (an application programmers interface). These are imported into the app as required.
You can learn how to develop and publish your own Android app by reading a book. Again I can recommend my own book, "Start Programming Mobile Apps with Android Java". This is available on the Amazon bookstore in Kindle and paperback format. It is aimed at beginners to programming and to Android development. To make life easier and more interesting for beginners, it concentrates on Java coding with very little need for XML and develops a series of real extendable apps. The last of these is a game called Getball which is available for free download from the Google Play Store and described in more detail here.
Android IDE: To develop software applications you need another software package called a development environment. This provides all the Java classes you need and if it is an Integrated Development Environment (an IDE), it also lets you compile your source code into an executable app and test it. There are several IDEs available for Android apps of which Eclipse has been the most widely used for some time. However, Google, the provider of Android, has withdrawn support for the Eclipse plugin and now recommends Android Studio. Here are tutorials on how to use two IDEs.
Android Studio lets you develop apps on a computer and test it on a device emulator or on a real connected device..
AIDE lets you develop apps on the Android device itself and test it on that device.
Android Graphics: Further tutorials are available for Android Java Graphics, that is, graphics produced with Java code rather than the XML layout files. There is a summary of all the Android tutorials here and currently there are four tutorials, as follows:-
Graphics Shapes, an introduction to Android graphics and the graphics classes.
Scaled Graphics, a summary of methods of producing graphics presentations that will scale to any screen size.
Path Graphics, an introduction to the Android Path class that can be used to create complex figures.
Graphics Color, a summary of the use of color in Android graphics and computer systems generally.
I use the the Android framework to produce Android apps for educational and entertainment use. These are published under the Debden label. You can look through a summary of these apps here. Currently they are published on the Amazon App Store and the Google Play Store from which you can download them directly into your Android device. They include the following:-
Deb Draw is a useful drawing app. You can use it like a pen and paper and save the images as jpg files. There are three versions. One is a free version called Deb Draw Free. Another is the premium version called Deb Draw with a number of enhancements, and the third is the Amazon Underground version, Deb Draw Underground. This is exactly the same as the premium version but entirely free.
The Underground version is only available through the Amazon App Store but this can be downloaded from the Play Store and used in all Android devices. From the App Store you can download Amazon apps including the free Underground apps. To run underground apps you also have to download a free app from the App Store. This allows Amazon to pay developers a small commission instead of expecting them to charge for their apps or include ads. So it is a very good deal for the user.
Getball is a small game app that involves trying to retrieve a ball from an opposing team. It is mainly intended to illustrate my book on Android Java but is also a viable app in its own right. The idea is that you should be able to extend the app to create your own game after going through the book.