1、处理器(芯片),智能手机最重要的组成部件,手机专用芯片,这些芯片包括:射频芯片、射频功放芯片、处理器芯片、电源管理芯片、存储芯片、触摸屏控制芯片等。
2、存储器(内存),手机内存又分为运行内存和非运行内存这两种。手机内存的运行内存就相当于电脑的内存,手机内存的运行内存越大,手机在运行程序时就会越流畅,后台能够进行多个程序的运行。手机的非运行内存,也就是常说的内存,便相当于电脑的硬盘,可以进行各种软件或是文件的存储,当这个内存越大时,我们就能存储越多的东西。
3、输入输出设备,包括USB接口、耳机接口、摄像头等及I/O通道。
4、屏幕,手机上占比最大的部件,手机显示屏是一种将一定的电子文件通过特定的传输设备仪器显示到屏幕上再反射到人眼的的一种显示工具。
5、电池,手机电池是为手机提供电力的储能工具,由三部分组成:电芯、保护电路和外壳,手机电池一般用的是锂电池和镍氢电池。mAh”是电池容量的单位,中文名称是毫安时。
扩展资料智能手机的基本要求:
1、高速度,高精度处理芯片。3G手机不仅要支持打电话、发短信,它还要处理音频、视频,甚至要支持多任务处理,这需要一颗功能强大、低功耗、具有多媒体处理能力的芯片。这样的芯片才能让手机不经常死机,不发热,不会让系统慢得如蜗牛。
2、大存储芯片和存储扩展能力。如果要实现3G的大量应用功能,没有大存储就完全没有价值,一个完整的GPS导航图,要超过一个G的存储空间,而大量的视频、音频还和多种应用都需要存储。因此要保证足够的内存存储或扩展存储,才能真正满足3G的应用。
3、面积大、标准化、可触摸的显示屏。只有面积大和标准化的显示屏,才能让用户充分享受3G的应用。分辨率一般不低于320×240。
4、支持播放式的手机电视。如果手机电视完全采用电信网的点播模式,网络很难承受,而且为了保证网络质量,运营商一般对于点播视频的流量都有所控制,因此,广播式的手机电视是手机娱乐的一个重要组成部分。
5、 *** 作系统必须支持新应用的安装。有可能安装各种新的应用,使用户的手机可以安装和定制自己的应用。
6、配备大容量电池,并支持电池更换。3G无论采用何种低功耗的技术,电量的消耗都是一个大问题,必须要配备高容量的电池,1500mAh是标准配备,随着3G的流行,很可能未来外接移动电源也会成为一个标准配置。
参考资料来源:百度百科-智能手机
APP是Application的简称,也就是应用程序,一般指的是安装在移动设备(手机、平板)上的应用程序。
软件的话
软件=程序+文档
一个软件中,程序是为了完成特定需求而编写的命令集合,这也是软件必不可少的因素,但是除了程序,软件中还应该有编写程序时需要的、文档等文件
我们以一个软件为例:
在软件安装目录中随便进入一个文件夹内,我们可以看到有应用程序以及各种文件
开发原理:
Android应用程序是用Java语言编写的。编译过后的字节码,以及应用程序要求的其他数据和资源文件,通过aapt工具被绑定在一起,称为 Android包,这是一个带apk后缀的档案文件。这个文件也是用户下载到他们设备上的文件。所有的代码在一个单一的apk文件中,组成一个“应用程序”。
主要过程:
1、需求分析:
大部分创业型项目在这个阶段只是一些比较抽象的想法。有一份相对完善的需求文档,不仅有助于创业者自身对项目的理解和周全性分析,如果项目是交由设计公司去完成的话,也更有利于对方准确把握项目的定位和商业模式,以便给出专业的建议和解决方案。
2、原型设计
接下来会根据上面提到的具体需求文档,项目经理进行会进行原型图的设计。
3、UI设计
原型图经过反复推敲修正后,UI 设计师会进行UI界面相关的配色设计、功能具象化处理、交互设计、以及各种机型、系统的适配。UI 设计师经过多次与项目经理沟通修改后,最终的到定稿的高保真设计图。
4、开发
经过以上几个过程之后,会正式进入到开发阶段。
5、测试调试
APP 功能开发完成之后,测试人员会对整项目进行系统性测试。这个环节会调动起项目组内所有人相关人员。而测试这个环节的重要性不亚于前期功能的规划,如果团队没有经过专业系统性训练的测试人员,很可能会导致项目出现与设计初衷存在落差,以及遗漏下一些逻辑上的坑。
6、发布app
经过至少两轮的内部测试以及小范围外测(或者完成满足测试要求的周期)后,会进行最终版本的上架。
扩展资料APP开发工具
1、MOTODEV Studio for Android
MOTODEV Studio for Android,这是基于Android的开发环境,为开发者们提供新的MOTODEV App Accelerator Program使他们可以开发出更适合摩托罗拉Android手机的应用程序。
2、J2ME开发插件 Mobile Tools for Java
Mobile Tools for Java (MTJ) 是Nokia公司开发的一款 Eclipse插件,用于支持 Java 手机应用程序开发。其前身就是大名鼎鼎的 EclipseME。
3、apk文件修改工具 Root Tools
RootTools是一个新的工具软件,Android开发者可以在这一工具软件的支持下,对apk格式的文件进行再次修改,让程序表现更加出色,满足用户的需求。Root Tools里面自带有很多工具,比如BusyBox,它里面集成压缩了很多Linux的工具和命令,这样软件开发者在对
4、IDEA的Android开发插件 idea-android
idea-android 是在 IDEA 集成开发环境中开发 Android 应用程序的插件。
参考资料百度百科-app开发
Android平台采用了整合的策略思想,包括底层Linux *** 作系统、中间层的中间件和上层的Java应用程序。下面我把Android的特性及其架构体系结构总结一下。
一、Android的平台特性
Android平台有如下特性:
1 应用程序框架支持组件的重用与替换。
这样我们可以把系统中不喜欢的应用程序删除,安装我们喜欢的应用程序。
2 Dalvik虚拟机专门为移动设备进行了优化。
Android应用程序将由Java编写、编译的类文件通过DX工具转换成一种后缀名为dex的文件来执行。Dalvik虚拟机是基于寄存器的,相对于Java虚拟机速度要快很多。
3 内部集成浏览器基于开源的WebKit引擎。
有了内置的浏览器,这将意味着WAP应用的时代即将结束,真正的移动互联网时代已经来临,手机就是一台“小电脑”,可以在网上随意遨游。
4 优化的图形库包括2D和3D图形库,3D图形库基于OpenGL ES 10。
强大的图形库给游戏开发带来福音。在3G最为重要的的应用莫过于手机上网和手机游戏。
5 SQLite用作结构化的数据存储。
6 多媒体支持包括常见的音频、视频和静态印象文件格式
如MPEG4、H264、MP3、AAC、AMR、JGP、PNG、GIF。
7 GSM电话(依赖于硬件)。
8 蓝牙(Bluetooth)、EDGE、3G、WiFi(依赖于硬件)。
9 照相机、GPS、指南针和加速度计(依赖于硬件)。
10 丰富的开发环境包括设备模拟器、调试工具、内存及性能分析图表和Eclipse集成的开发环境插件。
Google提供了Android开发包SDK,其中包含了大量的类库和开发工具,并且针对Eclipse的可视化开发插件ADT。
二、Android平台架构
从上图我们可以看出,Android *** 作系统的体系结构可分为4层,由上到下依次是应用程序、应用程序框架、核心类库和Linux内核,其中第三层还包括Android运行时的环境。下面分别来讲解各个部分。
1 程序应用
Android
连同一个核心应用程序包一起发布,该应用程序包包括E-mail客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序等。所有的应用程序都是用Java编写的。
2 应用程序框架
开发者完全可以访问核心应用程序所使用的API框架。该应用程序框架架构用来简化组件软件的重用,任何一个应用程序都可以发布它的功能块并且任何其他的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。该应用程序重用机制使得组件可以被用户替换。
以下所有的应用程序都由一系列的服务和系统组成,包括:
1)一个可扩展的视图(Views)可以用来创建应用程序,包括列表(lists)、网络(grids)、文本框(text
boxes)、按钮(buttons),甚至是一个可嵌入的Web浏览器。
2)内容管理器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。
3)一个资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串、图形和分层文件(layout files)。
4)一个通知管理器(Notification Manager)使得应用程序可以在状态栏中显示客户通知信息。
5)一个活动类管理器(Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能。
3 Android程序库
Android包括一个被Android系统中各种不同组件所使用的C/C++集库。该库通过Android应用程序框架为开发者提供服务。
以下是一些主要的核心库:
1)系统C库:一个从BSD继承来的标准C系统函数库(libc),专门为基于Embedded Linux的设备定制。
2)媒体库:基于PacketVideo
OpenCORE;该库支持录放,并且可以录制许多流行的音频视频格式,还有静态映像文件包括MPEG4、H264、MP3、AAC、JPG、PNG。
3)Surface Manager:对显示子系统的管理,并且为多个应用程序提供2D和3D图层的无缝融合。
4)LibWebCore:一个最新的Web浏览器引擎,用来支持Android浏览器和一个可嵌入的Web视图。
5)SGL:一个内置的2D图形引擎。
6)3D libraries:基于OpenGL ES 10 APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。
7)FreeType:位图(bitmap)和向量(vector)字体显示。
8)SQLite:一个对于所以应用程序可用、功能强劲的轻型关系型数据库引擎。
4 Android运行库
Android包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。
每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik是针对同时高效地运行多个VMs实现的。Dalvik虚拟机执行dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。该虚拟机是基于寄存器的,所有的类都是经由Java汇编器编译,然后通过SDK中的DX工具转化成dex格式由虚拟机执行。
Dalvik虚拟机依赖于Linux的一些功能,比如线程机制和底层内存管理机制。
5 Linux内核
Android的核心系统服务依赖于Linux内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的硬件抽象层。
① Activity是Android应用中负责与用户交互的组件——大致上把它想象成Swing编程中的JFrame控件。不过它与JFrame的区别在于:JFrame本身可以设置布局管理器,不断地向JFrame中添加组件,但Activity只能通过setContentView(View)来显示指定组件。
Activity为Android应用提供里可视化用户界面,如果该Android应用需要多个用户界面,那么这个Android应用将会包含多个Activity,多个Activity组成Activity栈。当前活动的Activity位于栈顶。
View组件是所有UI控件、容器控件的基类,View组件就是Android应用中用户实实在在看到的部分。但View组件需要放到容器组件中,或者使用Activity将它显示出来。如果需要通过某个Activity把指定View显示出来,调用Activity的setContentView()方法即可。
----以上来自 疯狂的鲨鱼 博客园
android应用开发框架是 Application Framework 其系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。第二部分将详细介绍这5个部分。下面自底向上分析各层。
Android架构
1、Linux Kernel
Android基于Linux 26提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。 如果你学过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。也就是说各层各尽其职,各层提供固定的SAP(Service Access Point),专业点可以说是高内聚、低耦合。 如果你只是做应用开发,就不需要深入了解Linux Kernel层。
2、Android Runtime
Android包含一个核心库的集合,提供大部分在Java编程语言核心类库中可用的功能。每一个Android应用程序是Dalvik虚拟机中的实例,运行在他们自己的进程中。Dalvik虚拟机设计成,在一个设备可以高效地运行多个虚拟机。Dalvik虚拟机可执行文件格式是dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。 大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。两种架构各有优劣,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。dx 是一套工具,可以将 Java class 转换成 dex 格式。一个dex文件通常会有多个class。由于dex有时必须进行最佳化,会使文件大小增加1-4倍,以ODEX结尾。 Dalvik虚拟机依赖于Linux 内核提供基本功能,如线程和底层内存管理。
3、Libraries
Android包含一个C/C++库的集合,供Android系统的各个组件使用。这些功能通过Android的应用程序框架(application framework)暴露给开发者。下面列出一些核心库: 系统C库--标准C系统库(libc)的BSD衍生,调整为基于嵌入式Linux设备 媒体库--基于PacketVideo的OpenCORE。这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、 H264、 MP3、 AAC、 AMR、JPG、 PNG 界面管理--管理访问显示子系统和无缝组合多个应用程序的二维和三维图形层 LibWebCore--新式的Web浏览器引擎,驱动Android 浏览器和内嵌的web视图 SGL--基本的2D图形引擎 3D库--基于OpenGL ES 10 APIs的实现。库使用硬件3D加速或包含高度优化的3D软件光栅 FreeType --位图和矢量字体渲染 SQLite --所有应用程序都可以使用的强大而轻量级的关系数据库引擎
4、Application Framework
通过提供开放的开发平台,Android使开发者能够编制极其丰富和新颖的应用程序。开发者可以自由地利用设备硬件优势、访问位置信息、运行后台服务、设置闹钟、向状态栏添加通知等等,很多很多。 开发者可以完全使用核心应用程序所使用的框架APIs。应用程序的体系结构旨在简化组件的重用 ,任何应用程序都能发布他的功能且任何其他应用程序可以使用这些功能(需要服从框架执行的安全限制)。这一机制允许用户替换组件。 所有的应用程序其实是一组服务和系统,包括: 视图(View)--丰富的、可扩展的视图集合,可用于构建一个应用程序。包括包括列表、网格、文本框、按钮,甚至是内嵌的网页浏览器 内容提供者(Content Providers)--使应用程序能访问其他应用程序(如通讯录)的数据,或共享自己的数据 资源管理器(Resource Manager)--提供访问非代码资源,如本地化字符串、图形和布局文件 通知管理器(Notification Manager)--使所有的应用程序能够在状态栏显示自定义警告 活动管理器(Activity Manager)--管理应用程序生命周期,提供通用的导航回退功能
5、Applications
Android装配一个核心应用程序集合,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。所有应用程序都是用Java编程语言写的。更加丰富的应用程序有待我们去开发! 从上面我们知道Android的架构是分层的,非常清晰,分工很明确。Android本身是一套软件堆迭(Software Stack),或称为「软件迭层架构」,迭层主要分成三层: *** 作系统、中间件、应用程序。从上面我们也看到了开源的力量,一个个熟悉的开源软件在这里贡献了自己的一份力量。
以上就是关于手机主要组成部件。全部的内容,包括:手机主要组成部件。、APP和软件有什么区别、安卓APP的主要开发原理以及其主要过程是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)