You will write your android application in either Java or Kotlin. However these days there are several frameworks like Xamarin, Flutter and React Native but Java and Kotlin are the two native languages.

Once you've written your app, the Android SDK tools will compile the code, data and resource files into an APK (Android package).

In most cases a single APK file will contain all the content of the app.

Each Android App normally runs on its own virtual machine(VM). This implies that the app can run in isolation from other apps.

Android system applies the principle of least privilege. This means that each app will only have access to the components it requires to do its work,and no more.

However, there are ways for an app to share data with other apps, such as by sharing Linux user id between app, or apps can request permission to access device data like SD card, contacts etc.

Android PHP MySQL Upload Images and Text to MySQL then Retrieve and Show in a custom ListView Detailed Tutorial.

In this tutorial we want to see how to first upload images and text to MySQL database, the retrieve them and show them in a ListView. This is an android tutorial and our programming language is Java. The user will type name, description and choose an image from explorer using a Choose Dialog at runtime.

Then he clicks a button to send them to php mysql datatabase. As we upload we will show a progressbar. There is a button that when the user clicks a new activity is opened and data is automatically fetched from mysql database. The data is rendered in a custom ListView as images and text inside a cardview.

ChipView allows you to create your own chip views or tagviews for the listview all within one adapter.

MySQL is an open source, multithreaded, relational database management system created by Michael "Monty" Widenius in 1995.

What is a Database?

A database, generally speaking, refers to any organized collection of data

There are several types of databases:

  1. Flat file dat...

MarqueeView is a custom slider view that can slide vertically and horizontally.

Android HTTP Tutorial and Examples.

LinearLayout is a viewgroup that arranges its child elements linearly in a descending column from top to bottom or left to right.

Each of these elements can then have gravity and weight properties. These properties denote how the elements will dynamically grow and shrink to fill space.

Elements arrange themselves in a row or column notation based on the android:orientation parameter.

<LinearLayout 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView 1"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView 2"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView 3"/>
</LinearLayout>

These three TextViews will be arranged vertically given that we've used the android:orientation="vertical" as a layoutParam in our LinearLayout.

In AbsoluteLayout each child must be given a specific location within the bounds of the parent layout object.

The AbsoluteLayout object is probably the easiest to build and visualize but the hardest to migrate to a new device or screen size.

<AbsoluteLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView 1"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView 2"
        android:layout_x="30px"
        android:layout_y="30px"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView 3"
        android:layout_x="50px"
        android:layout_y="50px"/>
</AbsoluteLayout>

Android platform provides a powerful and flexible way of adding static content as a resource.

These static content will also be packaged into the APK file. The static content will be stored either as a resource or as an asset.

Resources belong to a given type. These types can be:

  1. Drawable.
  2. L...

Data Sorting is an operation involving systematic arrangement of data in an ordered sequence.

Sorting involves two operations:

  1. ordering: arranging items in a sequence ordered by some criterion;
  2. categorizing: grouping items with similar properties.

Sorting is a very common operation in many applications.