android apps,learn android programming for beginners, android developers

Next Page
First Tutorial
Coding Android Manifest, Build Gradle

View All Tutorials

Android App Coding - A Beginner's Guide to Making Android Apps

About Our Tutorials

Our Free Android Tutorials are for those who want to learn how to make their own Android App; using AIDE (a mobile programming app), on their Android tablet or smartphone - for personal use, business, or both. The code you learn is compatible with all versions of Android Platforms; 4 - 11. AIDE is compatible with Android platform 4+.

As of April 2021, Android 11 (API30) is the latest version of the android platform; with Android 12 in pre-release.

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.

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 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 Free 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. You can download and install them on your tablet or smartphone.

How To Code With AIDE

Each tutorial app is developed using a mobile coding environment, specifically AIDE; which is designed for coding on android devices like tablets.

We are using the android java/xml coding language. This language is also compatible and can be coded in a Desktop environment, specifically Android Studio; which is designed for coding on desktop computers.

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

Testing Your New App

Although Android Studio does not have an actual mobile platform for testing your newly developed apps, it does have an emulator which can mimic many of the android platform requirements for app testing.
With AIDE, 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.

AIDE Features

AIDE is a coding editor for writing your Java XML code language, and then compiling your app codes, and building your apk app package. To use the AIDE app on your android device, you need at least android platform version 4.

Template App with AIDE

To begin each tutorial, we create a 'simple template android java/xml 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 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 (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.

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 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.

Download AIDE

AIDE is free to download(from Google Play) and install on your android cell or tablet; (tablet recommended, although some smart phones now have decent size screens; mine has a 5" screen size and i actually can code with it).

With AIDE(paid version), you get some free lessons and no 'nag' screen.
AIDE's paid version is about $20 dollars(as of April 2021).

fyi: (We are not associated with AIDE in any manner; when I downloaded and installed the first version of AIDE(few years ago), the AIDE app was mostly free to CODE and RUN apps and the paid version was about 10 dollars).
Having said that, if you plan on coding often and publishing your app(s), then do consider the paid version); as it is easier to code without the 'nag' screen (free version has nag screen).

Market Places - App Distribution

Google and Amazon are the most used distribution markets for android apps, and there are many smaller markets as well such as Getjar, Opera, Bemobi. 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 - Downloading Your App

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).

AIDE vs Android Studio

Whether you learn with AIDE tutorials or Android Studio SDK tutorials, the coding you will learn is the same as long as you choose Java XML as the program language.

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 much 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. 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; 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 AIDE or Android Studio, 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

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.

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).

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

AIDE for creating Android Apps on your tablet or cell phone(android).
Free and Paid versions.

GoTo Aide

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 and AIDE. Just choose Java XML as your Programming Language.

You May Like:
Make Sushi Rolls at Home
Pro Tips

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

AIDE - for tablets
Android Studio
-for computers