没有合适的资源?快使用搜索试试~ 我知道了~
安卓系统开发步骤,安卓,系统,安卓系统开发步骤
5星 · 超过95%的资源 需积分: 9 355 下载量 82 浏览量
2011-04-25
16:54:31
上传
评论 12
收藏 229KB DOC 举报
温馨提示
试读
40页
学习时一定要知道的步骤,帮助大家了解其开发过程。看了有用。安卓,安卓,安卓安卓安卓安卓安卓安卓安卓
资源推荐
资源详情
资源评论
您还未登录!|登录|注册|帮助
CSDN 首页资讯论坛博客下载搜索更多 CTO 俱乐部学生大本营培训充电移动开发软件研发
云计算程序员 TUPThe Way of Programming
Mobile Develop
条新通知
登录注册欢迎
退出
我的博客
配置
写文章
文章管理
博客首页
全站 当前博客 空间博客好友相册留言用户操作
[留言] [发消息] [加为好友]
JeffID:durone
共 13249 次访问,排名 14138,好友 0 人,关注者 3 人。
","qq":"25973378
Jeff 的文章
原创 10 篇
翻译 0 篇
转载 5 篇
评论 9 篇
订阅我的博客
[编辑]durone 的公告
[编辑]文章分类
Android
WindowsMobile
软件技术
兴趣文章
杂记
存档
2010 年 09 月(2)
2009 年 03 月(1)
2009 年 01 月(6)
2008 年 11 月(1)
2007 年 02 月(1)
2007 年 01 月(2)
2006 年 12 月(1)
2006 年 06 月(1)
公告:
Mozilla 将在京召开首届开发者大会[意见反馈][官方博客] Android 学习笔记[by quqi99 ] 收
藏
Android platform 是一个用于开发移动程序的软件包,它包括了操作系统、中间件及一些关
键应用。开发者能使用 android SDK 为 Android platform 开发应用,这些应用使用 JAVA 语
言书写,运行在虚拟机 Dalvik(一个专为手机程序开发的基于 linux 内核的 JAVA 虚拟机)。
http://www.androidcn.net/wiki/index.php?title=%E7%BF%BB%E8%AF%91%E4%BB%BB
%E5%8A%A1%E9%A2%86%E5%8F%96&printable=yes
http://www.androidcn.net/forumdisplay.php?fid=2
1 什么是 Android
1.1 Android 的特性
ü 应用框架,让一些基础设施得以重用
ü Dalvik 虚拟机,专为开发移动程序优化
ü 集成的浏览器,(基于 WebKit 引擎)
ü 优化的图形库,(2D 图形库以及基于 OpenGL ES 1.0 规范的 3D 图形库)
ü SQLite,用于结构化数据的存储,是一个数据库
ü 多媒体支持,支持多种音频,视频格式( MPEG4, H.264, MP3, AAC, AMR, JPG,
PNG, GIF)
ü GSM 技术(依赖具体硬件)
ü Bluetooth, EDGE, 3G, WiFi(依赖具体硬件)
ü Camera, GPS, compass, accelerometer(依赖具体硬件)
ü 丰富的开发环境(DEBUG 工具,内存及性能工具,Eclipse 的插件等)
1.2 Android 的架构
Android 操作系统的模块如下:
Ø 应用:Android 已集成了一些应用,如邮件客户端,SMS 程序,日历,地图,浏览
器等
Ø 应用框架:
Ø 程序库:
Ø 例行程序
Ø Linux 内核
2 Andvoid 起步
2.1 开发环境配置
使用 Eclipse + Android Development Tools (ADT)插件。在 Help > Software Updates > Find
and Install....中键入更新地址:
https://dl-ssl.google.com/android/eclipse/
2.2 运行第一个 Andvoid 程序
使用 Eclipse 插件
1、建立的工程类型为:Andvoid Project
2、建立 Launch Configuration. Run > Open Run Dialog... or Run > Open Debug Dialog
命令行运行程序
1、创建工程 activityCreator your.package.name.ActivityName
2、编译。在 build.xml 所在的目录 ant 一下。
3、启动模拟器. 运行命令:emulator
4、在模拟器中,切换到主屏幕。
5、在命令行输入: adb install myproject/bin/<appname>.apk 将其上载至模拟器。
6、在模拟器中选择程序并启动。
Android 需要专门的编译工具来正确的编译资源文件和 Android 程序的其他部分。基于此,
你需要为你的程序准备一个专门的编译环境。
Andorid 的编译过程通常包括编译 XML 和其他资源文件、创建正确的输入格式。经过编译
的 Android 程序是一个.apk 文件,.apk 文件是一个压缩文件,它其中包含了.dex 文件、资源
文件、raw data 文件和其他文件。
Andoriod 暂时还不支持用本地代码(C/C++)开发第三方程序。
移除 Andorid 程序
要移除你安装在模拟器上的程序,你需要通过 run adb 并删除相应的.apk 文件。通过 adb
shell 命令在模拟器上打开一个 UNIX shell,进入目录 data/app/,通过命令 rm 你程序的名称.
apk 来移除文件。
2.3 调试程序
Andvoid 用于调试的手段有:
DDMS,DDMS 是一个图形化的程序,支持端口转发(因此你可以在程序中设置断点),
支持模拟器上的截屏,支持线程和堆栈信息和其他的一些特性。
Logcat,Dump 一份系统消息的日志。这些消息包括模拟器抛出错误时的堆栈跟踪。
Android Log, 打印日志的类,用来将消息写入模拟器上的日志文件中。如 Log.v()用于打印
verbose 级别的日志
Traceview,Android 可以保存一个日志用来记录被调用的方法以及该方法被调用的次数,
通过 Traceview 你可以在一个图形化的界面中查看这个日志文件。
可接解设置 emulator 的设置以方便调试,
模拟器上调试和测试的设置
Android 提供了众多的设置使你可以更容易的调试和测试程序。要进入开发设置页面,在
模拟器中转到 Dev Tools > Development Settings。在该设置页面有以下选项:
•Debug app:选择要调试的程序。你不需要设定其关联至调试器,但是设定这个值有两个
效果:
•在调试的时候,如果你在一个断点处暂停了过长的时间,这个设定会防止 Android 抛出一
个错误
•这个设定使你可以选择“等待调试器”选项,使程序只有在调试器关联上之后才启动
•Wait for Debugger :阻塞所选 的 程 序 的 加载直到 有 调 试 器关联上,这 样 你 就可以在
onCreate()中设置断点,这对于调试一个 Activity 的启动进程是非常重要的。当你对该选项
进行了更改,任何正在运行的程序的实例都会被终止。你只有在上面的选项中选择了一个
调试程序才能够选中该选项。你一也可以在代码中添加 waitForDebugger()来实现同样的功
能。
•Immediately destroy activities:告诉系统一旦一个 activity 停止了就销毁该 activity(例如当
Android 释放内存的时候)。这对于测试代码 onFreeze(Bundle)/onCreate(android.os.Bundle)
是非常有用的,否则会比较困难。如果你的程序没有保存状态,那么选择这个选项很可能
会引发很多问题。
•Show screen updates:对于任何正在被重绘的 screen sections 都会在其上闪现一个粉红色的
矩形。这对于发现不必要的 screen 绘制是很有必要的。
•Show CPU usage:在屏幕上方显示 CPU 信息,显示有多少 CPU 资源正在被使用。上方红
色条显示总的 CPU 使用率,它下方绿色的条显示 CPU 用在 compositing the screen 上的时间。
注意:在没有重启模拟器之前,一旦你开启了该功能就不能关闭。
•Show screen FPS:显示当前的帧率。这对于查看游戏达到的总的帧率是非常有用的。注
意:在没有重启模拟器之前,一旦你开启了该功能就不能关闭。
•Show background:当没有 activity screens 可见时,显示一个背景模式。一般是不会出现的,
仅仅在 Debug 的时候会出现。
设定的选项在模拟器重启之后仍然有效,如果要取消设定的选项,在取消设定以后还要重
启模拟器,才能生效。
2.4 andvoid 中的概念
一个 andvoid 应用包括四个部分:
n Activity 活动 (个人认为 :类似于 JSP, 也相当于 SWT 中的 Shell, View 则相当于
wegiet)
n Intent Receiver (个人认为 :类似于 Struts action)
n Service (个人认为 :类似于 Servlet)
n Content Provider (个人认为 :用于持久化)
用上面哪些组件,要在 AndroidManifest.xml 文件中声明。
1、Activity. 一个 activity 是应用中的一个单一的屏幕,它继承自 Activity 类,它将显示由
Views 组成的 UI 以及响应事件。(个人理解,相当于 JSP)
2、Intent 与 Intent Filters. Intent 用于从一个屏幕跳到别一个屏幕,描述一个应用想做什么,
它的数据结构包括 action 与 data 两部分,它是一个消息操作对象,一个被动的数据结构 。
action 如 MAIN、VIEW、PICK、EDIT 等等, data 被表达成一个 URI;IntentFilter 相当于告
诉 跳 到 哪 个 activity, ; IntentReceiver 用 于 响 应 事 件 , 虽 然 它 不 显 示 UI , 但 它 可 以 用
NotificationManager 去通知用户。它需要在 AndroidManifest.xml 文件中注册,或者是用
Context.registerReceiver()硬编码。
3、Service 是一段有生命周期的无 UI 的代码。
4、Content Provider, 持久化,例如存储在文件系统中,或者存储在 SQLite 数据库中。
2.5 例子
1,下载例子工程。http://code.google.com/android/intro/codelab/NotepadCodeLab.zip
例如:Notepadv1 工程是问题工程,Notepadv1Solution 则是相应的解决工程。
2,3 个例子的函义如下:
通过练习 1>
1. 数据库对象的例子程序
2. 如何在一个 Activity 初始化的时候创建数据库对象
3. 如何为一个 Activity 创建一个 pop 菜单
4. 如何得到一个用户在 POP 菜单中选择的 ITEM 的 ID
5. 如何向一个 ListView 中写入数据
通过练习 2>
1. 如何取得数据集中被选择数据行的 ID, 注意 rows 是 java 的一个 listarray 对象,所
以它有它的 getSelection()的方法
2. 如何调用一个 SubActivity 以及在调用一个 SubActivity 之前应该做些事情。
3. 要实现一个方法, 当 SubActivity 返回后,应该做些什么
4. 关于 layout。由于 Android 采用 MVC 的模式, 所以屏幕的布局采用了 XML 进行定
义。一个好的布局会让程序显的更漂亮。可以参考 http://code.google.com/android/reference/
view-gallery.html, 有很多的布局模式可供利用。
5. 如何创建一个开始的时候代码中不含 onCreate()的类,因为到目前为止还没有创建
过自己的类,以前看到的类和修改的方法都是已经写好的了。不过这个类也是一个从
android.app.Activity 继承的。创建后还是要通过 Source Override 一个 onCreate 的
6. 从一个 SubActivity 返回时,在返回之前应该做哪些事情
7. 如何在 AndroidManifest.xml 中声明一个新的 Activity
8. 如何创建一个内部隐含的 onClickLister 及实现其应有的功能。
通过练习 3>
1. 除了 onCreate()还有哪些和 lifecycle 有关的方法
a.onFreeze():
b.onPause()
c.onResume()
等等…
2. 大部分程序都有必要考虑 lifecycle 的问题,应该把下面的这个图记住:
3. 为了不丢失需要保存的信息,要明确的理解 Activity 的各个状态,并相应的给出在各个
状态的行为。
4.开始的时候对于 onFreeze()和 onPause()有些理解上的困难,要多读几遍 DOC 来会理解。
通过额外练习>
进一步的理解 lifecycle 和通过手机按键进行操作时的时间和程序状态关系
另外,SDK 目录下也有一些例子。
练习目标:
1. 使用 ListActivities,并使用菜单
2. 学习使用操作 SQLite 数据库
3. 使用 ArrayAdapter 绑定数据到 ListView 中
4. 掌握一些基本的操作,如菜单的显示,菜单命令的处理,增加数据项等。
第一步:
在 SDK 中下载获得 Notepadv1 的代码,并导入到 Eclipse 中。导入步骤:
a. 在 Package Explorer 中,右键选择 Import.../General/Existing Projects into Workspace
b. 点 Browse 按钮,选择 Notepadv1 的目录,并点 OK
c. 你将会看到 Notepadv1 被列在项目区中,默认会被打勾,如果没有打勾,请手动勾上。
d. 点 Finish
e. Notepadv1 将被列在 Package Explorer 中
f. 如果有提示 关于 AndroidManifest.xml 的错误,请选 中此项目, 并右键选择 Android
Tools->Fix Project,他将会自动帮你修复错误。
第二步:
看一下数据库操作类:DBHelper,还是比较简单的,自己看去 :)。
第三步:
打开 res/layout/notepad_list.xml 这个文件,快速的看下就可以了:
a.<?xml version="1.0" encoding="utf-8"?>, XML 文件的固定头
b.一个 Layout 的定义,这里是 LinearLayout,但不一定是这个,可以是其他的 Layout
第四步:
在上面的那个文件中加入:
<ListView id="@id/android:list"
剩余39页未读,继续阅读
雪祭2012
- 粉丝: 9
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页