Android Hello World示例


让我们开始使用Android Framework进行实际编程。在您开始使用Android SDK编写第一个示例之前,您必须确保已正确设置Android开发环境,如Android - 环境设置教程中所述。我还假设您对Android studio有一点工作知识。

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

创建Android应用程序

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

你好Android向导

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

你好Android项目

输入应用程序名称后,将调用选择运行应用程序的表单因子,这里需要指定Minimum SDK,在我们的教程中,我已声明为API23:Android 6.0(Mashmallow) -

你好Android项目

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

你好Android项目

在最后阶段,它将成为编写应用程序代码的开放式开发工具。

你好Android项目

Android应用程序剖析

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

Android目录结构

序号 文件夹,文件和说明
1

Java

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

2

res/drawable-hdpi

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

3

es/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.activitymain 指的是位于 res / layout 文件夹中的 _activitymain.xml 文件。所述 的onCreate() 方法是当加载一个活动被想通许多方法之一。

清单文件

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

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.codingdict7.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>标记指定多个活动。

行动 的意图过滤器被命名为 android.intent.action.MAIN ,表明这项活动作为切入点应用。intent-filter 的 类别 名为 android.intent.category.LAUNCHER ,表示可以从设备的启动器图标启动应用程序。

@string的strings.xml 文件解释如下。因此, _@ string / appname 引用strings.xml文件中定义的 _appname 字符串,即“HelloWorld”。类似地,在应用程序中填充其他字符串。

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

  • 活动的<activity>元素

  • 服务的<service>元素

  • 广播接收器的<receiver>元素

  • 内容提供商的<provider>元素

字符串文件

的strings.xml 文件位于 RES /值 文件夹,它包含了你的应用程序使用的所有文本。例如,按钮,标签,默认文本和类似类型的字符串的名称将进入此文件。该文件负责其文本内容。例如,默认字符串文件将如下所示

<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 /布局 目录,由应用程序构建它的界面时引用。您将非常频繁地修改此文件以更改应用程序的布局。为你的“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 是用于构建图形用户界面和它具有各种属性像一个Android控制 _机器人:layoutwidth , _机器人:layoutheight 正被用来设置其宽度和高度等等。 @string 是指位于在strings.xml档案res / values文件夹。因此,@ string / hello_world引用strings.xml文件中定义的hello字符串,即“Hello World!”。

运行应用程序

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

Android Hello World

恭喜!你已经开发了你的第一个Android应用程序,现在只需继续按照本教程的其余部分逐步成为一个优秀的Android开发人员。一切都是最好的。