《Android技术论文翻译指南.docx》由会员分享,可在线阅读,更多相关《Android技术论文翻译指南.docx(21页珍藏版)》请在第一文库网上搜索。
1、App1icationFundamenta1sAndroidapp1icationsarewrittenintheJavaprogramming1anguage.Thecompi1edJavacodea1ongwithanydataandresourcefi1esrequiredbytheapp1icationisbund1edbytheaapttoo1intoanAndroidpackage,anarchivefi1emarkedbyan.apksuffix.Thisfi1eisthevehic1efordistributingtheapp1icationandinsta11ingitonm
2、obi1edevices;itsthefi1eusersdown1oadtotheirdevices.A11thecodeinasing1e.apkfi1eisconsideredtobeoneapp1ication.Android应用基础:Android应用程序是通过java语言开发的,通过绑定某些应用所需要的东西,例如:编译的JaVa代码,加上数据和某些资源文献,使用一种aptH工具将所有H东西封装成一种android包,这个文献的J文献后缀是.apk。这个文献是分发并安装应用程序到移动设备B载体,是顾客获得该应用程序所需要B下载B文献。App1icationComponentsAcent
3、ra1featureofAndroidisthatoneapp1icationcanmakeuseofe1ementsofotherapp1ications(providedthoseapp1icationspermitit).Forexamp1e,ifyourapp1icationneedstodisp1ayascro11ing1istofimagesandanotherapp1icationhasdeve1opedasuitab1escro11erandmadeitavai1ab1etoothers,youcanca11uponthatscro11ertodothework,rathert
4、handeve1opyourown.Yourapp1icationdoesn,tincorporatethecodeoftheotherapp1icationor1inktoit.Rather,itsimp1ystartsupthatpieceoftheotherapp1icationwhentheneedarises.Forthistowork,thesystemmustbeab1etostartanapp1icationprocesswhenanypartofitisneeded,andinstantiatetheJavaobjectsforthatpart.Therefore,un1ik
5、eapp1icationsonmostothersystems,Androidapp1icationsdonthaveasing1eentrypointforeverythingintheapp1ication(nomain()function,forexamp1e).Rather,theyhaveessentia1componentsthatthesystemcaninstantiateandrunasneeded.Therearefourtypesofcomponents:ActivitiesAnactivitypresentsavisua1userinterfaceforonefocus
6、edendeavortheusercanundertake.Forexamp1e,anactivitymightpresenta1istofmenuitemsuserscanchoosefromoritmightdisp1ayphotographsa1ongwiththeircaptions.Atextmessagingapp1icationmighthaveoneactivitythatshowsa1istofcontactstosendmessagesto,asecondactivitytowritethemessagetothechosencontact,andotheractiviti
7、estoreviewo1dmessagesorchangesettings.Thoughtheyworktogethertoformacohesiveuserinterface,eachactivityisindependentoftheothers.Eachoneisimp1ementedasasubc1assoftheActivitybasec1ass.Anapp1icationmightconsistofjustoneactivityor,1ikethetextmessagingapp1icationjustmentioned,itmaycontainsevera1.Whattheact
8、ivitiesare,andhowmanytherearedepends,ofcourse,ontheapp1icationanditsdesign.Typica11y,oneoftheactivitiesismarkedasthefirstonethatshou1dbepresentedtotheuserwhentheapp1icationis1aunched.Movingfromoneactivitytoanotherisaccomp1ishedbyhavingthecurrentactivitystartthenextone.Android有四大应用程序组件AndroidB一种很重要B中
9、心特性就是一种应用程序能充足运用其他B应用程序的某些组件(前提是被容许日勺)例如:假如0目前开发的应用需要一种滚动0列表去展示相片并且当时其他的程序已经开发了一种合适的滚动列表并且对其他人可用,你可以调用这个滚动的列表来完毕你的工作而不是开发你自己的。你的应用不需要包括那个应用的代码或来链接它。相反,它只是简朴时在你需要它是启动这部分B应用为了实现这部分B功能,目前系统必须能启动其他应用程序进程的功能当那些部分它需要时,并且为这部分的java对象初始化这个java对象。因此,不想在其他系统中的应用程序,android应用程序不需要一种单一的入口点(例如:没有main()而是,提供了实例化和运行
10、所需H必备组件。Android有四大应用程序组件1:activity一种Activity基类是为展示可视化顾客接口。例如:一种Activity可以显示一种供顾客选择的菜单列表,或者可以展示某些图片以及对应的阐明。一种短信时应用有一种活动显示发送消息的一系列的联络人,第二个活动去编写信息文本去选择联络人,第三个活动去查看此前的信息或修改某些设置。虽然它们构成了一种内聚B顾客界面,每一种活动都和其他BB互相独立,每一种都继承Activity,是ActivityB子类。一种应用程序可以只有一种Activity,不过也可以有多种,例如刚刚提到的文本应用。每个程序B作用,有多少个程序,取决于该应用的设计
11、。ServicesAservicedoesnthaveavisua1userinterface,butratherrunsinthebackgroundforanindefiniteperiodoftime.Forexamp1e,aservicemightp1aybackgroundmusicastheuserattendstoothermatters,oritmightfetchdataoverthenetworkorca1cu1atesomethingandprovidetheresu1ttoactivitiesthatneedit.EachserviceextendstheService
12、basec1ass.2:services服务是android中一种在后台运行B应用程序,没有可视化B顾客界面。例如:你可以在使用一种顾客程序的同步播放背景音乐。并且此时,播放音乐的代码就不需要和顾客交互,因此可以作为一种服务来运行,并且使用顾客服务的接口来实现音乐B播放,暂停,等功能。对于不用向顾客展示顾客界面0状况下,使用服务是一种理想B选择。如同其他B组件同样,services运行于应用程序进程B主线程内。因此它不会对其他组件或顾客界面有任何的阻碍,他们一般会派生一种新线程来执行某些时间消耗型的任务。BroadcastreceiversAbroadcastreceiverisacompon
13、entthatdoesnothingbutreceiveandreacttobroadcastannouncements.Manybroadcastsoriginateinsystemcode-forexamp1e,announcementsthatthetimezonehaschanged,thatthebatteryis1ow,thatapicturehasbeentaken,orthattheuserchangeda1anguagepreference.App1icationscana1soinitiatebroadcasts一forexamp1e,to1etotherapp1icati
14、onsknowthatsomedatahasbeendown1oadedtothedeviceandisavai1ab1eforthemtouse.Anapp1icationcanhaveanynumberofbroadcastreceiverstorespondtoanyannouncementsitconsidersimportant.A11receiversextendtheBroadcastReceiverbasec1ass.Broadcastreceiversdonotdisp1ayauserinterface.However,theymaystartanactivityinresp
15、onsetotheinformationtheyreceive,ortheymayusetheNotificationManagertoa1erttheuser.Notificationscangettheusersattentioninvariousways-f1ashingtheback1ight,vibratingthedevice,p1ayingasound,andsoon.Theytypica11yp1aceapersistenticoninthestatusbar,whichuserscanopentogetthe3:Broadcastreceiverbroadcastreceiv
16、er是一种与注于接受广播告知信息并做出对应处理0组件。许多广播是由系统代码产生的一一例如告知时区变化、电池电量低、拍摄了一张照片或者顾客变化了语言选项。应用程序也可以发起广播一一例如告知其他应用程序某些数据已经下载到设备上并处在可用状态。一种应用程序可以拥有任意数量Hbroadcastreceiver以对所有它认为重要0告知信息予以响应。所有Breceiver均继承自BroadcastReceiver基类。broadcastreceiver没有顾客界面。然而它们可以启动一种activity来响应它们收到的信息或者也可以使用NOtifiCationManager来告知顾客。告知可以用多种方式来吸引顾客B注意力闪动背光灯、震动设备、播放声音等等。告知一般是在状态栏上放一种持续B图标顾客可以打开它并获取消息。ContentprovidersAcontentprovidermakesaspecificsetoft