《基于Android平台下医学图像开窗显示软件的设计与实现毕业设计论文1.doc》由会员分享,可在线阅读,更多相关《基于Android平台下医学图像开窗显示软件的设计与实现毕业设计论文1.doc(48页珍藏版)》请在三一办公上搜索。
1、内蒙古科技大学本科生毕业设计说明书(毕业论文) 题 目:基于Android平台下医学图像开窗显示软件的设计与实现 基于android平台下医学图像开窗显示软件的设计与实现摘 要 随着人们生活水平的提高,科技迅速的发展,智能手机逐渐普及。2007年Google推出了基于Linux的自由及开放源代码的Android操作系统,目前已成为智能手机的主流操作系统。Android是第一个免费、开源、并且完全可定制的移动平台,该平台下的应用程序也越来越多,但是基于Android系统的医学图像处理软件并不多见。DICOM是医学图像信息系统领域中的核心,它主要涉及医学影像的编码格式与网络通信协议,是构建放射学信
2、息系统(RIS)和图像存档与通信系统(PACS)的国际标准之一。DICOM也是设备无关的解决方案之一,实现信息资源共享的技术基础。本设计使用Google开源项目中的解析包,实现了对医学图像文件的解析。设计论文在介绍Java语言、Eclipse软件、Android操作系统以及医学图像相关内容的基础上,说明了整个设计过程。为了充分利用移动平台的优势,方便医生随时诊疗,本设计要求实现基于Android平台下的DICOM格式的医学图像的读取和显示。关键词:Android平台;DICOM;医学图像显示The Medical Image Display Software Design and Implem
3、entation Based on Android OSAbstractWith the improvement of peoples living standards, rapid development of science and technology, smart phones has been popularized. In 2007, Google has launched a free and open source operating system, which is named Android. It has become the mainstream mobile oper
4、ating system. Android is the fully customizable mobile platform, more and more applications appeared on the platform, but there are few App can process medical image.DICOM is the core of the field of medical image information system, which mainly relates to the medical image coding scheme and networ
5、k communication protocol. Also its one of the international standards to build a Radiology Information System(RIS), Picture Archiving and Communication System (PACS). One of the solutions is independent of DICOM equipment, technical basis for realizing information resources sharing. By using the cod
6、es of open source projects from Google, the application has realized the parsing of medical image files. This paper introduces the Java language, Eclipse, Android operating system, as well as related content on the basis of medical image. It also illustrates the entire design procedure. The Applicat
7、ion fully uses the advantages of mobile platforms, and simplifies diagnose procedure. Its main function is to parse medical image files and display the images.Key words: The Android platform; DICOM; Medical Image display目 录摘 要IAbstractII第一章 绪 论11.1 引言11.2 医学图像简介11.3 DICOM的发展过程21.4 DICOM图像的应用3第二章 And
8、roid平台的简述52.1 认识Android52.1.1 Android简介52.1.2 Android的发展52.2 Android基本框架62.3 Android系统的四大组件92.4 Android 2.3.3模拟器介绍122.4.1 Android2.3.3模拟器概述122.5 开发语言Java122.5.1 Java简介122.5.2 Java语言特点13第三章 搭建Android开发环境143.1 开发Android前的准备143.1.1 安装JDK143.1.2 安装Eclipse143.1.3 安装Android SDK153.1.4 安装ADT插件163.1.5 创建And
9、roid虚拟设备17第四章 DICOM医学图像文件194.1 DICOM文件头194.2 DICOM数据集194.2.1 VR的类型204.2.2 数据传输协议标识(UID)214.3 DICOM文件解析224.4 DICOM文件开窗显示24第五章 软件功能规划及功能实现255.1 软件功能规划255.2 熟悉Android开发环境255.2.1 新建Android工程项目255.2.2 填写工程信息265.2.3 运行HelloAndroid275.3 软件设计与实现285.3.1 程序设计285.3.2 界面布局的设置31第六章 设计总结38参考文献39附 录41致 谢43第一章 绪 论1
10、.1 引言在20世纪90年代初, 随着通信技术、网络技术以及计算机技术的发展, 图像处理和分析以及PACS(Picture Archiving and Communication System)在医学教学、远程医疗以及临床诊断中发挥着越来越重要的作用。而DICOM(Digital Imaging and Communications in Medicine,医学数字成像和传输)是PACS系统中应用的主要标准,它涉及到信息系统中最主要也是最困难的医学图像的成像和通信,可以直接应用在RIS(Radiology Information System,放射科信息系统)和PACS中1。DICOM(Dig
11、ital Imaging and Communications in Medicine)是NEMA(美国制造商协会)和ACR(美国放射学会)联合制定的一种规定数字医学影像和相关信息的格式及其信息交换方法的国际标准,现已几乎成为世界各国都遵循的医学图像标准,是医院间以及国际间医学图像交流的基础。Android是一款针对手机的全新开源软件工具包,它由Google和开发手机联盟(Open Handset Alliance)共同创建。Android有望在数年内遍布于数百万部手机和其他移动设备中,从而成为应用程序开发人员的主要平台。Android系统由于功能非常丰富,所以一直受广大开发爱好者的喜爱。但是
12、在Android平台下关于医学图像方面的软件却很少,现有的大多数图像处理软件都不能直接读取和显示dcm格式的医学图像文件。所以在Android平台下编程实现DICOM格式的医学图像的读取和显示是非常有意义的。本次毕业设计的主要任务是用Java语言结合eclipse软件,实现了Android平台下DICOM格式的医学图像的读取和显示。1.2 医学图像简介 医学数字成像和传输是由ACR(American College of Radiology,美国放射学会)和NEMA(National Electrical Manufacturers Association,国家电气制造商协会)共同制定的医学图
13、像成像和传输的标准。其目的是为在不同的医学影像设备间提供一个一致性的接口,以实现数字影像在各种医学影像设备间交换传输。随着DICOM协议不断的发展完善,各医学影像设备制造商纷纷推出符合DICOM标准的医学影像设备,DICOM已成为医学影像的公认标准,目前版本为3.0。DICOM3.0标准有15部分组成,其中第10部分“用于介质交换的存储介质和格式”给出DICOM文件格式2。DICOM文件是指按照DICOM标准存储的医学文件。 DICOM SOP Instance A File contains one SOP instanceDICOM Data SetDICOMFile MetaInform
14、ationDCM文件一般由DICOM文件头(File Meta Information)和DICOM数据集(Data Set)组成。每个DCM文件包含了一个单独的服务对象对(Service-Object Pair,SOP)实例(如图1)。 DICOM Part 5 Encoding 图1 DCM文件结构在DICOM文件中最基本的单元是数据元素,DICOM数据集就是由DICOM数据元素按照一定的顺序排列组成的。标识符是一个2B 无符号整数对,分别代表组号和元素号,DICOM所有的数据元素都可以用标签来惟一表示3。数据类型(VR)是2B的字符串,指明了该数据元素中的数据是哪种类型。不同的数据类型决
15、定了数据的不同读取方式。数据长度是一个2B或4B(取决于显示或隐示VR)的无符号整数,指明该数据元素的数据域中数据的长度。数据域指明数据的具体数值,该字段的数据类型由数据元素的VR 所明确定义。1.3 DICOM的发展过程 20世纪70年代以来,计算机断层成像技术和其它数字成像技术发展极其迅速,很多厂商都研制了具有计算机的成像设备,而且它们制定了各自不同的图像格式。随着计算机网络的普及和其在医学上的广泛应用,在不同厂商生产的设备之间交换图像和相关信息的需求日趋迫切,而缺乏统一的标准成为图像交换的主要障碍。因此,ACR和NEMA在1983年组成一个联合委员会并发起制定一个公共的标准,其目的是:(
16、1) 有助于开发和推广图像存档和传输系统(PACS),并能与其它医学信息系统联系。(2) 促进数字图像设备的网络化,而不论设备的开发商是谁。(3) 建立有价值的诊断信息数据库,它能处理地理上分散的不同设备间的请求。1985年,该委员会发表了ACR-NEMA 1.0标准(No.300-1985)。1986年10月和1988年1月又公布了该标准的两个修订版。1988年公布了ACR-NEMA 2.0标准(No. 300-1988)。然而由于技术上不成熟,这些规范并没有被广泛采用。但是这些努力吸引了国际上许多著名的医学影像设备制造商的关注及参与,终于在1996年,委员会发表了一套新的规范,正式命名为D
17、ICOM 3.0。此规范公布后立即得到众多的厂商及机构的采用。在此之后,DICOM标准不断地吸纳各方反馈的有用信息,从不同的专业角度对规范在范畴和深度上进行扩充,1998年又推出了修订版本,目前仍然在不断的发展中。DICOM涵盖了数字图像信息构成和通信两个领域,内容极其烦琐、庞大,目前没有任何医学系统可以支持所有的DICOM服务,每一种设备都是只针对自己最需要的部分提供支持。我们也根据核医学的需要,制定了自己的符合DICOM标准的图像文件格式。其中核医学图像文件结构部分主要参阅了DICOM标准的PS 3.3PS 3.6和PS 3.10。PS 3.3: Information Object De
18、finitions(信息对象定义);PS 3.4: Service Class Specifications(服务类规范);PS 3.5: Data Structure and Encoding(数据结构和编码规定);PS 3.6: Data Dictionary(数据字典);PS 3.10: Media Storage and File Format for Data Interchange(便于数据交换的介质存储方式和文件格式)。1.4 DICOM图像的应用 毫无疑问,DICOM是医学图像信息系统领域中的核心,它涉及到信息系统中最主要也是最困难的医学图像的存储和通信,可直接应用在放射学信息
19、系统(RIS)和图像存档与通信系统(PACS)中。DICOM也是研究和开发具有网络连接功能,实现信息资源共享的新型医疗仪器的技术基础。医疗仪器在朝着自动化、智能化发展的同时,也在向着具有通信能力的遥控遥测和信息远程获取的网络功能发展,医疗仪器既是医疗信息系统中的信息源,又是系统中的信息使用者,是信息系统中的一个主要环节,网络化的医疗仪器对医学信息系统的重要性是不言而喻的4。 在采用DICOM标准的信息网络系统中,所有DICOM设备之间都可以按照DICOM的网络上层协议进行互相连接和操作。临床医生可以在办公室查看B超设备的图像和结果,可以在CT机上调用核磁共振图像进行图像的叠加融合,也可以通过网
20、络调用存储在其他医院的图像结果。无论是本院、本地还是相距很远的外地,DICOM设备都可以通过网络相互联系,交换信息。由于提供了统一的存储格式和通信方式,普及DICOM标准,可以简化医疗信息系统设计,避免许多重复性的工作,加快信息系统的开发速度。对于实现无纸化、无胶片化的医院和远程医疗系统的实施将会起极其重要的作用。第二章 Android平台的简述2.1 认识Android Android一词的英文本义指“机器人”,它是Google公司于2007年11月宣布的基于Linux平台的开源手机操作系统,该平台由操作系统、用户界面和应用软件组成。 简单的理解,Android是基于Java并运行在Linu
21、x内核上的操作系统,这个操作系统是轻量级的,但是功能却很全面。而且在这个系统上,Google公司已经内置了很多有用的软件,如打电话、发短信等。该操作系统最初由Andy Rubin开发,主要支持手机。2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上5。2.1.1 Android简介 该平台由操作系统、中间件、用户界面和应用软件组成。它采用软件堆层的架构,主要分为三部分。底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和虚拟机Virtual Machine,由C+开发。最上层是各种应用软件,包括短信程序,通话程
22、序等,应用软件则由各个公司自行开发,以Java作为编写程序的一部分。不存在任何以往阻碍移动产业创新的专有权障碍,是首个为移动终端打造的真正开放和完整的移动软件。Google通过与软、硬件开发商、电信运营商、设备制造商等其他有关各方结成深层次的合作伙伴关系,希望借助建立标准化、开放式的移动电话软件平台,从而在移动产业内形成一个开放式的生态系统。 Android作为Google企业战略的重要组成部分,将进一步推进“随时随地为每个人提供信息”这一企业目标的实现。全球为数众多的移动电话用户正在使用各种基于Android的电话6。Android将补充,而不会替代谷歌长期以来奉行的移动发展战略:通过与全球
23、各地的手机制造商结成合作伙伴,开发既有用又有吸引力的移动服务,并推广这些产品。2.1.2 Android的发展安卓手机就是有Android这个操作系统的手机,在2007年11月5日开放手机联盟(Open Handset Alliance)成立之后,Android的发展加快了速度。07年11月12日宣布发布了第一版Android SDK;08年的4月份举办了安卓开发竞赛,推动了安卓开发的应用速度;08年的8月份为Android平台手机提供软件分发和下载的Market正式上线,积累了大量的应用;08年9月22日,美国运营商T-Mobile USA在纽约正式发布第一款Google手机T-Mobile
24、 G1。该款手机为台湾宏达电制造,是世界上第一部使用Android操作系统的手机,支持WCDMA/HSPA网络,理论下载速率7.2Mbps,并支持Wi-Fi;次日,Android 1.0 R1 SDK发布,标志着Android系统趋于稳定和成熟;同年的10月,Android被宣布开放源代码7。2.2 Android基本框架Android应用开发框架是 Application Framework,但其系统架构由5部分组成,分别是:Applications、Application Framework、Libraries、Android Runtime、Linux Kernel,如图2.1所示。(1
25、) ApplicationApplication Android同一个核心应用程序包一起发布,该应用程序包包括Email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是用Java编写的。 (2) Application FrameWork 通过提供开放的开发平台,Android使开发者能够编制极其丰富和新颖的应用程序。开发者可以自由地利用设备硬件优势、访问位置信息、运行后台服务、设置闹钟、向状态栏添加通知等等,很多很多。 开发者可以完全使用核心应用程序所使用的框架APIs。应用程序的体系结构旨在简化组件的重用,任何应用程序都能发布他的功能且任何其他应用程序可以
26、使用这些功能(需要服从框架执行的安全限制)。这一机制允许用户替换组件,所有的应用程序其实是一组服务和系统,包括: 视图(View):View是丰富的、可扩展的视图集合,可用于构建一个应用程序。包括包括列表、网格、文本框、按钮,甚至是内嵌的网页浏览器 内容提供者(Content Providers):使应用程序能访问其他应用程序(如通讯录)的数据,或共享自己的数据 资源管理器(Resource Manager):提供访问非代码资源,如本地化字符串、图形和布局文件 通知管理器(Notification Manager):使所有的应用程序能够在状态栏显示自定义警告 活动管理器(Activity Ma
27、nager):管理应用程序生命周期,提供通用的导航回退功能。(3) LibrariesAndroid包括一个被Android系统中各种不同组件所使用的C/C+库集。该库通过Android应用程序框架为开发者提供服务。供Android系统的各个组件使用。这些功能通过Android的应用程序框架(Application framework)暴露给开发者。下面列出一些核心库: 系统C库:标准C系统库(libc)的BSD衍生,调整为基于嵌入式Linux设备;媒体库:基于PacketVideo的OpenCORE,支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、H.264、MP3
28、、AAC、AMR、JPG、PNG;Surface Manager:对显示子系统的管理,并且为多个应用程序提供2D和3D图层的无缝融合。LibWebCore:一个最新的Web浏览器引擎用来支持Android浏览器和一个可嵌入的Web视图。SGL:一个内置的2D图形引擎3D。FreeType:位图(bitmap)和向量(vector)字体显示。SQLite:一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。图2.1 Android基本结构(4) Android RuntimeAndroid包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。每一个Android应用程序都在它
29、自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik是针对于同时高效地运行多个VMs来实现的。Dalvik虚拟机执行.dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。该虚拟机是基于寄存器的,所有的类都经由Java汇编器编译,然后通过SDK中的dx工具转化成.dex格式由虚拟机执行。Dalvik虚拟机依赖于Linux的一些功能,比如线程机制和底层内存管理机制。(5) Linux Kernel Android的核心系统服务依赖于Linux 2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。Linux内核也同时作为硬件和软件堆栈之间的硬件抽象层,它
30、隐藏具体硬件细节而为上层提供统一的服务8。2.3 Android系统的四大组件在Android系统中,为我们提供了四大基本组件,每个组件是一个视图,但是有些是可见的,有些是不可见的视图,像Activity,ContentProvider是可见的视图,Service和BroadcastReceiver是不可见的,它们只在系统的后台运行。下面分别介绍四大组件9:(1) Activity(应用表示层)在Android系统中基类Activity提供可视化的用户界面,一个Android应用通常由多个Activity组成,而且同一Android应用中的每个Activity是相互独立的。程序启动后显示的第一
31、幅画面是应用程序的第一个Activity(默认窗口),而后可以根据需要从这个Activity启动另一个新的Activity。Activity利用View来实现应用中的GUI(图形用户界面),而用户直接通过GUI和应用程序做交互。Activity窗口内的可见内容通过基类View提供。使用Activity.setContentView()方法设置当前Activity中的View对象。多个Activity组成了Activity栈(Stack),当前活动的Activity处于栈顶。Activity有自己的生命周期,由Android系统来控制。整个的生命周期,从onCreate(Bundle)开始到on
32、Destroy()结束。Activity在onCreate()设置所有的“全局”状态,在onDestory()释放所有的资源。可见的生命周期从onStart()开始到onStop()结束。在这段时间,可以看到Activity在屏幕上,尽管有可能不在前台,不能和用户交互。onStart(),onStop()都可以被多次调用,因此Activity随时可以在可见和隐藏之间转换。前台的生命周期,从onResume()开始到onPause()结束。在这段时间里,该Activity处于所有 Activity的最前面和用户进行交互。Activity可以经常性地在Resumed和Paused状态之间切换。Ac
33、tivity整个生命周期都定义在onCreate()、onStart()、onRestart()、onResume()、onFreeze()、onPause()、onStop()、onDestroy()接口方法中,所有方法都可以被重载。所有的Activity都需要实现 onCreate(Bundle)去初始化设置,大部分Activity需要实现onPause()去提交更改过的数据,当前大部分的Activity也需要实现onFreeze()接口,以便恢复在onCreate(Bundle)里面设置的状态。图2.2显示了Activity的重要状态转换,矩形框表明Activity在状态转换之间的回调接
34、口,可以重载实现以便执行相关代码,带有颜色的椭圆形表明Activity所处的状态。(2) Service 简介基类Service没有可见的用户界面,但能够长时间的运行于后台,在应用程序进程的主进程中。一个定义好的Service必须在AndroidManifest.xml配置文件注册,通过元素声明才能使用。Service有自己的生命周期,我们可以调用startServic()启动一个Service或者bindService()方法来绑定一个存在的Service。(3) Broadcast Receiver 简介基类Broadcast Receiver 是用户接收广播通知的组件,它和事件处理机制类
35、似,只不过事件处理机制是程序组件级别的(例如,某个按钮的单击事件),而广播事件处理机制是系统级别的。到目前为止可以使用Intent来启动一个程序组件,还可以通过使用sendBroadcast()方法来发起一个系统级别的事件广播来传递消息。同时可以在应用程序中实现Broadcast Receiver来监听和响应这些广播的Intent。 BroadcastReceiver是对发送出来的Broadcast进行过滤接收并响应的一类组件。它自身并不实现图形用户界面,但是当它收到某个通知后,BroadcastReceiver可以启动Activity作为响应,或者通过NotificationMananger
36、提醒用户。图2.2 Android生命周期 (4) Content Provider简介基类Content Provider解决了应用程序间数据通信、共享的问题,还用来保存和检索数据,并且使应用程序之间相互访问数据成为可能。它是跨应用程序共享数据的唯一方法。Content Provider可以将应用程序特定的数据提供给另一个应用程序使用。其数据存储方式可以是Android文件系统、SQLite数据库或者其他合理的方式。Android 为常用的数据类型(如:音视频、图片和联系方式等)提供了大量的Content Provider。它们被定义在android.provider包下面。通过定义好的Co
37、ntentProvider 可以方便的进行数据操作。2.4 Android 2.3.3模拟器介绍2.4.1 Android2.3.3模拟器概述模拟器有两部分组成,左边模拟手机显示,右边部分模拟手机的键盘。在模拟手机的部分内置了一些Google公司自带的程序,如打电话、发短信、计算器、闹钟等程序,如图2.3所示。 图2.3 Android模拟器中应用程序界面2.5 开发语言Java2.5.1 Java简介Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的
38、魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在都支持Java applet。 Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Jav
39、a应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.5,最近版本为Java1.7。 Java分为三个体系JavaSE(Java2 Platform Standard Edition,Java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,Java平台企业版),JavaME(Java 2 Platform Micro Edition,Java平台微型版)10。2.5.2 Java语言特点Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的动态语言。当1995年SUN推出Java语言
40、之后,全世界的目光都被这个神奇的语言所吸引。Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,但是,网络的出现改变了OAK的命运11。在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力。SUN的工程师
41、敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。第三章 搭建Android开发环境3.1 开发Android前的准备3.1.1 安装JDK首先找到已下载好的JDK文件,然后双击打开就进入了安装JDK的界面,根据提示信息继续安装。安装完成后,需要配置JDK,具体步骤如下:(1) 右击“我的电脑”,选择“属性”打开;(2) 点击“高级系统设置”;(3) 在“系统属性”窗口中,选择“高级”属性页的“环境变量”按钮;(4) 在“环境变量”窗口中,选择“系统变量”中变量名为“Path”的环境变量,双击该变量;(5) 把JDK安装路径中bi
42、n目录的绝对路径,添加到Path变量的值中,并使用英文状态下的半角分号和已有的路径进行分隔;(6) 逐一点击“确定”,退出设置。配置完成以后,使用如下格式来测试配置是否成功:(1) 打开“开始”“程序”“附件”“命令提示符”;(2) 在“命令提示符”窗口中,输入javac,按回车执行;如果输出的内容是使用说明,则说明配置成功。如果输出的内容是“javac”不是内部或外部命令,也不是可执行的程序或批处理文件。”,则说明配置错误,需要重新进行配置12。3.1.2 安装EclipseEclipse是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插
43、件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(Java Development Tools,JDT)。将“Eclipse”压缩文件压缩到适当目录下,接着直接打开该目录,点击“eclipse.exe”图标,即可开始执行Eclipse集成开发环境13。3.1.3 安装Android SDKSDK(software development kit)软件开发工具包被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。因此,Android SDK指的既是Android专属的软件开发工具包。解压文件,双击“SDK Set
44、up.exe”。运行SDK setup.exe文件时如果你遇到了消息为“Failed to fetch URL”的错误提示,如图3.1所示。图3.1 运行SDK setup.exe碰到这样错误,请按下边的操作:(1) 在“Android SDK and AVD Manager”窗口的左侧选择“Settings”(2) 选中“Force https /”,如图3.2所示。(3) 点击“Save and Apply”并重新运行SDK Setup.exe(4) 选择你要安装的API版本、驱动、文档,然后选择你需要的包。然后就是等待安装程序下载选择的包来安装14。 图3.23.1.4 安装ADT插件A
45、ndroid为Eclipse定制了一个插件,即Android Development Tools(ADT),目的是为用户提供一个强大的综合环境用于开发Android应用程序。ADT扩展了Eclipse的功能,可以让用户快速地建立Android项目,创建应用程序界面,在基于Android框架API的基础上添加组件,以及用SDK工具集调试应用程序,甚至导出签名的APKs以便发行应用程序15。安装Android Development Tools plug-in,打开Eclipse IDE。依次单击Menu项中的HelpSoftware Updates项。在弹出的对话框中选择“Available S
46、oftware”标签。单击“Add Site”,输入“http:/dl-(1) 启动Eclipse,依次选择HelpSoftware UpdatesFind and Install项。(2) 在弹出来的对话框中选择“Search for new features to install”项,然后单击“Next”按钮。(3) 单击“New Remote Sit”项。(4) 在弹出的对话框中,给新的站名取个名字(如Android Plugin),输入http:/dl-ssl.go (5) 然后可以看到刚刚添加的站点已经加入搜索的列表,选择其前面的选择,单击“Finish”按钮。(6) 在接下来的操作中,依次选择Android PluginDeveloper Tools项,这样会选中“Android Developer Tools”和“Android DDMS”,然后单击“Next”按钮。(7) 阅读其协议,选择“Accept terms of the license agreement”,单击“Next”按钮。(8) 最后单击“Finish”按钮。(9) 然后会出现“The ADT plugin is not signed: you can accept the installation anyway”,单击“Install All”按钮。(