• Android Video Tutorials

Android - Hello World 示例



让我们开始使用 Android 框架进行实际编程。在开始使用 Android SDK 编写您的第一个示例之前,您必须确保已按照Android - 环境搭建教程中所述正确设置您的 Android 开发环境。我还假设您对 Android Studio 有些了解。

因此,让我们继续编写一个简单的 Android 应用程序,它将打印“Hello World!”。

创建 Android 应用程序

第一步是使用 Android Studio 创建一个简单的 Android 应用程序。当您单击 Android Studio 图标时,它将显示如下所示的屏幕

Hello Android Wizard

您可以通过调用启动一个新的 Android Studio 项目来开始您的应用程序开发。在新安装框架中,应该询问应用程序名称、包信息和项目位置。

Hello Android Project

输入应用程序名称后,它将被称为选择您的应用程序运行的形状因子,这里需要指定最小 SDK,在本教程中,我已声明为 API 23:Android 6.0(棉花糖)

Hello Android Project

下一个安装级别应该包含选择移动设备的活动,它指定应用程序的默认布局。

Hello Android Project

在最后阶段,它将打开开发工具来编写应用程序代码。

Hello Android Project

Android 应用程序的构成

在运行您的应用程序之前,您应该了解 Android 项目中的一些目录和文件

Android Directory Structure
序号 文件夹、文件和说明
1

Java

这包含项目的.java源文件。默认情况下,它包含一个MainActivity.java源文件,其中包含一个活动类,该类在使用应用程序图标启动应用程序时运行。

2

res/drawable-hdpi

这是为高密度屏幕设计的可绘制对象目录。

3

res/layout

这是定义应用程序用户界面的文件的目录。

4

res/values

这是其他各种 XML 文件的目录,这些文件包含资源集合,例如字符串和颜色定义。

5

AndroidManifest.xml

这是描述应用程序基本特征并定义其每个组件的清单文件。

6

Build.gradle

这是一个自动生成的文件,其中包含 compileSdkVersion、buildToolsVersion、applicationId、minSdkVersion、targetSdkVersion、versionCode 和 versionName

以下部分将简要概述重要的应用程序文件。

主活动文件

主活动代码是一个 Java 文件MainActivity.java。这是实际的应用程序文件,它最终被转换为 Dalvik 可执行文件并运行您的应用程序。以下是应用程序向导为Hello World!应用程序生成的默认代码:

package com.example.helloworld;

import android.support.v7.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);
   }
}

这里,R.layout.activity_main 指的是位于res/layout文件夹中的activity_main.xml文件。onCreate()方法是活动加载时计算出的许多方法之一。

清单文件

无论您开发什么组件作为应用程序的一部分,都必须在位于应用程序项目目录根目录下的manifest.xml中声明所有组件。此文件充当 Android 操作系统和您的应用程序之间的接口,因此,如果您没有在此文件中声明您的组件,则操作系统将不会考虑它。例如,默认清单文件将如下所示:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.tutorialspoint7.myapplication">

   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:supportsRtl="true"
      android:theme="@style/AppTheme">
      
      <activity android:name=".MainActivity">
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
      </activity>
   </application>
</manifest>

这里<application>...</application>标签包含与应用程序相关的组件。属性android:icon将指向位于res/drawable-hdpi下的应用程序图标。应用程序使用位于可绘制文件夹中的名为 ic_launcher.png 的图像

<activity>标签用于指定活动,android:name属性指定Activity子类的完全限定类名,android:label属性指定用作活动标签的字符串。您可以使用<activity>标签指定多个活动。

意图过滤器的action名为android.intent.action.MAIN,表示此活动充当应用程序的入口点。意图过滤器的category名为android.intent.category.LAUNCHER,表示可以从设备的启动器图标启动该应用程序。

@string指的是下面解释的strings.xml文件。因此,@string/app_name指的是在strings.xml文件中定义的app_name字符串,即“HelloWorld”。类似地,应用程序中填充了其他字符串。

以下是您将在清单文件中使用的标签列表,用于指定不同的 Android 应用程序组件:

  • <activity>元素用于活动

  • <service>元素用于服务

  • <receiver>元素用于广播接收器

  • <provider>元素用于内容提供商

字符串文件

strings.xml文件位于res/values文件夹中,它包含应用程序使用的所有文本。例如,按钮名称、标签、默认文本和类似类型的字符串都进入此文件。此文件负责它们的文本内容。例如,默认字符串文件将如下所示:

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

布局文件

activity_main.xml是在res/layout目录中可用的布局文件,应用程序在构建其界面时会引用它。您将非常频繁地修改此文件以更改应用程序的布局。对于您的“Hello World!”应用程序,此文件将具有与默认布局相关的以下内容:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   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>

这是一个简单的RelativeLayout示例,我们将在单独的章节中学习。TextView是用于构建 GUI 的 Android 控件,它具有各种属性,例如android:layout_widthandroid:layout_height等,这些属性用于设置其宽度和高度等。@string指的是位于res/values文件夹中的strings.xml文件。因此,@string/hello_world指的是在strings.xml文件中定义的hello字符串,即“Hello World!”。

运行应用程序

让我们尝试运行我们刚刚创建的Hello World!应用程序。我假设您在进行环境设置时创建了AVD。要从 Android Studio 运行应用程序,请打开项目的活动文件之一,然后单击工具栏中的运行Eclipse Run Icon图标。Android Studio 将应用程序安装到您的 AVD 并启动它,如果您的设置和应用程序一切正常,它将显示以下模拟器窗口:

Android Hello World

恭喜!!!您已经开发了您的第一个 Android 应用程序,现在只需一步一步地继续学习本教程的其余部分,即可成为一名优秀的 Android 开发者。祝一切顺利。

广告