求知 文章 文库 Lib 视频 Code iProcess 课程 认证 咨询 工具 火云堂 讲座吧   成长之路  
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
 
 

Android开发教程
Android 开发环境配置
Android 架构
Android 应用组件
Android Hello World示例
Android 资源组织和访问
Android Activity
Android Service
Android 广播接收器
Android 内容提供者
Android 碎片/片段
Android Intent过滤器
Android UI布局
Android UI控件
Android 事件处理
Android 样式和主题
Android 自定义组件
Android 拖放
Android 通知
Android 基于位置服务
Android 发送电子邮件
Android 发送短信/SMS
Android 拨打电话
发布Android应用
ndroid Alertdialog
Android Animation实例
Android音频捕获
Android音频管理器实例
Android
Android最佳实践
Android Bluetooth实例
Android Camera
Android Clipboard
Android自定义字体
Android数据备份
Android Gestures/手势
Android图片效果
Android图片切换
Android内部存储
Android JetPlayer实例
Android JSON解析器
Android加载Spinner
Android本地化
Android登录实例
Android MediaPlayer
 
 

Android Hello World示例
89 次浏览
20次  
 捐助

让我们开始实际的Android编程。在开始使用Android SDK编写的第一个例子之前,必须确保设置正确的Android开发环境 - 环境设置教程。也假设你有一点 Eclipse IDE 操作知识。

因此,现在编写一个简单的Android应用程序,它将打印 "Hello World!".

创建Android应用

第一步:使用Eclipse IDE创建一个简单的Android应用程序。按照选择File -> New -> Project ,最后从向导列表选择 Android New Application 。现在,应用程序命名为 HelloWorld 使用向导窗口如下:

接下来,按照所提供的指示,并保持所有其他项为默认,直到最后一步。项目创建成功后,将有以下项目的画面:

另外,也可以右键单击“我的电脑”,选择“属性”=》”高级“=》“环境变量”,按下“确定”按钮,然后会更新 PATH 值。

Android应用解剖

在运行应用程序之前,应该注意在Android项目的几个目录和文件:

下面的部分将简要介绍一些重要的应用程序文件

主要活动Activity 文件

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

在这里,R.layout.activity_main 是指位于在 res/layout 文件夹的 activity_main.xml 文件。onCreate()方法是加载一个活动时,被触发的许多方法之一。

Manifest 文件

组件是开发应用程序的一部分,必须声明其所有组件在 AndroidManifest.xml 中,应用程序项目的根目录在 amanifest 文件。此文件作为Android操作系统和应用程序之间的接口。例如,默认 manifest 文件将看起来如以下文件:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.example.helloworld"
     android:versionCode="1"
     android:versionName="1.0" >
     <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" />
     <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>

这里...标记括起相关应用程序的组件。属性android:icon将指向应用程序图标,可在res/drawable-hdpi 之下找到。应用程序使用位于图像绘制文件夹,文件名为 ic_launcher.png 。

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

intent 过滤器的动作被命名为android.intent.action.MAIN,表示这个活动作为应用程序的入口点。类的意图过滤器是namedandroid.intent.category.LAUNCHER声明,应用程序可以从设备的启动图标启动。

@string是指 strings.xml文件,解释如下。@string/app_name是strings.xml文件中的app_name是“HelloWorld” 定义的字符串。类似的方式,其他的字符串填充到应用中。

以下是使用manifest 文件中指定不同的 Android 应用程序组件的标签列表:

  • <activity>?活动的元素
  • <service> 服务的元素
  • <receiver>?广播接收器的元素
  • <provider> 内容提供者的元素

Strings 文件

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>

R.java 文件

gen/com.example.helloworld/R.java文件就像MainActivity.java 和Java文件strings.xml等资源之间的胶水。这是一个自动生成的文件,不要修改R.java文件的内容。R.java文件下面是一个示例:

/* 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;
      }
  }

布局文件

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>

这是一个简单的相对布局,我们将在一个单独的章节学习其它复杂例子。TextView是被用来构建图形用户界面并由Android控制,它有各种各样的Android属性,如:android:layout_width, android:layout_height 等被用来设置其宽度和高度等等,@string是指位于strings.xml文件在文件夹res/values中。因此,@string/hello_world 指 hello 定义的字符串在 strings.xml 文件中的 “Hello World!” 字符串。

运行应用程序

让我们试着来运行 Hello World!应用程序。假设创建了AVD,同时做了环境设置。打开Eclipse运行应用程序,打开一个项目的活动文件,并单击“Run”Eclipse Run Icon 工具栏上的图标。 Eclipse 在 AVD上安装的应用程序后并启动它,如果一切都设置并应用没有问题,它会显示以下模拟器窗口:

恭喜!开发的第一款Android应用程序完成,现在只要把下面剩余的教程一步一步学习,一定能成为一个熟练的 Android开发者。


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



89 次浏览
20次
 捐助
 

每天2个文档/视频
扫描微信二维码订阅
订阅技术月刊
获得每月300个技术资源
 
 

关于我们 | 联系我们 | 京ICP备10020922号 京公海网安备110108001071号