Bài tập Ví dụ Hello World trong Android

Thảo luận trong 'Android' bắt đầu bởi ThanhVienVIP, 23/7/19.

Lượt xem: 56

  1. ThanhVienVIP

    ThanhVienVIP

    Tham gia ngày:
    28/4/15
    Bài viết:
    1,466
    Điểm thành tích:
    48
    Giới tính:
    Nữ
    Tạo ứng dụng Android
    Bước đầu tiên là tạo một ứng dụng Android đơn giản bởi sử dụng Eclipse IDE. Bạn theo cách tùy chọn File -> New -> Project và cuối cùng chọn Android New Application Bây giờ, đặt tên cho ứng dụng của bạn là HelloWorld như sau:

    [​IMG]
    Kế tiếp, bạn theo các hướng dẫn đã cho và giữ tất cả mọi entry là mặc định tới bước cuối cùng. Khi project của bạn đã được tạo thành công, bạn sẽ có màn hình project như sau: −

    [​IMG]
    Phân tích ứng dụng Android
    Trước khi bắt đầu chạy ứng dụng, bạn nên biết về một số thư mục và file trong Android Project: −

    [​IMG]
    Stt Folder, File & Miêu tả
    1 src
    Chứa .java source files cho project của bạn. Theo mặc định, nó bao gồm một MainActivity.java source file có một lớp Activity mà chạy khi ứng dụng của bạn được chạy bởi sử dụng biểu tượng app

    2 gen
    Chứa .R file, một file biên dịch mà tham chiếu tới tất cả resource được tìm thấy trong project của bạn. Bạn không nên sửa đổi file này

    3 bin
    Thư mục này chứa các Android package file là .apk được xây dựng bởi ADT trong khi xây dựng tiến trình và mọi thứ cần thiết khác để chạy một ứng dụng Android

    4 res/drawable-hdpi
    Đây là một thư mục cho các đối tượng drawable mà được thiết kế cho các màn hình có mật độ cao

    5 res/layout
    Đây là một thư mục cho các file mà định nghĩa giao diện UI cho ứng dụng của bạn

    6 res/values
    Đây là thư mục cho các XML file mà chứa một tập hợp các resource, như string hoặc color

    7 AndroidManifest.xml
    Đây là manifest file mà miêu tả các đặc trưng nền tảng của ứng dụng và định nghĩa mỗi thành phần của nó

    Tiếp theo, chúng tôi sẽ trình bày ngắn gọn về một số file ứng dụng quan trọng.

    Main Activity File trong Android
    Main Activity code là một Java file với tên MainActivity.java. Đây là một file ứng dụng thực sự mà cuối cùng được chuyển đổi thành một Dalvik có thể thực thi và chạy ứng dụng của bạn. Sau đây là phần code mặc định được tạo cho Hello World!


    package com.example.helloworld;

    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.support.v4.app.NavUtils;

    public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
    }
    }
    Ở đây, R.layout.activity_main tham chiếu tới activity_main.xml file được đặt trong thư mục res/layout Phương thức onCreate() là một trong nhiều phương thức mà được tính toán khi một Activity được tải.

    Manifest File trong Android
    Bất cứ thành phần nào bạn phát triển như là một phần ứng dụng của bạn, thì bạn phải khai báo tất cả các thành phần của nó trong một manifest.xml mà đặt tất cả thư mục gốc của project. File này làm việc như một giao diện giữa Android OS và ứng dụng của bạn, vì thế nếu bạn không khai báo các thành phần trong file này, thì nó sẽ không được xem xét bởi OS. Ví dụ, manifest file mặc định sẽ trông như sau: −

    <manifest xmlns:android="Vui lòng đăng nhập hoặc đăng ký để nhìn thấy link"
    package="com.example.helloworld"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="22" />

    <application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <activity
    android:name=".MainActivity"
    android:label="@string/title_activity_main" >

    <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER"/>
    </intent-filter>

    </activity>

    </application>
    </manifest>
    Ở đây, các thẻ <application>...</application> bao quanh các thành phần liên quan tới ứng dụng. Thuộc tính android:icon sẽ trỏ tới biểu tượng ứng dụng có sẵn dưới res/drawable-hdpi. Ứng dụng này sử dụng hình ảnh có tên ic_launcher.png được đặt trong các thư mục drawable.

    Thẻ <activity> được sử dụng để xác định một Activity và thuộc tính android:name xác định tên lớp đầy đủ của lớp con Activity và thuộc tính android:label xác định một chuỗi để sử dụng như là nhãn cho Activity đó. Bạn có thể xác định nhiều activity bởi sử dụng thẻ <> này. <activity> tags.

    Hành động cho Intent-Filter có tên android.intent.action.MAIN để chỉ rằng activity này phục vụ như là điểm entry cho ứng dụng. Category cho Intent-Filter có tên android.intent.category.LAUNCHER để chỉ rằng ứng dụng có thể chạy từ biểu tượng launcher của thiết bị.

    @string tham chiếu tới strings.xml đã được đề cập ở trên. Vì thế, @string/app_name tham chiếu tới app_name được định nghĩa trong strings.xml, mà là HelloWorld. Tương tự, các string khác sẽ được đưa vào ứng dụng.

    Sau đây là một số thẻ bạn sẽ sử dụng trong manifest file của bạn để xác định các thành phần ứng dụng Android khác:

    • Các phần tử <activity>cho các Activity

    • Các phần tử <service> cho các service

    • Các phần tử <receiver> cho Broadcast Receiver.

    • Các phần tử <provider> cho Content Provider.
    Strings File trong Android
    strings.xml được đặt trong thư mục res/values và nó chứa tất cả text mà ứng dụng của bạn sử dụng. Ví dụ, tên của các button, label, text mặc định, và các kiểu tương tự chuỗi vào trong file này. File này chịu trách nhiệm cho nội dung thuần văn bản. Ví dụ, một strings file mặc định sẽ trông như sau: −

    <resources>
    <string name="app_name">HelloWorld</string>
    <string name="hello_world">Hello world!</string>
    <string name="menu_settings">Settings</string>
    <string name="title_activity_main">MainActivity</string>
    </resources>
    R File trong Android
    gen/com.example.helloworld/R.java file là chất keo kết dính giữa các Activity file MainActivity.java và resource strings.xml. Nó là file được tạo tự động và bạn không nên sửa đổi nội dung trong R.java file. Ví dụ đơn giản về R.java file: −

    /* AUTO-GENERATED FILE. DO NOT MODIFY.
    *
    * This class was automatically generated by the
    * aapt tool from the resource data it found. It
    * should not be modified by hand.
    */

    package com.example.helloworld;

    public final class R {
    public static final class attr {
    }

    public static final class dimen {
    public static final int padding_large=0x7f040002;
    public static final int padding_medium=0x7f040001;
    public static final int padding_small=0x7f040000;
    }

    public static final class drawable {
    public static final int ic_action_search=0x7f020000;
    public static final int ic_launcher=0x7f020001;
    }

    public static final class id {
    public static final int menu_settings=0x7f080000;
    }

    public static final class layout {
    public static final int activity_main=0x7f030000;
    }

    public static final class menu {
    public static final int activity_main=0x7f070000;
    }

    public static final class string {
    public static final int app_name=0x7f050000;
    public static final int hello_world=0x7f050001;
    public static final int menu_settings=0x7f050002;
    public static final int title_activity_main=0x7f050003;
    }

    public static final class style {
    public static final int AppTheme=0x7f060000;
    }
    }
    Layout File trong Android
    activity_main.xml là một layout file có sẵn trong thư mục res/layout mà được tham chiếu bởi ứng dụng của bạn khi xây dựng giao diện. Bạn sẽ sửa đổi file này khá thường xuyên để thay đổi layout của ứng dụng. Với ứng dụng Hello World, file này sẽ có nội dung sau liên quan tới layout mặc định: −

    <RelativeLayout xmlns:android="Vui lòng đăng nhập hoặc đăng ký để nhìn thấy link"
    xmlns:tools="Vui lòng đăng nhập hoặc đăng ký để nhìn thấy link"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:padding="@dimen/padding_medium"
    android:text="@string/hello_world"
    tools:context=".MainActivity" />

    </RelativeLayout>
    Đây là một ví dụ về RelativeLayout đơn giản, mà chúng ta sẽ học trong một chương riêng. TextView là một điều khiển Android để xây dựng GUI và nó có các thuộc tính đa dạng như android:layout_width, android:layout_height mà đang được sử dụng để thiết lập độ rộng và chiều cao của nó. @string tham chiếu tới strings.xml file được đặt trong thư mục res/values. Vì thế, @string/hello_world tham chiếu tới chuỗi Hello World được định nghĩa trong strings.xml.

    Chạy ứng dụng Android
    Bây giờ, chúng ta thử chạy ứng dụng Hello World! vừa tạo. Giả sử bạn đã tạo AVD trong khi cài đặt. Để chạy ứng dụng từ Eclipse, mở một activity file và nhấn biểu tượng Run [​IMG] từ thanh công cụ. Eclipse đặt ứng dụng trên AVD của bạn và bắt đầu nó và nếu mọi thứ là ổn thì nó sẽ cho kết quả sau:


    [​IMG]


    Tạo ứng dụng Android trên Android Studio
    Có nhiều Tool có sẵn để phát triển các ứng dụng Android. Bạn theo link sau để biết cách tạo ứng dụng Hello World trên Android Studio.
    Theo vietjack.com
     

Chia sẻ trang này