android apps,learn android programming for beginners, android developers

Next Page
First Tutorial
Coding Android Manifest, Build Gradle

Homepage
View All Tutorials


Coding Android - Learning Mobile App Development

Updated Dec 2024

About Our Tutorials - Learning Curve

Our Free Android Tutorials are for those who want to learn how to make their own Android App; using a Java supported IDE(Integrated Development Environment), either for mobile or desktop. The Java/xml code from our tutorials is compatible with Android Studio(free)which is a desktop(computer) IDE, which has lots of great automated features for making android mobile apps. And, the codes are also compatible with AIDE, a mobile app, and a mobile IDE, for creating apps on your smartphone or tablet. AIDE was available at the Google Play Store, and for its' premium key(paid version). However, the free version is still available to download from some websites: Things to look for:
AIDE(free version) is 40mb in size, and this is its' icon:
AIDE coding editor icon
cNet - Good for download
FilePlanet - Good for download
Softonic - Good for download

What To Know: AIDE free version - has basic functionality.
AIDE FREE version, many useful features are included:

you can open the coding editor,
you can practice coding in the code editor, learn to code,
auto error checking and code completion, simplifies coding,
browse and read the free tutorials available in AIDE, there are some,
can create a mobile non game app from template(java/xml,single screen app) and name it as you want,
can create a mobile game app from template(java/Libgdx,single screen app) and name it as you want,
can add a customized icon for any app created, game app or non game app,
can add/replace/edit the code from an app's first run, save it, and then BUILD/RUN/Install the code,
can edit code that's already been built, must copy the code before you BUILD/RUN/Install the app and re-paste it,
can see the installed app on your android device(phone,tablet),
installed apps remain on your device until you uninstall them,
can export the built app by using a APK Analyzer tool available from Google Play
can use the extracted apk file to market your app to marketplaces, websites, social media,

Once you have saved your code and have built/run/installed your app; You can then edit that same code, in the AIDE code editor, however,
You must first SAVE/COPY that CODE, before you BUILD and RUN the code. Then, just re-paste it into the same app(remove the code that's there first), at MyGdxGame.java(for game apps), or MainActivity.java for non game apps.
If you don't have to edit the code, then you don't have to save(copy) the code before you build and run the app. Note: With our tutorials, we provide the code for each app you create, so you should only need to run the code the one time, unless of course, you want to tweak it.
Because this is the free version of AIDE, this is the basic functionality it provides. If AIDE is available again on PlayStore, I will update this info, and provide the link to get the Premium Key(paid version) where all features are included. To note, with Android Studio all features are included and free to use.

There is also another mobile IDE, mAndroidIDe, which follows a similar create method like AIDE, by using a Template to easily create your first Android Activity Screen. Their mobile IDE can be downloaded from their website - mAndroidIDE.com. I have not installed this app, however, it states it is also compatible with Android Studio.
AIDE and AndroidStudio are most similar as app code (Java/xml) can be easily copied and pasted from one to the other; and by simply selecting a Template, you can easily create a one activity screen app, and from that you can add additional screens, and the UI elements you want to include.

If you have never coded before you might find Android Studio the best place to learn, as Android Studio has many automated features that make creating Android apps really user friendly. They also have their own selection of tutorials. Our tutorials follow an easy learning curve with small byte sized lessons; with simple components to start, and then include more sophisticated code and methods as we continue the tutorials. By completing our tutorials, you will learn many functions and methods for creating some nice android apps.
Our tutorials are great for learning the basics of Android App Development. On this page you can read more about what you will learn in our Android App Tutorials. If you prefer to start learning Android Mobile Game Dev, then gohere

Creating An App From Templates


Quoted from the AndroidStudio website:
'Templates create the structure of the project and the files needed for Android Studio to build your project. The template that you choose provides starter code to get you going faster.'(1)
All our tutorials are created from the Template app in AIDE. Android Studio also has similar Templates but more choice of type. For example, with AIDE, you can select only one Template(a one screen activity that reads Hello World). This is a one screen app without added features or navigation links or menus. In Android Studio, you have several choices of Template app to select, including; One screen Activity app(like AIDE), Two screen activity app, Navigational pane with one activity app, and they have a Template specifically for adding adMob(advertising) to your app. All these templates make creating your app much easier because you don't need to code as much yourself. Templates are quite popular at Android Studio, with the 'One screen activity template', being the most often created.

Android Studio Features

With Android Studio, a lot of features are included by default like adding dependencies, and setting your SDK targets for your app. And, you can open the designer tab allowing you to view your app realtime as your creating and building it. As well, their app emulator, allowing you to test your app to make sure it has no issues, including targeting with a variety of android platform apis.

Here's some good links to get you started with Android Studio for Desktop. You will need certain computer specs also before you install the program so do read those at their website.

Get Started Guides for Android Studio...and more
Geeks for Geeks have many good articles for Android Studio.
Install Guide
Folders Structure
Types of Activities
Java vs Kotlin - Android App Coding

As of Dec 2024, Android 15(API 35) is the latest released version of the android platform.

Our Tutorials

**New** This year, 2024, we now have mobile Game Dev tutorials. You can browse all posted tutorials from our Blog at this Blog link . They are also created using AIDE. AIDE has templates available for game apps, and non game apps, making it easy to develop Android apps, on the go, with your smartphone or tablet. Note: Android Studio also has templates you can use to create your Android apps easily, and game app templates - when you add the Libgdx interface to Android Studio. More on this at our Game Dev Intro article and Game Dev tutorial 1 - go here

Non Game Tutorials
The tutorials are sectioned: Tutorials I, Tutorials II, Tutorials III, Tutorials IIII (Material Design-Animation- Animators- Interface Design), and Tutorials V - App Launch, which covers the topics of App Analytics, App Monetization, and App Distribution.
All newly added android tutorials are now categorized by month, and like all tutorials, so named by tutorial topic. You can find all non-game tutorials, including the newest ones by browsing Android App Coding - Free Tutorials



In the following section, you can read about the app topics that are learned in each of the 'Tutorials' sections I - IIII, and topics that are presented in Tutorial V.

Tutorials I

The first tutorials explain in detail the pages you will code and those you won't, within an android app (7 tutorials-reading time: about 30 mins);

Tutorials II

(14 tutorials -total reading time 1-1.5 hour; time to complete each app, about 1 hour per tutorial)

In these tutorials, you begin by creating your own android app; a simple one page app containing one activity.

To create your first app you will use a simple 'template' app; making it easy to create and learn at the same time.

Your app is created using AIDE,(an android app used for Creating Android Apps on your Android Tablet or Smartphone).


Once your app is created; we then edit the app with new functions and features, and this is how we learn to develop Android Java/XML apps.

Learn to add buttons, text, images; learn to code background color: screen orientation;

learn to code layout types like Linear layout, Frame layout, Horizontal Scrollview;

learn how to code a customized style, a pre defined system theme; how to implement a Toast Text Message; and,learn how to use 'android:id'(resource id) in coding elements.

Tutorials III

In tutorials III, we will make apps with additional functionalities and features.

In our first tutorial, we learn about Shape Drawables, the various types of, and how to implement a shape drawable line into our android app.
A drawable line is ideal for sectioning your app for any number of purposes.

WebViews - are suitable when bringing web links into your apps interface. In making this app, we will learn when to use a webview, and how to add one to your app. Android Tutorial WebView - how to add one to your android app.

Splash Screen - Splash screens are shown to your users before the first app page; and as the name suggests, they are usually a matter of seconds; ideal for promoting products, coupons, deals, or just adding your own logo for branding.

With a timed splash screen you can use any seconds you like; although preferably 1, 2, or 3 seconds. In this tutorial we will make an app with a Splash Screen

Gradient Drawables - Adding style and color to your app's interface (UI) can be done using a variety of methods such as background colors, and android platform themes; which we learn in Tutorials II. Gradient drawables can also be used for this purpose.

Gradient drawables are used to add more than one color to your app elements such as: buttons, textviews, and layout backgrounds.
Typically, you use two similar colors;
one lighter and the other darker;
however, any combination of colors can be implemented.

In this tutorial, you will make an app with several gradient drawable colors, and learn how to create the different types; and then add them to your app buttons and the Linear Layout background.
Android Tutorial - Gradient Drawable App

In the next 3 tutorials, we learn to make android apps with Fragments.
Fragments were added to the Android Platform in API 11. Fragments are often used for modulizing your app's interface. There are many ways to design and customize your app interface using fragments.

For our tutorials we will make apps with these Fragments:
a weighted fragment, a listview fragment, and a tabbed fragment.

With a 'weighted fragment app' you add two fragments to the screen; and then section them by using a 'percentage of calculation'. Each fragment
is given a weight.

A 'listview fragment app', has two fragments; and can be used to itemize and list any number of items in your app.

And, a 'tabbed fragment app', is two or more fragments that are tabbed, and, you can browse each tab which contains its own fragment(screen view).

Share Intents - Sometimes, you might want to 'share images' and text from your app with other apps on your device or to social networks like Twitter and Facebook. To share data like this, we need to code an 'Intent', in this case, a Share Intent.
You can add a share intent method to an app your making which will allow the user to share text and images.

In this tutorial we learn how to code a simple share intent for text.
For sharing images we must create a Share Intent for Images, which you can learn to code in this tutorial, how to share an image using a share intent method

Media Player - is a code class for android that allows you to play media; like audio, video and stream data as well. In its simplest form, you can have a audio file play automatically when an app page loads into the screen view. There are also many player controls you can add. In this Android Media Player Audio tutorial; we will make an app to play an audio file with two buttons; Play and Pause.
Media Player with Audio

Video Player - having a video player allows you to play videos within your android app. There are several coding methods you can use to do this; for this app we are using the Video View and Media Controller methods. Learn how to code a video player in this tutorialCoding Video Player

Localization - Localizing your app for languages from different regions of the world is something you can implement to give your app more exposure and potentially more downloads and sales.
In this app tutorial, you can learn how to code support for languages. Localize Your App
World Languages


ListView - ListView is a common user interface in android apps. Basically, it allows you to list items in a row format. You can have one, two or more lines of data in a row. The data can be just text, or text and images, or just images. You can customize listview as you like.
And, ListView is scrollable once your rows exceed the physical parameter of your device view.
In these next two tutorials you can learn to code a simple listview, and a listview that displays a 'toast' message.

Android Tutorial, Coding a Simple ListView

How To Code Android, ListView with Toast Message

Sliding Drawers are often used in UI designs for apps. Sliding drawers do as the name suggests; they slide out from the side of the app, and can be returned to original slide positions using Toggle like handle. They can slide from the sides or top or bottom of the app view.

In these following tutorials, you can learn to code a sliding drawer, and a sliding drawer with a listview.
Android Tutorial, Sliding Drawer

Android Tutorial, Sliding Drawer with ListView

Tutorials IIII

These lessons cover several topics including Material Design, Animation, Animators and Interface designs.

These tutorials introduce you to the Material Design Code Classes which include many new code classes and improved updates to older classes.
In tutorials IIII, you will make apps with some of the new code classes of Material Design, including 'Elevated View' ,'Shadowed Container' and how to implement a basic 'CardView'.

You will also makes apps with the new 'Themes' available to use in Material Design. Material Design code classes were added in Android version 5 API 21. Some of these new code classes are considered important because of their improved functionality over some older but similar code classes while others for new design layouts or features like 'Floating Tabs', 'Recycler View', 'CardView', and new 'Color Blends' for the user interface (UI).

Tutorials V

Tutorials V , App Launch, where components of post app development are considered once your app has been built, tested, and is ready to be added to the various app stores, or your own website, and at social media platforms. All these provide opportunities where users can download your app.

In Tutorials V, you will learn about the most common 'Metrics Tools' used in analyzing mobile app performance, including methods used to determine user behaviour.

App Monetization allows you to make money from your app. Common methods to do this are:
adding advertising to your app(mobile ads),
charge a fee for updates or premium features in your app,
charge for removing ads from your app.
You can customize any of these to suit your app.

And App Distribution is the marketing of your Android app to the app stores like Google, Amazon, and the many smaller venues where android apps are downloaded by users.

In these tutorials we explore the various online websites, (free and paid), that offer these essential post development services.


Download Sample Android Apps

View Our Android Apps Developed Using AIDE Apps developed using Java XML; the coding language you'll learn in our Free Android Tutorials.
Some samples of the apps you will create. And, some of the tutorials - animations, have the apk you can download to view the app before you code it yourself.


How To Code With a Mobile IDE

Each tutorial app is developed using a mobile coding environment. I use a mobile IDE app that compiles the code(builds the code) and also has a built-in code editor, aka IDE. Most IDE's (integrated development environment) have both the compiler and code editor included, and have other common features like Error Checking, and Suggested coding.

We are using the android java/xml coding language. This language is also compatible and can be coded in a Desktop environment, such as Android Studio; which is a software designed for coding on desktop computers. Android Studio can make the same Android app as a mobile IDE, because the coding language is the same: Java/xml. Android Studio has a lot of integrated features, that a mobile IDE does not have, and it has a built-in emulator so you can test you Android app.

Android Studio is free to download, install, and they have many all-free learning guides you can use.

Testing Your New App

Android Studio has an easy to use interface, which simplifies many aspects of the coding process, and, as mentioned, the emulator to test your Android app.
With a mobile IDE, the testing process is somewhat simpler; as you code, then build and install your newly developed app on your android device (smartphone, tablet) it gets tested at the same time, and on the mobile device its' targeted for. So whether you use a mobile IDE to learn and build Java language Android mobile apps, or a desktop IDE, they both have their pros and cons. Overall, once learned, the Android Studio, makes it much easier to complete the app making processes. With mobile IDE you do more hands-on coding. And, mobile IDE has the portability which is good.

Creating Android App with AIDE - Template App

For those of you that do have AIDE installed on your smartphone or tablet, this section would be a good read.

To begin each tutorial, we create a 'simple template android java/xml app'. This is easy to create as you'll learn in the lesson - Creating Your Simple Android App.
Then we need only replace the code on pages that we are using for the new app we want to create.
All the remaining pages of code don't have to be edited.
Each of our tutorials have an 'Example Code' section; where you simply copy the code required for the app.
And, for some tutorials, we may have to create new pages. Instruction is included in the tutorials for this also.

Then, we BUILD, RUN, and INSTALL our app and then Open our newly created android app by clicking on the apps' icon; just like any app you install on your android device.

Providing Image Resources

If a tutorial's app requires an image or icon; we provide that as well for you to use.

Updating An App

Once you create an app from a tutorial, the app will reside on your tablet or (smartphone) with your other tablet apps. You can make changes to the app(add or remove code), add additional functionality to your app;(more app components)or use it as a basis to make another app.

Android Developer Website

Each tutorial also references the developer pages at Android Developer, where you can view all available coding properties for each Code Class we discuss.

You will learn many Android Java XML Code Classes, as you progress with each tutorial.

The 'AppProjects' Folder

The 'App Projects' is where you find the apps you created.

To navigate - In AIDE, goto left menu, then AppProjects;, then Select the app you created by the name you gave it.
You can also access your AppProjects files using your tablet's File Manager.

The File Manager, on your tablet or smartphone is good to use when you want to move files or app resources like images into the drawable folder of your project or from one app project to another app project.


Market Places - App Distribution

Google and Amazon are the most recognized App stores for Android apps. There is also smaller market app stores like Bemobi, Appland, Aptoide, Getjar, 1Market Mobile, to name a few.
Download their app or browse to their website on your mobile phone to submit your app.
To submit your app to any of these you just need to read and follow their submission guidelines.
Also Read Mobile App Stores

How To - Market Your New Android App

It is quite easy; if you have a hosted website; Just make your app, then upload the .apk file to your server, make a link to it on your website. Users can then download your app. When they double click on the .apk file,the prompt will ask them if they want to install on their device. They choose YES, the app gets installed.

To open the app, they just double click on the APP ICON.(The app name).
You can also post your app link at social networks.

Mobile IDE(Coding Editor-Compiler) vs Android Studio(Coding Editor-Compiler for Desktop)

In summary, whether you learn to code with a mobile app IDE, or Android Studio SDK, the coding processes you will learn is the same as long as you choose Java XML as the program language. The code from our Android tutorials is compatible with Android Studio(for desktop).

If you create your app on your computer you will need to test it in an android test environment; For desktop users of Android Studio; there is a program(emulator) that will test your app in Android Studio, however, with AIDE, the process is simpler because the app is already on your tablet, all you have to do is RUN and then INSTALL it.

There are some Android terms and meanings that would be helpful to know for these tutorials and generally for developing Android apps on a mobile device or a desktop computer with Android Studio. Being familiar with them will likely make your learning/coding easier as you complete each tutorial. Each tutorial also has additional terms and meanings relevant to that particular android development topic.


Android Programming Java XML - Terms- Meanings- References

Here we explain some of them.
apk - is the package name of your android app. This file, example: myandroidapp.apk is the file you distribute to the market places if your going to market your app once you create it. Or, if you want to have it available on your website for download.

When you first create your app, you give it a App Name, and a Package Name. The app name is whatever you want to name it: example, JapaneseVerbs. The package name is named/saved using this format: com.domain.packagename.

If you have a domain name, that is usually used; so if you had a domain named Japanese.com; you might name your package like this:
com.japanese.japaneseverbs The package name cannot be changed once created; the app name can be changed within your app Project.

The apk file can be found in your appProject in the 'bin' folder. You will know its the app apk because of the .apk format at the end of the name.You can copy paste this from your files hierachy in your tablet's file manager - just look for 'AppProjects'; you cannot copy/paste it directly within AIDE editor.

You can also use an APK Analyzer to find the completed app apk file (.apk) within your tablet or cell phone's files and export it.
There are several on Google Play for free download.
And, they allow you to export any apk into your device; usually into the folder name created by the APK Analyzer.

The APK Analyzer provides lots of info about your device's installed apps(apk); and some you might require, especially if you decide to include free apis in your app.
Just look for the 'app name' once you initiate the APK Analyzer tool.
For additional reading Using an APK Analzyer Tool To View Apk Info

Keystore - is the folder you create to store the signed keys for your 'completed and ready to publish android app'. Basically you first create the keystore in your mobile IDE or Android Studio IDE, and then you add the signing key once your have completed building your app.
No need to have one until your android app is completed and your ready to distribute it to the markets or for your website. Each app you build has a key assigned to it; usually a pre release or debug key.
Then once your app is completed and ready for publishing, you add the Signing Key; by using the keystore features in AIDE settings.
Do Read How to create a keystore for your android app

Android App - refers to an app that is written with Java XML
Android Native
- refers to an app that is written with C Java XML

Create new Project - means to create a brand new android app; which is one activity with one screen, unless stated otherwise.

AppProjects - when viewing your apps; AppProjects is the first folder you will see, all projects(your apps) and then all files reside within this folder directory AppProjects/nameOfApp/

AIDE Template - Sample App -
this is the app we use to create an app for most of our tutorials. The template app is good if you are just learning to code android because of its' simplicity; but also useful because you can build a multi tiered app from it. Android Studio also has Templates you can use to create your App Screens.

Git Respository - You will see the word GIT, amongst your files folders, usually placed at top of the hierachy.

GIT is a coding hub where developers can find code snippets, classes, and code specific references. It is a public forum, it is free; you can post your own code there, and from AIDE.
You can also have your own private hosted web page on Git with a paid account.

Code class - Most coding is referred to as classes, code class, or widget; also common is subclass and inherited class. Widget is common for code classes pertaining to the UI(user interface); such as ListView widget. These all basically mean a Code Class; or a code class from another code class or included within a code class hierachy.

Resources (also called res or res folder) Certain items in your app are placed in the resources; Like text, images, videos, you may add to your app. All such items are added to the resources folders in your app.

Some commonly used resource folders are:

res/values/strings.xml(for text),

res/drawable(for images, animation xml files),

res/drawable-hdpi(for images),

res/raw(for videos, audios),

res/anim(for animation images and drawables),

res/values-countrycode/strings.xml(for localize languages),

res/menu(for appbar menu items).

strings
if your want to add some text to your View, then you need to use the strings.xml file. This is where each coded 'text name' string is put. @string/mytextname, is how it is coded in your TextView element. The 'mytextname' is then referenced in the strings.xml file with the 'actual text' you want to add.

drawables refers to the images, graphics you add to show in your app for each app image element you specify, each image is referenced in code and placed in the resources/drawables

SAVE a file - after you edit or add new code to any of your apps file pages; you should save the code. Also, in settings of AIDE, you can choose to have the files save automatically after any changes made to them. Refer to SETTINGS, in AIDE. Click top right icon from AIDE, then choose, SETTINGS

RUN your app project - means to compile build and update your code with any new code or changes you made; and you INSTALL and OPEN your app at the same time.

UPDATE YOUR APP- when you RUN your app, the prompts will ask you if you want to update your app - choose YES, then INSTALL, choose yes, OPEN, choose yes.

First tutorial - Android Manifest, Build Gradle



ANDROID STUDIO - for creating Android Apps on your desktop computer.
Free to Install and Use

Learn more - Android Studio


The Java XML files we code(example tutorial codes) and the Android Apps we create in our Free Tutorials are compatible with Android Studio for desktop computers.

You May Like:
e-Scooter News, Bestsellers and more..
Make Sushi Rolls at Home

If you Like Our Free Android Tutorials - Give Us a Social Mention Share


CODING TOOLS
Coding on Mobile
Mobile Ide - Google Play
Coding on Computer
Desktop Ide - Android Studio

2025 gamedev.zeootr.com, formerly - AndroidAppCoding.com