我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!
目录
- 如何安装Android SDK、创建开发环境和调试项目
- 移动设计中一些注意事项
- 使用Android虚拟设备、模拟器和其他开发工具
如何安装Android SDK、创建开发环境和调试项目
下载和安装Android SDK :
我的是window7系统,当然下载 SDK starter package 最合适了: http://developer.android.com/sdk/index.html

下载完打开压缩包如下:

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

其中包括平台工具(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:

创建和理解第一个HelloWorld程序:
(1)选择Eclipse的File|New|Project|Android Application 类型|Next:

(2)填写信息之后一路Next便创建了一个默认的Hello World程序。
当然还得创建一个虚拟器AVD:
(1) Eclipse 选择 Window|AVD Manager|Create:

(2)填写信息即可OK。
还需要创建一个启动配置哦:
- 要启动的项目和Activity
- 部署目标(虚拟设备和时间设备)
- 模拟器的启动参数
- 输入/输出设置(包括默认的控制台)
创建和设置就简单啦:

填写信息,Apply保存当前设置。
终于运行和调试了(F5行不通了):
当然选择Run/Debug了

理解一下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
- 有限的永久存储能力
- 低分辨率的小屏幕
- 与数据传输相关的更高成本
- 连接不稳定,低速的数据传输速率,高延迟
- 更不可靠的数据连接
- 有限的电池使用时间
开发中考虑事项:
- 高效
- 考虑有限的能力
- 为不同的屏幕进行设计
- 考虑低速率,高延迟
- 需要多少花费
使用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。如图所示:

今天按Ctrl+S之前突然停电,写的很多,可惜丢了又来过一遍,气煞我也。
我的Android 4 学习系列之开始入手:配置开发环境与理解Hello World!的更多相关文章
- 关于Android Studio中使用jni进行opencv配置开发环境的要素秘诀
使用jni进行opencv开发可以快速地将PC端的opencv代码移植到手机上,但是如何在android studio下进行配置,网上几乎找不到教程,大多都是eclipse下使用mk文件的方法,找不到 ...
- 【Silverlight】Bing Maps学习系列(一):开发前的准备工作
[Silverlight]Bing Maps学习系列(一):开发前的准备工作 微软推出的Bing Maps地图引擎,对外开放了Silverlight和Ajax两种客户端API,同时微软针对全球地图还推 ...
- 源码学习系列之SpringBoot自动配置(篇一)
源码学习系列之SpringBoot自动配置源码学习(篇一) ok,本博客尝试跟一下Springboot的自动配置源码,做一下笔记记录,自动配置是Springboot的一个很关键的特性,也容易被忽略的属 ...
- 源码学习系列之SpringBoot自动配置(篇二)
源码学习系列之SpringBoot自动配置(篇二)之HttpEncodingAutoConfiguration 源码分析 继上一篇博客源码学习系列之SpringBoot自动配置(篇一)之后,本博客继续 ...
- SpringBoot源码学习系列之SpringMVC自动配置
目录 1.ContentNegotiatingViewResolver 2.静态资源 3.自动注册 Converter, GenericConverter, and Formatter beans. ...
- SpringBoot源码学习系列之异常处理自动配置
SpringBoot源码学习系列之异常处理自动配置 1.源码学习 先给个SpringBoot中的异常例子,假如访问一个错误链接,让其返回404页面 在浏览器访问: 而在其它的客户端软件,比如postm ...
- 用C++语言开发Android程序 配置开发环境
转自:http://www.cnblogs.com/yaotong/p/3622430.html 用C++语言开发Android程序 配置开发环境 如果你是一个C++语言的死忠,你喜欢C++语言到 ...
- ionic实战系列(一):ionic的开发环境配置和编译、发布
我的ionic实战系列是基于<<Ionic实战>>[美]Jeremy Wilken著-这本书的读书笔记,有诸多借鉴,不详细的地方请参考书籍本身的内容. 1.1技术栈模型 Ion ...
- PHP学习笔记----IIS7下安装配置php环境
原文:PHP学习笔记----IIS7下安装配置php环境 Php如何安装 Php版本的选择 Php在windows下的(php5.4.7)有两种版本: VC9 x86 Non Thread Safe ...
随机推荐
- NSIS:使用nsWindows.nsh头文件调整窗体大小
原文 NSIS:使用nsWindows.nsh头文件调整窗体大小 此方法只能简单实现调整窗体大小,但不完美,调整后窗体上其他的控件都需要调整大小或位置,比较麻烦,轻狂不建议使用呵! ;加头文件!inc ...
- ISA TEST Writeup
刚出来的hack游戏,非常easy,现在只有7关.考虑入门级.没有什么可以玩. http://helloisa.com/ LEVEL 1 细致观察页面,入侵的第一步是收集一切可能产生价值的信息 ps: ...
- java两个音频进入巩固期 玩的同时类似的伴奏
/** * * @param partsPaths 阵列要合成音频路径 * @param unitedFilePath 输入合并结果数组 */ public void uniteWavFile(Str ...
- windows和linux在建筑python集成开发环境IDE
http://blog.csdn.net/pipisorry/article/details/39854707 使用的系统及软件 Ubuntu / windows Python 2.7 / pytho ...
- 华为OJ: 公共字符串计算
有几个需要注意的地方,这个问题是不是大写和小写之间的区别.这样你就输入字符串大写或小写转换的计算前. 第二个,定要清晰.先将s1从[i]处開始与s2的[j]開始匹配,不相等则j++直到j等于s2.le ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(13)-权限设计
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(13)-权限设计 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据 ...
- Swift初体验(两)
// 写功能初体验 func getMyName(firstName first:String, lastName last:String) -> String{ //return first ...
- 14行脚本配置Linux下一个Java环境变量
供Java人们刚开始学习.多半Java它需要花费大量的精力在开发环境的配置,于Linux下一个,构造Java环境变量,很可能加入这一努力. 为此,我做了一个bash脚本来配置自己主动Java环境变量. ...
- P31RestKit.dll 2.0 Unity3d json
using System.Collections.Generic; using UnityEngine; using System.Collections; using Prime31; public ...
- HDU 3523 Image copy detection(KM最大匹配)
HDU 3523 Image copy detection 题目链接 题意:这题事实上题意读懂就简单了,说白了就是1-n放到1-n列,每列的值为每列上数字和该数字的差的绝对值,然后求总和最小 思路:就 ...