Giới thiệu về Android

974

Introduction to Android

  • Mobile operating systems’ market share worldwide from 01/2012 to12/2019
  • Developed by Open Handset Alliance, led by Google.

What’s Android?

  • Android is an operating system for mobile devices such as smartphones and tablet computers. It is developed by the Open Handset Alliance led by Google.
  • Android has beaten Apple iOS, being the leading mobile operating system from first quarter of 2011.
  • Version: Android 1.0, 1.1 to 1.5 (Cupcake), 1.6 (Donut), 2.0/2.1 (Eclair), 2.2 (Froyo), 2.3 (Gingerbread), to 3.0 (Honeycomb), 4.0 (Ice Cream Sandwich), 5.0/5.1 (Lollipop), 6.0 (Marshmallow), 7.0/7.1 (Nougat), 8.0/8.1 (Oreo), 9.0 (Pie), 10-11.

Open handset alliance

Liên minh gồm trên 80 công ty cùng xây dựng nền tảng mobile mới (Android).

History of Android

Android Architecture

Linux Kernel
  • Android dựa trên Linux version 2.6 gồm các dịch vụ hệ thống cơ bản như bảo mật, quản lý bộ nhớ, quản lý tiến trình, network và driver.
  • Nhân linux là tầng trừu tượng giữa phần cứng và software stack.
Libraries
  • Android bao gồm tập hợp các thư viện C/C++ sử dụng bởi các thành phần khác nhau của Android System.
  • Nhà phát triển khai thác thư viện này thông qua Android application framework. Một số thư viện cơ bản được liệt kê ở dưới.

Applications

Các phiên bản Android bao gồm các ứng dụng cơ bản như email, sms, calendar, map, contact,… Tất cả ứng dụng được viết bằng ngôn ngữ lập trình Java.

Môi trường phát triển Android

  • Android Development Tools (ADT) plugin cho Eclipse để phát triển Android. Cho phép tạo và gỡ lỗi ứng dụng Android dễ dàng và nhanh chóng.
  • Google đang phát triển IDE mới cho Android có tên là Android studio IDE. Phiên bản hiện tại là Android Studio 4.0.1 (Tính đến tháng 19/7/2020).

Yêu cầu hệ thống

Hệ điều hành Windows
  • Microsoft® Windows® 8/7/Vista (32- or 64-bit)
  • 2 GB RAM minimum, 4 GB RAM recommended
  • 400 MB hard disk space
  • At least 1 GB for Android SDK, emulator system images, and caches
  • 1280 x 800 minimum screen resolution
  • Java Development Kit (JDK) 7
  • Optional for accelerated emulator: Intel® processor with support for Intel® VT-x, Intel® EM64T (Intel® 64), and Execute Disable (XD) Bit functionality
Hệ điều hành Mac OS X
  • Mac® OS X® 10.8.5 or higher, up to 10.9 (Mavericks)
  • 2 GB RAM minimum, 4 GB RAM recommended
  • 400 MB hard disk space
  • At least 1 GB for Android SDK, emulator system images, and caches
  • 1280 x 800 minimum screen resolution
  • Java Runtime Environment (JRE) 6
  • Java Development Kit (JDK) 7

Hệ điều hành Linux (Ubuntu® 14.04)

  • GNOME or KDE desktop
  • GNU C Library (glibc) 2.15 or later
  • 2 GB RAM minimum, 4 GB RAM recommended
  • 400 MB hard disk space
  • At least 1 GB for Android SDK, emulator system images, and caches
  • 1280 x 800 minimum screen resolution
  • Oracle® Java Development Kit (JDK) 7
  • 64-bit distribution capable of running 32-bit applications

Download về cài đặt

  1. Download JDK: Tại đây
  2. Download Android Studio: Tại đây.

Tạo project bằng Android Studio

Khởi động Android Studio

Chọn Start a new New Project. 

Chọn Empty Activity => Chọn Next. (Nhập Name; Package name; Chỉ định thư mục lưu project tại Save Location; Chọn Min API Level). Nhấn chọn Finish.

Cấu trúc Project

AndroidManifest.xml

Nơi khai báo các Activity trong ứng dụng. Quy định Activity nào thực thi đầu tiên:

<activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
MainActivity
  • Mỗi activity tương ứng với một form.
  • Là nơi viết code bằng java.
  • Câu lệnh setContentView(R.layout.activity_main); dùng để chỉ định layout.
package com.example.thaynhuom;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}
Khu vực res/mipmap

 

Một trong các vấn đề mà tôi thỉnh thoảng bắt gặp khi sử dụng ứng dụng Andorid là tôi thấy các ảnh mờ, nhòe, hoặc giãn không chuẩn. Các giải pháp cho vấn đề này là tạo ra một thư mục mipmap cho mỗi mật độ (density) điểm ảnh mà Android hỗ trợ, và để các hình ảnh thu nhỏ một cách chính xác. Có 6 dẫy mật độ khác nhau (đo theo số điểm ảnh trên 1 inch) mà Android hỗ trợ:
  1. ldpi: Dành cho các màn hình độ phân giải thấp; xấp sỉ 120dpi
  2. mdpi: Dành cho các màn hình độ phân giải trung bình (trên HVGA truyền thống) ; xấp sỉ 160dpi
  3. hdpi: Dành cho các màn hình phân giải cao; xấp sỉ 240dpi
  4. xhdpi: Dành cho các màn hình phân giải cao hơn nữa; xấp sỉ  320dpi. Đã được thêm vào trong API Level 8
  5. nodpi: Cái này có thể được sử dụng cho tài nguyên bitmap mà bạn không muốn được thu nhỏ để phù hợp với mật độ thiết bị
  6. tvdpi: Có một số màn hình độ phân giải nằm giữa mdpi và hdpi; xấp sỉ 213dpi. Nó không được coi là nhóm phân giải chính. Nó chủ yếu dành cho TV và hầu hết các ứng dụng không cần cung cấp nguồn mdpi và hdpi, hệ thống sẽ tự co giãn phù hợp. Tiêu chuẩn này được giới thiệu trong API Level 13.
build.gradle (Module: app) trong Gradle Scripts
  • Quy định phiên bản SDK.
  • Khai báo thư viện sử dụng.
apply plugin: 'com.android.application'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.3"
    defaultConfig {
        applicationId "com.example.thaynhuom"
        minSdkVersion 19
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.2.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}
Biên dịch và chạy App

Tạo thiết bị ảo (Emulator) => Chọn AVD Manager.

  • Chọn Create Virtual Device…
  • Lựa chọn thiết bị -> Next.

  • Lựa chọn phiên bản Android -> Next -> Finish.

  • Thiết bị ảo (emulator)

Bài tập thực hành

  1. Tải và cài đặt JDK và Android Studio.
  2. Tạo 1 project trên Android Studio hiển thị: MSSV, Họ tên, tên Trường sinh viên viên đang học và nội dung lời chào đầu tiên bạn dành cho lập trình Android.

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây