




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计外文文献原文及译文THEBASICOFDESCRIPTIONOFANDROIDSYSTEM对ANDROID系统的基本描诉学生姓名学号系别专业指导教师2015年5月电子与计算机科学技术系计算机科学与技术THEBASICOFDESCRIPTIONOFANDROIDSYSTEMBYTHEOPENMOBILEALLIANCEOPENHANDSETALLIANCELEDBYGOOGLEDEVELOPEDTHEANDROIDSYSTEMISAWIDELYOPTIMISTICABOUTANOPENSOURCEPHONESYSTEM,THESYSTEMPROVIDESABASICOPERATINGSYSTEM,AMIDDLEWAREAPPLICATIONLAYER,AJAVADEVELOPMENTTOOLSANDASYSTEMAPPLICATIONCOLLECTORCOLLECTIONOFSYSTEMAPPLICATIONSTHEANDROIDTHESDKSINCE2007ONTHERELEASEOFTHEFIRSTANDROIDPHONEINOCTOBER2008BEFORETHEBIRTHGOOGLEOPENEDSINCETHENONHISOWNTIME,TAIWANSHTC,THEMANUFACTUREROFTHETMOBILEG1ESTIMATEG1SHIPMENTSHAVEMORETHANONEMILLIONATTHEENDOF2008ACCORDINGTOINDUSTRYINSIDERSEXPECTTHEG1MOBILEPHONESALESIN2009CONTINUEMANYOTHERMOBILEPHONESUPPLIERSINTHENEARFUTUREPLANSTOSUPPORTTHISSYSTEMAROUNDANANDROIDANDAHUGEDEVELOPERCOMMUNITYHASBEENESTABLISHED,WHILEALOTOFNEWPRODUCTSANDAPPLICATIONSONTHEANDROIDANDROIDSMAINSELLINGPOINTISTHATITENABLESDEVELOPERSTOSEAMLESSLYEXPANDONLINESERVICESTOMOBILEPHONESCALENDARANDCONTACTSWEBAPPLICATIONSTHROUGHTHESYSTEMUSERSONLYNEEDTOPROVIDEANANDROIDUSERNAMEANDPASSWORD,THEPHONEAUTOMATICALLYSYNCWITHGOOGLESERVICESTHEOTHERVENDORSAREQUICKLYADAPTTHEIREXISTINGINSTANTMESSAGING,SOCIALNETWORKINGANDGAMINGSERVICESANDROIDANDMANYCOMPANIESFINDNEWWAYSTOINTEGRATETHEIREXISTINGBUSINESSTOTHEANDROIDTRADITIONALDESKTOPANDSERVEROPERATINGSYSTEMHASBEENWORKINGFORTHEINTEGRATIONOFSECURITYFEATURESTHESEINDIVIDUALSANDBUSINESSAPPLICATIONSONASINGLEPLATFORMISVERYGOOD,HOWEVERABUSINESSPHONEPLATFORMLIKEANDROIDISNOTVERYUSEFULITGIVESTHEHOPEOFMANYRESEARCHERSANDROIDISNOTPARKEDINTHEBODYFOROTHERPLATFORMAPPLICATIONSUPPORTTHEIMPLEMENTATIONOFTHEAPPLICATIONDEPENDSONATOPLEVELJAVAMIDDLEWARE,THEMIDDLEWARERUNNINGONTHEEMBEDDEDLINUXKERNELTHEREFORE,DEVELOPERSSHOULDDEPLOYTHEIRAPPLICATIONSTOTHEANDROIDMUSTUSEACUSTOMUSERINTERFACEENVIRONMENTINADDITION,THEANDROIDSYSTEMAPPLICATIONSLIMITTHEAPPLICATIONTOCALLEACHOTHERAPIALTHOUGHTHESEAPPLICATIONSHAVECERTAINSAFETYFEATURES,SOMEOFOUREXPERIENCEDDEVELOPERSTOCREATEANDROIDAPPLICATIONSWHOREVEALEDTHATTHEDESIGNOFSECURITYAPPLICATIONSISNOTALWAYSSTRAIGHTFORWARDANDROIDUSESASIMPLEPERMISSIONLABELDISTRIBUTIONMODETORESTRICTACCESSTORESOURCES,BUTTHEREASONSFORTHENECESSITYANDCONVENIENCEOFOTHERAPPLICATIONS,THEDESIGNERSHAVEINCREASEDTHECONFUSIONONTHISSYSTEMTHISPAPERATTEMPTSTOEXPLAINTHECOMPLEXITYOFTHEANDROIDSECURITY,ANDPAYATTENTIONTOSOMEOFTHEPOSSIBLEDEVELOPMENTDEFECTSANDAPPLICATIONSECURITYWETRYTODRAWSOMELESSONSLEARNED,ANDHOPETHATTHESAFETYOFTHEFUTUREANDROIDAPPLICATIONFRAMEWORKFORDEVELOPERSISAMANDATORYFRAMEWORKITDOESNOTHAVEAMAINFUNCTIONFUNCTIONORASINGLEENTRYPOINTFORTHEIMPLEMENTATIONOFTHECONTRARY,THEDEVELOPERMUSTINTHEDESIGNOFAPPLICATIONCOMPONENTSWEDEVELOPEDAPPLICATIONSTOHELPTHEAPIOFTHEANDROIDSDKTHEANDROIDSYSTEMDEFINESFOURKINDSOFCOMPONENTTYPEACTIVITYCOMPONENTTHATDEFINESTHEAPPLICATIONUSERINTERFACEUSUALLY,THEAPPLICATIONDEVELOPERDEFINESEACHACTIVITYSCREENACTIVITYCANSTART,ITMAYPASSANDRETURNVALUESCANBEHANDLEDATATIMEONLYAKEYBOARDSYSTEMACTIVITY,ALLOTHERACTIVITYWILLBESUSPENDEDATTHISTIMESERVICECOMPONENTSPERFORMBACKGROUNDPROCESSINGTHENEEDFORSOMEOPERATIONSWHENANACTIVITY,AFTERTHEDISAPPEARANCEOFTHEUSERINTERFACESUCHASDOWNLOADINGAFILEORPLAYINGMUSIC,ITUSUALLYTAKESUCHACTIONSPECIALLYDESIGNEDSERVICESDEVELOPERSCANALSOUSEASPECIALDAEMONATSYSTEMSTARTUP,THESERVICEISUSUALLYDEFINEDAREMOTEPROCEDURECALLRPC,ANDOTHERSYSTEMCOMPONENTSCANBEUSEDTOSENDTHEINTERFACECOMMANDANDRETRIEVEDATA,ASWELLASTOREGISTERACALLBACKFUNCTIONCONTENTPROVIDERCOMPONENTSTORAGEANDSHAREDATAWITHRELATIONALDATABASEINTERFACESEACHCONTENTSUPPLIERHASANASSOCIATED“RIGHTS“TODESCRIBEITSCONTENTSCONTAINSOTHERCOMPONENTSWHENUSEDASAHANDLETOEXECUTESQLQUERIESFOREXAMPLESELECT,INSERT,ORDELETECONTENTCONTENTSUPPLIERSARETYPICALLYSTOREDTHEVALUESONTHEDATABASERECORDS,DATARETRIEVALISASPECIALCASE,THEFILEISALSOSHAREDBYTHECONTENTPROVIDERINTERFACETHECOMPONENTSOFTHEBROADCASTRECEIVERASTOSENDAMESSAGEFROMTHEMAILBOXTOTHEAPPLICATIONTYPICALLY,THEBROADCASTMESSAGE,THEAPPLICATIONCODEIMPLICITDESTINATIONTHEREFORE,THERADIORECEIVERSUBSCRIBETOTHESEDESTINATIONSRECEIVEMESSAGESSENTTOITTHEAPPLICATIONCODECANALSOBESOLVEDEXPLICITLYBROADCASTRECEIVERS,INCLUDINGTHENAMESPACEALLOCATIONTHEMAINMECHANISMOFTHEINTERACTIONOFTHECOMPONENTSOFTHECOMPONENTINTERACTION,ISANINTENT,WHICHISASIMPLEMESSAGEOBJECT,WHICHCONTAINSADESTINATIONADDRESSANDDATACOMPONENTSTHEANDROIDAPIDEFINESHISAPPROACHINTOINTENT,ANDUSETHATINFORMATIONTOINITIATEANACTIVITYSUCHASSTARTANACTIVITYSTARTACTIVITYANINTENTSTARTSERVICESTHESTARTSERVICEANINTENTANDRADIOSENDBROADCASTANINTENTANDROIDFRAMEWORKTOINFORMTHECALLSTOTHESEMETHODSBEGANTOPERFORMINTHETARGETAPPLICATIONCODETHISPROCESS,THEINTERNALCOMPONENTSOFCOMMUNICATIONISCALLEDANACTIONSIMPLYPUT,THEINTENTOBJECTDEFINEDINTHE“INTENTTOIMPLEMENTTHE“ACTION“ONEOFTHEMOSTPOWERFULFEATURESOFTHEANDROIDISALLOWEDAVARIETYOFINTENTADDRESSINGMECHANISMTHEDEVELOPERCANSOLVETHESPACEOFATARGETCOMPONENTUSINGITSAPPLICATIONS,THEYCANALSOSPECIFYANIMPLICITNAMEINTHELATTERCASE,THESYSTEMDETERMINESTHEBESTCOMPONENTSOFANACTIONBYCONSIDERINGTHEINSTALLEDAPPLICATIONSANDUSERCHOICEANDROIDAPPLICATIONSAREWRITTENINTHEJAVAPROGRAMMINGLANGUAGETHECOMPILEDJAVACODEALONGWITHANYDATAANDRESOURCEFILESREQUIREDBYTHEAPPLICATIONISBUNDLEDBYTHEAPTTOOLINTOANANDROIDPACKAGE,ANARCHIVEFILEMARKEDBYANASUFFIXTHISFILEISTHEVEHICLEFORDISTRIBUTINGTHEAPPLICATIONANDINSTALLINGITONMOBILEDEVICESITSTHEFILEUSERSDOWNLOADTOTHEIRDEVICESALLTHECODEINASINGLEAPKFILEISCONSIDEREDTOBEONEAPPLICATIONINMANYWAYS,EACHANDROIDAPPLICATIONLIVESINITSOWNWORLD(1)BYDEFAULT,EVERYAPPLICATIONRUNSINITSOWNLINUXPROCESSANDROIDSTARTSTHEPROCESSWHENANYOFTHEAPPLICATIONSCODENEEDSTOBEEXECUTED,ANDSHUTSDOWNTHEPROCESSWHENITSNOLONGERNEEDEDANDSYSTEMRESOURCESAREREQUIREDBYOTHERAPPLICATIONS(2)EACHPROCESSHASITSOWNVIRTUALMACHINEVM,SOAPPLICATIONCODERUNSINISOLATIONFROMTHECODEOFALLOTHERAPPLICATIONS(3)BYDEFAULT,EACHAPPLICATIONISASSIGNEDAUNIQUELINUXUSERIDPERMISSIONSARESETSOTHATTHEAPPLICATIONSFILESAREVISIBLEONLYTOTHATUSERANDONLYTOTHEAPPLICATIONITSELFTHEREAREWAYSTOEXPORTTHEMTOOTHERAPPLICATIONSASWELLAPPLICATIONCOMPONENTSACENTRALFEATUREOFANDROIDISTHATONEAPPLICATIONCANMAKEUSEOFELEMENTSOFOTHERAPPLICATIONPROVIDEDTHOSEAPPLICATIONPERMITITFOREXAMPLE,IFYOURAPPLICATIONNEEDSTODISPLAYASCROLLINGLISTOFIMAGESANDANOTHERAPPLICATIONHASDEVELOPEDASUITABLEANDMADEITAVAILABLETOOTHERS,YOUCANCALLUPONTHATTODOTHEWORK,RATHERTHANDEVELOPYOUROWNYOURAPPLICATIONDOESNTINCORPORATETHECODEOFTHEOTHERAPPLICATIONORLINKTOITRATHER,ITSIMPLYSTARTSUPTHATPIECEOFTHEOTHERAPPLICATIONWHENTHENEEDARISESFORTHISTOWORK,THESYSTEMMUSTBEABLETOSTARTANAPPLICATIONPROCESSWHENANYPARTOFITISNEEDED,ANDINSTANTIATETHEJAVAOBJECTSFORTHATPARTTHEREFORE,UNLIKEAPPLICATIONSONMOSTOTHERSYSTEMS,ANDROIDAPPLICATIONSDONTHAVEASINGLEENTRYPOINTFOREVERYTHINGINTHEAPPLICATIONNOMAINFUNCTION,FOREXAMPLERATHER,THEYHAVEESSENTIALCOMPONENTSTHATTHESYSTEMCANINSTANTIATEANDRUNASNEEDEDTHEREAREFOURTYPESOFCOMPONENTSACTIVITIESANACTIVITYPRESENTSAVISUALUSERINTERFACEFORONEFOCUSEDENDEAVORTHEUSERCANUNDERTAKEFOREXAMPLE,ANACTIVITYMIGHTPRESENTALISTOFMENUITEMSUSERSCANCHOOSEFROMORITMIGHTDISPLAYPHOTOGRAPHSALONGWITHTHEIRCAPTIONSATEXTMESSAGINGAPPLICATIONMIGHTHAVEONEACTIVITYTHATSHOWSALISTOFCONTACTSTOSENDMESSAGESTO,ASECONDACTIVITYTOWRITETHEMESSAGETOTHECHOSENCONTACT,ANDOTHERACTIVITIESTOREVIEWOLDMESSAGESORCHANGEORCHANGESETTINGSTOUGHTHEYWORKTOGETHERTOFORMACOHESIVEUSERINTERFACE,EACHACTIVITYISINDEPENDENTOFTHEOTHERSEACHONEISIMPLEMENTEDASASUBCLASSOFTHEACTIVITYBASECLASSANAPPLICATIONMIGHTCONSISTOFJUSTONEACTIVITYOR,LIKETHETEXTMESSAGINGAPPLICATIONJUSTMENTIONED,ITMAYCONTAINSEVERALWHATTHEACTIVITIESARE,ANDHOWMANYTHEREAREDEPENDS,OFCOURSE,ONTHEAPPLICATIONANDITSDESIGNTYPICALLY,ONEOFTHEACTIVITIESISMARKEDASTHEFIRSTONETHATSHOULDBEPRESENTEDTOTHEUSERWHENTHEAPPLICATIONISLAUNCHEDMOVINGFROMONEACTIVITYTOANOTHERISACCOMPLISHEDBYHAVINGTHECURRENTACTIVITYSTARTTHENEXTONEEACHACTIVITYISGIVENADEFAULTWINDOWTODRAWINTYPICALLY,THEWINDOWFILLSTHESCREEN,BUTITMIGHTBESMALLERTHANTHESCREENANDFLOATONTOPOFOTHERWINDOWSANACTIVITYCANALSOMAKEUSEOFADDITIONALWINDOWSFOREXAMPLE,APOPUPDIALOGTHATCALLSFORAUSERRESPONSEINTHEMIDSTOFTHEACTIVITY,ORAWINDOWTHATPRESENTSUSERSWITHVITALINFORMATIONWHENTHEYSELECTAPARTICULARITEMONSCREENTHEVISUALCONTENTOFTHEWINDOWISPROVIDEDBYAHIERARCHYOFVIEWSOBJECTSDERIVEDFROMTHEBASEVIEWCLASSEACHVIEWCONTROLSAPARTICULARRECTANGULARSPACEWITHINTHEWINDOWPARENTVIEWSCONTAINANDORGANIZETHELAYOUTOFTHEIRCHILDRENLEAFVIEWSTHOSEATTHEBOTTOMOFTHEHIERARCHYDRAWINTHERECTANGLESTHEYCONTROLANDRESPONDTOUSERACTIONSDIRECTEDATTHATSPACETHUS,VIEWSAREWHERETHEACTIVITYSINTERACTIONWITHTHEUSERTAKESPLACEFOREXAMPLE,AVIEWMIGHTDISPLAYASMALLIMAGEANDINITIATEANACTIONWHENTHEUSERTAPSTHATIMAGEANDROIDHASANUMBEROFREADYMADEVIEWSTHATYOUCANUSEINCLUDINGBUTTONS,TEXTFIELDS,SCROLLBARS,MENUITEMS,CHECKBOXES,ANDMORESERVICESASERVICEDOESNTHAVEAVISUALUSERINTERFACE,BUTRATHERRUNSINTHEBACKGROUNDFORANINDEFINITEPERIODOFTIMEFOREXAMPLE,ASERVICEMIGHTPLAYBACKGROUNDMUSICASTHEUSERATTENDSTOOTHERMATTERS,ORITMIGHTFETCHDATAOVERTHENETWORKORCALCULATESOMETHINGANDPROVIDETHERESULTTOACTIVITIESTHATNEEDITEACHSERVICEEXTENDSTHESERVICEBASECLASSAPRIMEEXAMPLEISAMEDIAPLAYERSONGSFROMAPLAYLISTTHEPLAYERAPPLICATIONWOULDPROBABLYHAVEONEORMOREACTIVITIESTHATALLOWTHEUSERTOCHOOSESONGSANDSTARTPLAYINGTHEMHOWEVER,THEMUSICPLAYBACKITSELFWOULDBOTBEHANDLEDBYANACTIVITYBECAUSEUSERSWILLEXPECTTHEMUSICTOKEEPTHEMUSICGOING,THEMEDIAPLAYERACTIVITYCOULDSTARTASERVICETORUNINTHEBACKGROUNDTHESYSTEMWOULDTHENKEEPTHEMUSICPLAYBACKSERVICERUNNINGEVENAFTERTHEACTIVITYTHATSTARTEDITLEAVESTHESCREENITSPOSSIBLETOCONNECTTOBINDTOANONGOINGSERVICEANDSTARTTHESERVICEIFITSNOTALREADYRUNNINGWHILECONNECTED,YOUCANCOMMUNICATEWITHTHESERVICETHROUGHANINTERFACETHATTHESERVICEEXPOSESFORTHEMUSICSERVICE,THISINTERFACEMIGHTALLOWUSERSTOPAUSE,REWIND,STOP,ANDRESTARTTHEPLAYBACKLIKEACTIVITIESANDTHEOTHERCOMPONENTS,SERVICESRUNINTHEMAINTHREADOFTHEAPPLICATIONPROCESSSOTHATTHEYWONTBLOCKOTHERCOMPONENTSORTHEUSERINTERFACE,THEYOFTENSPAWNANOTHERTHREADFORTIMECONSUMINGTASKSLIKEMUSICPLAYBACKSEEPROCESSESANDTHREAD,LATERBROADCASTRECEIVERSABROADCASTRECEIVERISACOMPONENTTHATDOESNOTHINGBUTRECEIVEANDREACTTOBROADCASTANNOUNCEMENTSMANYBROADCASTSORIGINATEINSYSTEMCODEFOREXAMPLE,ANNOUNCEMENTSTHATTHETIMEZONEHASCHANGED,THATTHEBATTERYISLOW,THATAPICTUREHASBEENTAKEN,ORTHATTHEUSERCHANGEDALANGUAGEPREFERENCEAPPLICATIONSCANALSOINITIATEBROADCASTSFOREXAMPLE,TOLETOTHERAPPLICATIONSKNOWTHATSOMEDATAHASBEENDOWNLOADEDTOTHEDEVICEANDISAVAILABLEFORTHEMTOUSEANAPPLICATIONCANHAVEANYNUMBEROFBROADCASTRECEIVERSTORESPONDTORESPONDTORESPONDTOANYANNOUNCEMENTSITCONSIDERSIMPORTANTALLRECEIVERSEXTENDTHEBROADCASTRECEIVERBASECLASSBROADCASTRECEIVERSDONOTDISPLAYAUSERINTERFACEHOWEVER,THEYMAYSTARTANACTIVITYINRESPONSETOTHEINFORMATIONTHEYRECEIVE,ORTHEYMAYUSETHENOTIFICATIONMANAGERTOALERTTHEUSERNOTIFICATIONSCANGETTHEUSERSATTENTIONINVARIOUSWAYSFLASHINGTHEBACKLIGHT,VIBRATINGTHEDEVICE,PLAYINGASOUND,ANDSOON,THEYTYPICALLYPLACEAPERSISTENTICONINTHESTATUSBAR,WHICHUSERSCANOPENTOGETTHEMESSAGECONTENTPROVIDERSACONTENTPROVIDERMAKESASPECIFICSETOFTHEAPPLICATIONSDATAAVAILABLETOOTHERAPPLICATIONSTHEDATACANBESTOREDINTHEFILESYSTEM,INANDATABASE,ORINANYOTHERMANNERTHATMAKESSENSETHECONTENTPROVIDEREXTENDSTHECONTENTPROVIDERBASECLASSTOIMPLEMENTASTANDARDSETOFMETHODSTHATENABLEOTHERAPPLICATIONSTORETRIEVEANDSTOREDATAOFTHETYPEITCONTROLSHOWEVER,APPLICATIONSDONOTCALLTHESEMETHODSDIRECTLYRATHERTHEYUSEACONTENTRESOLVEROBJECTANDCALLITSMETHODSINSTEADACONTENTRESOLVERCANTALKTOANYCONTENTPROVIDERITCOOPERATESWITHTHEPROVIDERTOMANAGEANYINTERPROCESSCOMMUNICATIONTHATSINVOLVEDSEETHESEPARATECONTENTPROVIDERSDOCUMENTFORMOREINFORMATIONONUSINGCONTENTPROVIDERSWHENEVERTHERESAREQUESTTHATSHOULDBEHANDLEDBYAPARTICULARCOMPONENT,ANDROIDMAKESSURETHATTHEAPPLICATIONPROCESSOFTHECOMPONENTISRUNNING,STARTINGITIFNECESSARY,ANDTHATANAPPROPRIATEINSTANCEOFTHECOMPONENTISAVAILABLE,CREATINGTHEINSTANCEIFNECESSARYTHEBASICOFDESCRIPTIONOFANDROIDSYSTEM对ANDROID系统的基本描诉由开放手机联盟(OPENHANDSETALLIANCELED通过谷歌)开发的安卓系统是一个开源的手机系统被广泛看好,该系统提供了一个基本的操作系统,中间件的应用层,一个JAVA开发工具和应用系统集热器(系统应用收集)。ANDROIDSDK自2007诞生前2008十月第一款ANDROID手机的发布。谷歌打开之后,在他自己的时间,台湾的HTC的TMOBILEG1,G1的制造商出货量估计有超过一百万在2008年底。据业内人士预计,G1手机销售2009继续增加。其他许多手机供应商在不久的将来也支持这个系统。在ANDROID和庞大的开发者社区已经建立,而在ANDROID的很多新的产品和应用。ANDROID的主要卖点是,它使开发人员能够无缝地扩展在线服务的手机。用户只需要提供一个ANDROID用户名称和密码,手机自动同步与谷歌服务。其他厂商正在迅速适应现有的即时通讯,社交网络和游戏服务。ANDROID和许多公司找到新的方法来整合现有的业务到ANDROID。传统的台式机和服务器的操作系统一直是安全功能的集成工作。这些个人和商业应用在一个平台上是非常好的,但是一个商务手机平台ANDROID不是很有用。它给了许多研究者的希望。ANDROID不停在身体其他平台的应用支持应用程序的实现取决于顶层的JAVA中间件,中间件在嵌入式LINUX内核运行。因此,开发商应部署他们的应用程序到ANDROID必须使用自定义的用户界面环境。此外,ANDROID系统的应用限制互相调用API的应用。虽然这些应用有一定的安全功能,我们的一些有经验的开发人员创建ANDROID应用程序的人士透露,安全应用程序的设计并不总是直线前进。ANDROID使用一个简单的许可标签分配模式限制访问的资源,但原因和其他应用程序方便的必要性,设计师们对这个体系的混乱增加。本文试图解释ANDROID安全的复杂性,并注意一些可能的发展缺陷和应用安全。我们试图得出一些经验教训,希望未来的安全。开发ANDROID应用程序框架是一个强制性的框架。它没有一个主要()函数或一个单一入口点相反的实现,开发人员必须在应用程序组件的设计。我们为了帮助ANDROIDSDK的ANDROID系统定义了四种组件类型的API的应用。ACTIVITY组件定义应用程序的用户界面。通常,应用程序开发者定义每一个活动“画面。”ACTIVITY可以自己开始,也可能通过传递和返回值。在一时间只有一个键盘的系统ACTIVITY可以进行处理,在这个时候所有其他的ACTIVITY都会被暂停SERVICE组件执行后台处理。当一个活动需要进行一些操作,在用户界面消失以后(如下载一个文件或播放音乐),它通常采取此种动作特殊设计的服务。开发人员还可以在系统启动使用特殊的守护进程,SERVICE通常定义一个远程过程调用(RPC),其他系统组件可以用来传送接口命令和检索数据,以及注册一个回调函数。CONTENTPROVIDER组件存储和共享数据用关系数据库接口。每个CONTENT供应者都有一个关联的“权限”来形容它的内容包含。其他组件使用时作为一个HANDLE执行SQL查询(如SELECT,INSERT或DELETE内容。虽然CONTENT供应者通常存储把数值放在数据库记录中,数据检索是实现特殊的例子,文件也同时通过内容提供商共享接口。BROADCASTRECEIVER该组件作为为从邮件信箱发送信息给他应用程序。通常,广播消息的应用程序代码隐含的目的地。因此,广播接收器订阅这些目的地接收发送给它的消息。应用程序代码也可以解决明确广播接收机包括命名空间分配COMPONENTINTERACTION该组件交互的主要机制是一个INTENT,这是一个简单的消息对象,其中包含一个目的地组件的地址和数据。ANDROID的API定义了他的方法中传入INTENT,并使用该信息来启动一个ACTIVITY例如开始一个ACTIVITYSTARTACTIVITYINTENT,启动服务(STARTSERVICE(INTENT)和广播信息(SENDBROADCAST(INTENT)。ANDROID框架来通知这些方法的调用开始执行在目标应用程序代码。这个过程中内部组件通信称为一个动作。简单地说,INTENT对象定义的“INTENT”以执行“ACTION”。ANDROID的一个最强大的特点是允许的多种INTENT寻址机制。开发人员可以解决一个目标组件使用其应用的空间,他们也可以指定一个隐含的名称。在后一种情况下,系统决定了一个ACTION的最佳组件,通过考虑安装的应用程序和用户的选择。这个隐含的名字被称为动作字符串因为他特殊的类型的请求动作。例如一个VIEW动作字符串,在一个INTENT中和数据域指向一个图像文件,系统将会直接指首选图像浏览器。ANDROID应用程序使用JAVA编程语言开发。APT工具吧编译后的JAVA代码连同应用程序所需的其他数据和资源文件一起打包到一个ANDROID包文件中,这个文件使用APK作为扩展名。此文件是分发并安装应用程序到移动设备的载体;是用户下载到他们的设备的文件。单一APK文件中的所有代码被认为是一个应用程序。从多个角度来看,每个ANDROID应用程序都存在于它自己的世界之中1默认情况下,每个应用程序均运行于它自己的LINUX进程中。当应用程序中的任何代码需要被执行时,ANDROID启动此进程,而当不再需要此进程并且其它应用程序又请求系统资源时,则关闭这个进程。2每个进程都有其独有的虚拟机VM,所以应用程序代码与其它应用程序代码是隔离运行的。3默认情况下,每个应用程序均被赋予一个唯一的LINUX用户ID,并加以权限设置,使得应用程序的文件仅对此用户及此应用程序可见尽管也有其它的方法使得这些文件同样能为其他应用程序访问。应用程序组件ANDROID的一个核心特性就是一个应用程序可以使用其它应用程序的元素(如果那个应用程序允许的话)。例如,如果你的应用程序需要显示一个图片卷动列表,而另一个应用程序已经开发了一个合用的而又允许别的应用程序使用的话,你可以直接调用那个卷动列表来完成工作,而不用自己再开发一个。你的应用程序并没有吸纳或链接其它应用程序的代码。它只是在有需求的时候启动了其它应用程序的那个功能部分。为达到这个目的,系统必须能够在一个应用程序的任何一部分被需要时启动一个此应用程序的进程,并将那个部分的JAVA对象实例化。因此,不像其它大多数系统上的应用程序,ANDROID应用程序并没有为应用程序提供一个单独的入口点(比如说,没有MAIN函数),而是为系统提供了可以实例化和运行所需要的必备组件。一共四种组件类型ACTIVITYACTIVITY是为用户操作而展示的可视化用户界面。例如,一个ACTIVITY可以展示一个菜单项列表供用户选择,接着显示一些包含说明文字的照片。一个短消息应用程序可以包括一个用于显示要发送消息到的联系人列表的ACTIVITY,一个给选定的联系人写短信的ACTIVITY以及翻阅以前的短信或改变设置的其他ACTIVITY。尽管它们一起组成了一个内聚的用户界面,但其中每个ACTIVITY都不与其它的保持独立。每一个都实现为以ACTIVITY类为基类的子类。一个应用程序可以只有一个ACTIVITY,或者,如刚才提到的短信应用程序那样,包含很多个。每个ACTIVITY的作用,以及有多少个ACTIVITY,当然是取决于应用程序及其设计的。一般情况下,总有一个应用程序被标记为用户在应用程序启动的时候第一个看到的。从一个ACTIVITY转向另一个ACTIVITY靠的是用当前的ACTIVITY启动下一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新疆神火煤电有限公司电解铝大修渣无害化处理综合利用项目环评报告
- 工业废水处理与排放标准
- 工业智能化技术发展趋势
- 工业机器人技术与自动化的结合
- 工业机器人设计与应用研究
- 工业机器人技术的研究与开发
- 工业机器人及其在生产自动化中的运用
- 工业机器人技术发展及产业应用
- 工业机器人的安全保障及事故预防策略
- 工业物联网产品的设计思路与实践
- 2025年上半年民航医学中心(民航总医院)招聘应届毕业生64人重点基础提升(共500题)附带答案详解-1
- 2025年上半年山东济宁市任城区事业单位招聘工作人员(卫生类)161人易考易错模拟试题(共500题)试卷后附参考答案
- 股骨头坏死中医护理常规
- 水稳施工技术课件
- 父母育儿压力量表(PSI)
- 河北省部分校2024-2025学年九年级下学期开学测试历史试题(含答案)
- 智能机器人技术研发战略合作协议
- 233KWh 定制户外一体柜储能系统项目技术方案
- 2024-2030年中国电船行业前景展望及投资战略分析报告
- 2025版国家开放大学法学本科《知识产权法》期末纸质考试第三大题名词解释题库
- 保安反恐防暴培训
评论
0/150
提交评论