我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

目录

  • 如何安装Android SDK、创建开发环境和调试项目
  • 移动设计中一些注意事项
  • 使用Android虚拟设备、模拟器和其他开发工具

如何安装Android SDK、创建开发环境和调试项目

下载和安装Android SDK :

我的是window7系统,当然下载 SDK starter package 最合适了: http://developer.android.com/sdk/index.html

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

下载完打开压缩包如下:

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

然后把这个包解压到一个目录,运行 SDK Manager.exe:

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

其中包括平台工具(Tools),每个平台版本和一组extra 的节点。

下载时要选中对应于最新的框架SDK和最新的版本工具、兼容/支持包、文档和示例代码的复选框。

当有新的Android框架SDK、开发工具、示例代码、文档、兼容库和第三方增件可用时,可以使用 Android SDK Manager 下载和安装更新。

Eclipse的ADT插件功能:

  • 集成Android项目创建向导。
  • 基于窗体的manifest文件、布局和资源管理器以帮助创建、编辑和验证XML资源。
  • 自动的构建Android项目,转换为Android的可执行文件.dex,打包为包文件.apk,并把包安装到Dalvik虚拟机(可以运行在虚拟机和实际设备上)。
  • Android虚拟设备管理器:运行特定版本Android OS、设定硬件和内存限定。
  • Android模拟器:外观,网络连接设置以及模拟来电,SMS消息的能力。
  • Dalvik 调试监控服务(Dalvik Debug Monitoring Service,DDMS),包括:端口转发(port forwarding),栈、堆和线程查看,进程细节和屏幕捕捉功能。
  • 访问设备或者模拟器的文件系统,允许浏览目录和转移文件。
  • 运行调试。设置断点和查看调用栈。
  • 所有的Android/Dalvik日志和控制台输出。

安装ADT插件:还算简单,如下图。

Eclipse 选择 Help|Install New Software:

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

创建和理解第一个HelloWorld程序:

(1)选择Eclipse的File|New|Project|Android Application 类型|Next:

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

(2)填写信息之后一路Next便创建了一个默认的Hello World程序。

当然还得创建一个虚拟器AVD:

(1) Eclipse 选择 Window|AVD Manager|Create:

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

(2)填写信息即可OK。

还需要创建一个启动配置哦:

  • 要启动的项目和Activity
  • 部署目标(虚拟设备和时间设备)
  • 模拟器的启动参数
  • 输入/输出设置(包括默认的控制台)

创建和设置就简单啦:

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

填写信息,Apply保存当前设置。

终于运行和调试了(F5行不通了):

当然选择Run/Debug了

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

理解一下HelloWorld是个什么东东:

Activity是应用程序中可见的交互组件的基类,大概等同于桌面应用程序开发中的窗体Form哦。AndroidBarActivity是支持库里的类可以兼容2.x版本, activity提供的actionbar只有在3.0以上才可以用的。

package com.example.hello;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends ActionBarActivity {

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

在Android中,可视化组件称为视图(View),它类似于传统桌面应用开发中的控件。

setContentView是用来布局的,当然是通过传入的那个参数:布局资源。所以必须重写OnCreate方法。

注意到R变量:提供对资源的设计时访问。

<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"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.hello.MainActivity" >

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

</RelativeLayout>

定义UI有两种方式:

(1) XML,这样可以把应用程序逻辑和UI分离开来。

Code中访问UI元素是通过标识符属性获取的,例如:

<TextView android:id=”@+id/myTextView”
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

Code访问:TextView myTextView = (TextView)findViewById(R.id.myTextView);

(2) Code,按需使用。

移动设计中一些注意事项

Android的应用程序类型:

  • 前台应用程序
  • 后台应用程序
  • 间歇式应用程序
  • Widget和Live Wallpaper

移动设备的特点:

  • 低处理能力
  • 有限的RAM
  • 有限的永久存储能力
  • 低分辨率的小屏幕
  • 与数据传输相关的更高成本
  • 连接不稳定,低速的数据传输速率,高延迟
  • 更不可靠的数据连接
  • 有限的电池使用时间

开发中考虑事项:

  1. 高效
  2. 考虑有限的能力
  3. 为不同的屏幕进行设计
  4. 考虑低速率,高延迟
  5. 需要多少花费

使用Android虚拟设备、模拟器和其他开发工具

1. Android虚拟设备管理器

可以设置:

  • 虚拟机最大堆大小
  • 屏幕的像素密度
  • SD卡支持
  • 是否具有DPad、触摸屏、键盘和跟踪球等硬件
  • 加速计、GPS和距离传感器支持
  • 可用设备的内存
  • 摄像头硬件(及分辨率)
  • 录音支持
  • 是否具备硬件back和home键

2. Android SDK 管理器

3. Android 模拟器

4. DDMS:允许查看Activity进程、查看栈、查看和暂停Activity线程以及浏览任何已连接Android设备的文件系统

5. Android调试桥(ADB):一个客户端-服务器应用程序,它允许连接任何Android设备(真实的或者虚拟的)它由三个组件组成,

  • 一个设备或模拟器上运行的守护进程
  • 一个在开发计算机上运行的服务
  • 通过服务来和守护进程进行通信的客户端应用程序(如:DDMS)

6. Hierarchy Viewer 和 Lint 工具:帮助分析、调试和优化应用程序内使用的XML布局定义。

7. Monkey 和 Monkey Runner: 用来在一个UI视图中测试应用程序的稳定性。

Monkey 要在 ADB shell 中使用,它把一个伪随机系统和UI事件流发送给应用程序。在对应用程序进行压力测试,以了解在一些你可能没有想到的边缘情况下对UI的非常规使用是否会导致问题时,Monkey 十分有用

Monkey Runner 则是一个Python脚本 API,允许发送特殊的UI命令,以从应用程序外部控制模拟器或者设备。以一种可预测、可重复的方式执行UI测试、功能测试和单元测试十分重要。

以上几个工具看来比较强大哦,后面慢慢滴研究啊!!!

Q&A

Q:Android在启动模拟器AVD时,出现下面的异常:“Failed to allocate memory: 8”,怎么办?

A:减少分配的内存大小。修改AVD的配置文件,将选项“hw.ramSize=1024”从1024改为256。如图所示:

我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!

今天按Ctrl+S之前突然停电,写的很多,可惜丢了又来过一遍,气煞我也。

上一篇:【BZOJ】【3004】吊灯


下一篇:C++(二)— STL容器的基本用法