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.
You will learn many Android Java XML Code Classes, as you progress with each tutorial.
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