已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计外文文献原文及译文学生姓名学号系别专业指导教师2015年5月计算机系网络工程ANDROIDAPPLICATIONFUNDAMENTALSANDROIDAPPLICATIONSAREWRITTENINTHEJAVAPROGRAMMINGLANGUAGETHEANDROIDSDKTOOLSCOMPILETHECODEALONGWITHANYDATAANDRESOURCEFILESINTOANANDROIDPACKAGE,ANARCHIVEFILEWITHANAPKSUFFIXALLTHECODEINASINGLEAPKFILEISCONSIDEREDTOBEONEAPPLICATIONANDISTHEFILETHATANDROIDPOWEREDDEVICESUSETOINSTALLTHEAPPLICATIONONCEINSTALLEDONADEVICE,EACHANDROIDAPPLICATIONLIVESINITSOWNSECURITYSANDBOXTHEANDROIDOPERATINGSYSTEMISAMULTIUSERLINUXSYSTEMINWHICHEACHAPPLICATIONISADIFFERENTUSERBYDEFAULT,THESYSTEMASSIGNSEACHAPPLICATIONAUNIQUELINUXUSERIDTHEIDISUSEDONLYBYTHESYSTEMANDISUNKNOWNTOTHEAPPLICATIONTHESYSTEMSETSPERMISSIONSFORALLTHEFILESINANAPPLICATIONSOTHATONLYTHEUSERIDASSIGNEDTOTHATAPPLICATIONCANACCESSTHEMEACHPROCESSHASITSOWNVIRTUALMACHINEVM,SOANAPPLICATIONSCODERUNSINISOLATIONFROMOTHERAPPLICATIONSBYDEFAULT,EVERYAPPLICATIONRUNSINITSOWNLINUXPROCESSANDROIDSTARTSTHEPROCESSWHENANYOFTHEAPPLICATIONSCOMPONENTSNEEDTOBEEXECUTED,THENSHUTSDOWNTHEPROCESSWHENITSNOLONGERNEEDEDORWHENTHESYSTEMMUSTRECOVERMEMORYFOROTHERAPPLICATIONSINTHISWAY,THEANDROIDSYSTEMIMPLEMENTSTHEPRINCIPLEOFLEASTPRIVILEGETHATIS,EACHAPPLICATION,BYDEFAULT,HASACCESSONLYTOTHECOMPONENTSTHATITREQUIRESTODOITSWORKANDNOMORETHISCREATESAVERYSECUREENVIRONMENTINWHICHANAPPLICATIONCANNOTACCESSPARTSOFTHESYSTEMFORWHICHITISNOTGIVENPERMISSIONHOWEVER,THEREAREWAYSFORANAPPLICATIONTOSHAREDATAWITHOTHERAPPLICATIONSANDFORANAPPLICATIONTOACCESSSYSTEMSERVICESITSPOSSIBLETOARRANGEFORTWOAPPLICATIONSTOSHARETHESAMELINUXUSERID,INWHICHCASETHEYAREABLETOACCESSEACHOTHERSFILESTOCONSERVESYSTEMRESOURCES,APPLICATIONSWITHTHESAMEUSERIDCANALSOARRANGETORUNINTHESAMELINUXPROCESSANDSHARETHESAMEVMTHEAPPLICATIONSMUSTALSOBESIGNEDWITHTHESAMECERTIFICATEANAPPLICATIONCANREQUESTPERMISSIONTOACCESSDEVICEDATASUCHASTHEUSERSCONTACTS,SMSMESSAGES,THEMOUNTABLESTORAGESDCARD,CAMERA,BLUETOOTH,ANDMOREALLAPPLICATIONPERMISSIONSMUSTBEGRANTEDBYTHEUSERATINSTALLTIMETHATCOVERSTHEBASICSREGARDINGHOWANANDROIDAPPLICATIONEXISTSWITHINTHESYSTEMTHERESTOFTHISDOCUMENTINTRODUCESYOUTOTHECOREFRAMEWORKCOMPONENTSTHATDEFINEYOURAPPLICATIONTHEMANIFESTFILEINWHICHYOUDECLARECOMPONENTSANDREQUIREDDEVICEFEATURESFORYOURAPPLICATIONRESOURCESTHATARESEPARATEFROMTHEAPPLICATIONCODEANDALLOWYOURAPPLICATIONTOGRACEFULLYOPTIMIZEITSBEHAVIORFORAVARIETYOFDEVICECONFIGURATIONSAPPLICATIONCOMPONENTSAPPLICATIONCOMPONENTSARETHEESSENTIALBUILDINGBLOCKSOFANANDROIDAPPLICATIONEACHCOMPONENTISADIFFERENTPOINTTHROUGHWHICHTHESYSTEMCANENTERYOURAPPLICATIONNOTALLCOMPONENTSAREACTUALENTRYPOINTSFORTHEUSERANDSOMEDEPENDONEACHOTHER,BUTEACHONEEXISTSASITSOWNENTITYANDPLAYSASPECIFICROLEEACHONEISAUNIQUEBUILDINGBLOCKTHATHELPSDEFINEYOURAPPLICATIONSOVERALLBEHAVIORTHEREAREFOURDIFFERENTTYPESOFAPPLICATIONCOMPONENTSEACHTYPESERVESADISTINCTPURPOSEANDHASADISTINCTLIFECYCLETHATDEFINESHOWTHECOMPONENTISCREATEDANDDESTROYEDHEREARETHEFOURTYPESOFAPPLICATIONCOMPONENTSACTIVITIESANACTIVITYREPRESENTSASINGLESCREENWITHAUSERINTERFACEFOREXAMPLE,ANEMAILAPPLICATIONMIGHTHAVEONEACTIVITYTHATSHOWSALISTOFNEWEMAILS,ANOTHERACTIVITYTOCOMPOSEANEMAIL,ANDANOTHERACTIVITYFORREADINGEMAILSALTHOUGHTHEACTIVITIESWORKTOGETHERTOFORMACOHESIVEUSEREXPERIENCEINTHEEMAILAPPLICATION,EACHONEISINDEPENDENTOFTHEOTHERSASSUCH,ADIFFERENTAPPLICATIONCANSTARTANYONEOFTHESEACTIVITIESIFTHEEMAILAPPLICATIONALLOWSITFOREXAMPLE,ACAMERAAPPLICATIONCANSTARTTHEACTIVITYINTHEEMAILAPPLICATIONTHATCOMPOSESNEWMAIL,INORDERFORTHEUSERTOSHAREAPICTUREANACTIVITYISIMPLEMENTEDASASUBCLASSOFACTIVITYANDYOUCANLEARNMOREABOUTITINTHEACTIVITIESDEVELOPERGUIDESERVICESASERVICEISACOMPONENTTHATRUNSINTHEBACKGROUNDTOPERFORMLONGRUNNINGOPERATIONSORTOPERFORMWORKFORREMOTEPROCESSESASERVICEDOESNOTPROVIDEAUSERINTERFACEFOREXAMPLE,ASERVICEMIGHTPLAYMUSICINTHEBACKGROUNDWHILETHEUSERISINADIFFERENTAPPLICATION,ORITMIGHTFETCHDATAOVERTHENETWORKWITHOUTBLOCKINGUSERINTERACTIONWITHANACTIVITYANOTHERCOMPONENT,SUCHASANACTIVITY,CANSTARTTHESERVICEANDLETITRUNORBINDTOITINORDERTOINTERACTWITHITASERVICEISIMPLEMENTEDASASUBCLASSOFSERVICEANDYOUCANLEARNMOREABOUTITINTHESERVICESDEVELOPERGUIDECONTENTPROVIDERSACONTENTPROVIDERMANAGESASHAREDSETOFAPPLICATIONDATAYOUCANSTORETHEDATAINTHEFILESYSTEM,ANSQLITEDATABASE,ONTHEWEB,ORANYOTHERPERSISTENTSTORAGELOCATIONYOURAPPLICATIONCANACCESSTHROUGHTHECONTENTPROVIDER,OTHERAPPLICATIONSCANQUERYOREVENMODIFYTHEDATAIFTHECONTENTPROVIDERALLOWSITFOREXAMPLE,THEANDROIDSYSTEMPROVIDESACONTENTPROVIDERTHATMANAGESTHEUSERSCONTACTINFORMATIONASSUCH,ANYAPPLICATIONWITHTHEPROPERPERMISSIONSCANQUERYPARTOFTHECONTENTPROVIDERSUCHASCONTACTSCONTRACTDATATOREADANDWRITEINFORMATIONABOUTAPARTICULARPERSONCONTENTPROVIDERSAREALSOUSEFULFORREADINGANDWRITINGDATATHATISPRIVATETOYOURAPPLICATIONANDNOTSHAREDFOREXAMPLE,THENOTEPADSAMPLEAPPLICATIONUSESACONTENTPROVIDERTOSAVENOTESACONTENTPROVIDERISIMPLEMENTEDASASUBCLASSOFCONTENTPROVIDERANDMUSTIMPLEMENTASTANDARDSETOFAPISTHATENABLEOTHERAPPLICATIONSTOPERFORMTRANSACTIONSFORMOREINFORMATION,SEETHECONTENTPROVIDERSDEVELOPERGUIDEBROADCASTRECEIVERSABROADCASTRECEIVERISACOMPONENTTHATRESPONDSTOSYSTEMWIDEBROADCASTANNOUNCEMENTSMANYBROADCASTSORIGINATEFROMTHESYSTEMFOREXAMPLE,ABROADCASTANNOUNCINGTHATTHESCREENHASTURNEDOFF,THEBATTERYISLOW,ORAPICTUREWASCAPTUREDAPPLICATIONSCANALSOINITIATEBROADCASTSFOREXAMPLE,TOLETOTHERAPPLICATIONSKNOWTHATSOMEDATAHASBEENDOWNLOADEDTOTHEDEVICEANDISAVAILABLEFORTHEMTOUSEALTHOUGHBROADCASTRECEIVERSDONTDISPLAYAUSERINTERFACE,THEYMAYCREATEASTATUSBARNOTIFICATIONTOALERTTHEUSERWHENABROADCASTEVENTOCCURSMORECOMMONLY,THOUGH,ABROADCASTRECEIVERISJUSTA“GATEWAY“TOOTHERCOMPONENTSANDISINTENDEDTODOAVERYMINIMALAMOUNTOFWORKFORINSTANCE,ITMIGHTINITIATEASERVICETOPERFORMSOMEWORKBASEDONTHEEVENTABROADCASTRECEIVERISIMPLEMENTEDASASUBCLASSOFBROADCASTRECEIVERANDEACHBROADCASTISDELIVEREDASANINTENTOBJECTFORMOREINFORMATION,SEETHEBROADCASTRECEIVERCLASSAUNIQUEASPECTOFTHEANDROIDSYSTEMDESIGNISTHATANYAPPLICATIONCANSTARTANOTHERAPPLICATIONSCOMPONENTFOREXAMPLE,IFYOUWANTTHEUSERTOCAPTUREAPHOTOWITHTHEDEVICECAMERA,THERESPROBABLYANOTHERAPPLICATIONTHATDOESTHATANDYOURAPPLICATIONCANUSEIT,INSTEADOFDEVELOPINGANACTIVITYTOCAPTUREAPHOTOYOURSELFYOUDONTNEEDTOINCORPORATEOREVENLINKTOTHECODEFROMTHECAMERAAPPLICATIONINSTEAD,YOUCANSIMPLYSTARTTHEACTIVITYINTHECAMERAAPPLICATIONTHATCAPTURESAPHOTOWHENCOMPLETE,THEPHOTOISEVENRETURNEDTOYOURAPPLICATIONSOYOUCANUSEITTOTHEUSER,ITSEEMSASIFTHECAMERAISACTUALLYAPARTOFYOURAPPLICATIONWHENTHESYSTEMSTARTSACOMPONENT,ITSTARTSTHEPROCESSFORTHATAPPLICATIONIFITSNOTALREADYRUNNINGANDINSTANTIATESTHECLASSESNEEDEDFORTHECOMPONENTFOREXAMPLE,IFYOURAPPLICATIONSTARTSTHEACTIVITYINTHECAMERAAPPLICATIONTHATCAPTURESAPHOTO,THATACTIVITYRUNSINTHEPROCESSTHATBELONGSTOTHECAMERAAPPLICATION,NOTINYOURAPPLICATIONSPROCESSTHEREFORE,UNLIKEAPPLICATIONSONMOSTOTHERSYSTEMS,ANDROIDAPPLICATIONSDONTHAVEASINGLEENTRYPOINTTHERESNOMAINFUNCTION,FOREXAMPLEBECAUSETHESYSTEMRUNSEACHAPPLICATIONINASEPARATEPROCESSWITHFILEPERMISSIONSTHATRESTRICTACCESSTOOTHERAPPLICATIONS,YOURAPPLICATIONCANNOTDIRECTLYACTIVATEACOMPONENTFROMANOTHERAPPLICATIONTHEANDROIDSYSTEM,HOWEVER,CANSO,TOACTIVATEACOMPONENTINANOTHERAPPLICATION,YOUMUSTDELIVERAMESSAGETOTHESYSTEMTHATSPECIFIESYOURINTENTTOSTARTAPARTICULARCOMPONENTTHESYSTEMTHENACTIVATESTHECOMPONENTFORYOUACTIVATINGCOMPONENTSTHREEOFTHEFOURCOMPONENTTYPESACTIVITIES,SERVICES,ANDBROADCASTRECEIVERSAREACTIVATEDBYANASYNCHRONOUSMESSAGECALLEDANINTENTINTENTSBINDINDIVIDUALCOMPONENTSTOEACHOTHERATRUNTIMEYOUCANTHINKOFTHEMASTHEMESSENGERSTHATREQUESTANACTIONFROMOTHERCOMPONENTS,WHETHERTHECOMPONENTBELONGSTOYOURAPPLICATIONORANOTHERANINTENTISCREATEDWITHANINTENTOBJECT,WHICHDEFINESAMESSAGETOACTIVATEEITHERASPECIFICCOMPONENTORASPECIFICTYPEOFCOMPONENTANINTENTCANBEEITHEREXPLICITORIMPLICIT,RESPECTIVELYFORACTIVITIESANDSERVICES,ANINTENTDEFINESTHEACTIONTOPERFORMFOREXAMPLE,TO“VIEW“OR“SEND“SOMETHINGANDMAYSPECIFYTHEURIOFTHEDATATOACTONAMONGOTHERTHINGSTHATTHECOMPONENTBEINGSTARTEDMIGHTNEEDTOKNOWFOREXAMPLE,ANINTENTMIGHTCONVEYAREQUESTFORANACTIVITYTOSHOWANIMAGEORTOOPENAWEBPAGEINSOMECASES,YOUCANSTARTANACTIVITYTORECEIVEARESULT,INWHICHCASE,THEACTIVITYALSORETURNSTHERESULTINANINTENTFOREXAMPLE,YOUCANISSUEANINTENTTOLETTHEUSERPICKAPERSONALCONTACTANDHAVEITRETURNEDTOYOUTHERETURNINTENTINCLUDESAURIPOINTINGTOTHECHOSENCONTACTFORBROADCASTRECEIVERS,THEINTENTSIMPLYDEFINESTHEANNOUNCEMENTBEINGBROADCASTFOREXAMPLE,ABROADCASTTOINDICATETHEDEVICEBATTERYISLOWINCLUDESONLYAKNOWNACTIONSTRINGTHATINDICATES“BATTERYISLOW“THEOTHERCOMPONENTTYPE,CONTENTPROVIDER,ISNOTACTIVATEDBYINTENTSRATHER,ITISACTIVATEDWHENTARGETEDBYAREQUESTFROMACONTENTRESOLVERTHECONTENTRESOLVERHANDLESALLDIRECTTRANSACTIONSWITHTHECONTENTPROVIDERSOTHATTHECOMPONENTTHATSPERFORMINGTRANSACTIONSWITHTHEPROVIDERDOESNTNEEDTOANDINSTEADCALLSMETHODSONTHECONTENTRESOLVEROBJECTTHISLEAVESALAYEROFABSTRACTIONBETWEENTHECONTENTPROVIDERANDTHECOMPONENTREQUESTINGINFORMATIONFORSECURITYTHEREARESEPARATEMETHODSFORACTIVATINGEACHTYPEOFCOMPONENTYOUCANSTARTANACTIVITYORGIVEITSOMETHINGNEWTODOBYPASSINGANINTENTTOSTARTACTIVITYORSTARTACTIVITYFORRESULTWHENYOUWANTTHEACTIVITYTORETURNARESULTYOUCANSTARTASERVICEORGIVENEWINSTRUCTIONSTOANONGOINGSERVICEBYPASSINGANINTENTTOSTARTSERVICEORYOUCANBINDTOTHESERVICEBYPASSINGANINTENTTOBINDSERVICEYOUCANINITIATEABROADCASTBYPASSINGANINTENTTOMETHODSLIKESENDBROADCAST,SENDORDEREDBROADCAST,ORSENDSTICKYBROADCASTYOUCANPERFORMAQUERYTOACONTENTPROVIDERBYCALLINGQUERYONACONTENTRESOLVERFORMOREINFORMATIONABOUTUSINGINTENTS,SEETHEINTENTSANDINTENTFILTERSDOCUMENTMOREINFORMATIONABOUTACTIVATINGSPECIFICCOMPONENTSISALSOPROVIDEDINTHEFOLLOWINGDOCUMENTSACTIVITIES,SERVICES,BROADCASTRECEIVERANDCONTENTPROVIDERSDECLARINGCOMPONENTSTHEPRIMARYTASKOFTHEMANIFESTISTOINFORMTHESYSTEMABOUTTHEAPPLICATIONSCOMPONENTSFOREXAMPLE,AMANIFESTFILECANDECLAREANACTIVITYASFOLLOWSINTHEELEMENT,THEANDROIDICONATTRIBUTEPOINTSTORESOURCESFORANICONTHATIDENTIFIESTHEAPPLICATIONINTHEELEMENT,THEANDROIDNAMEATTRIBUTESPECIFIESTHEFULLYQUALIFIEDCLASSNAMEOFTHEACTIVITYSUBCLASSANDTHEANDROIDLABELATTRIBUTESSPECIFIESASTRINGTOUSEASTHEUSERVISIBLELABELFORTHEACTIVITYYOUMUSTDECLAREALLAPPLICATIONCOMPONENTSTHISWAYELEMENTSFORACTIVITIESELEMENTSFORSERVICESELEMENTSFORBROADCASTRECEIVERSELEMENTSFORCONTENTPROVIDERSACTIVITIES,SERVICES,ANDCONTENTPROVIDERSTHATYOUINCLUDEINYOURSOURCEBUTDONOTDECLAREINTHEMANIFESTARENOTVISIBLETOTHESYSTEMAND,CONSEQUENTLY,CANNEVERRUNHOWEVER,BROADCASTRECEIVERSCANBEEITHERDECLAREDINTHEMANIFESTORCREATEDDYNAMICALLYINCODEASBROADCASTRECEIVEROBJECTSANDREGISTEREDWITHTHESYSTEMBYCALLINGREGISTERRECEIVERDECLARINGCOMPONENTCAPABILITIESASDISCUSSEDABOVE,INACTIVATINGCOMPONENTS,YOUCANUSEANINTENTTOSTARTACTIVITIES,SERVICES,ANDBROADCASTRECEIVERSYOUCANDOSOBYEXPLICITLYNAMINGTHETARGETCOMPONENTUSINGTHECOMPONENTCLASSNAMEINTHEINTENTHOWEVER,THEREALPOWEROFINTENTSLIESINTHECONCEPTOFINTENTACTIONSWITHINTENTACTIONS,YOUSIMPLYDESCRIBETHETYPEOFACTIONYOUWANTTOPERFORMANDOPTIONALLY,THEDATAUPONWHICHYOUDLIKETOPERFORMTHEACTIONANDALLOWTHESYSTEMTOFINDACOMPONENTONTHEDEVICETHATCANPERFORMTHEACTIONANDSTARTITIFTHEREAREMULTIPLECOMPONENTSTHATCANPERFORMTHEACTIONDESCRIBEDBYTHEINTENT,THENTHEUSERSELECTSWHICHONETOUSETHEWAYTHESYSTEMIDENTIFIESTHECOMPONENTSTHATCANRESPONDTOANINTENTISBYCOMPARINGTHEINTENTRECEIVEDTOTHEINTENTFILTERSPROVIDEDINTHEMANIFESTFILEOFOTHERAPPLICATIONSONTHEDEVICEWHENYOUDECLAREACOMPONENTINYOURAPPLICATIONSMANIFEST,YOUCANOPTIONALLYINCLUDEINTENTFILTERSTHATDECLARETHECAPABILITIESOFTHECOMPONENTSOITCANRESPONDTOINTENTSFROMOTHERAPPLICATIONSYOUCANDECLAREANINTENTFILTERFORYOURCOMPONENTBYADDINGANELEMENTASACHILDOFTHECOMPONENTSDECLARATIONELEMENTFOREXAMPLE,ANEMAILAPPLICATIONWITHANACTIVITYFORCOMPOSINGANEWEMAILMIGHTDECLAREANINTENTFILTERINITSMANIFESTENTRYTORESPONDTO“SEND“INTENTSINORDERTOSENDEMAILANACTIVITYINYOURAPPLICATIONCANTHENCREATEANINTENTWITHTHE“SEND”ACTIONACTION_SEND,WHICHTHESYSTEMMATCHESTOTHEEMAILAPPLICATIONS“SEND”ACTIVITYANDLAUNCHESITWHENYOUINVOKETHEINTENTWITHSTARTACTIVITYFORMOREABOUTCREATINGINTENTFILTERS,SEETHEINTENTSANDINTENTFILTERSDOCUMENTDECLARINGAPPLICATIONREQUIREMENTSTHEREAREAVARIETYOFDEVICESPOWEREDBYANDROIDANDNOTALLOFTHEMPROVIDETHESAMEFEATURESANDCAPABILITIESINORDERTOPREVENTYOURAPPLICATIONFROMBEINGINSTALLEDONDEVICESTHATLACKFEATURESNEEDEDBYYOURAPPLICATION,ITSIMPORTANTTHATYOUCLEARLYDEFINEAPROFILEFORTHETYPESOFDEVICESYOURAPPLICATIONSUPPORTSBYDECLARINGDEVICEANDSOFTWAREREQUIREMENTSINYOURMANIFESTFILEMOSTOFTHESEDECLARATIONSAREINFORMATIONALONLYANDTHESYSTEMDOESNOTREADTHEM,BUTEXTERNALSERVICESSUCHASGOOGLEPLAYDOREADTHEMINORDERTOPROVIDEFILTERINGFORUSERSWHENTHEYSEARCHFORAPPLICATIONSFROMTHEIRDEVICEFOREXAMPLE,IFYOURAPPLICATIONREQUIRESACAMERAANDUSESAPISINTRODUCEDINANDROID21APILEVEL7,YOUSHOULDDECLARETHESEASREQUIREMENTSINYOURMANIFESTFILETHATWAY,DEVICESTHATDONOTHAVEACAMERAANDHAVEANANDROIDVERSIONLOWERTHAN21CANNOTINSTALLYOURAPPLICATIONFROMGOOGLEPLAYHOWEVER,YOUCANALSODECLARETHATYOURAPPLICATIONUSESTHECAMERA,BUTDOESNOTREQUIREITINTHATCASE,YOURAPPLICATIONMUSTPERFORMACHECKATRUNTIMETODETERMINEIFTHEDEVICEHASACAMERAANDDISABLEANYFEATURESTHATUSETHECAMERAIFONEISNOTAVAILABLEHEREARESOMEOFTHEIMPORTANTDEVICECHARACTERISTICSTHATYOUSHOULDCONSIDERASYOUDESIGNANDDEVELOPYOURAPPLICATIONSCREENSIZEANDDENSITYINORDERTOCATEGORIZEDEVICESBYTHEIRSCREENTYPE,ANDROIDDEFINESTWOCHARACTERISTICSFOREACHDEVICESCREENSIZETHEPHYSICALDIMENSIONSOFTHESCREENANDSCREENDENSITYTHEPHYSICALDENSITYOFTHEPIXELSONTHESCREEN,ORDPIDOTSPERINCHTOSIMPLIFYALLTHEDIFFERENTTYPESOFSCREENCONFIGURATIONS,THEANDROIDSYSTEMGENERALIZESTHEMINTOSELECTGROUPSTHATMAKETHEMEASIERTOTARGETTHESCREENSIZESARESMALL,NORMAL,LARGE,ANDEXTRALARGETHESCREENDENSITIESARELOWDENSITY,MEDIUMDENSITY,HIGHDENSITY,ANDEXTRAHIGHDENSITYBYDEFAULT,YOURAPPLICATIONISCOMPATIBLEWITHALLSCREENSIZESANDDENSITIES,BECAUSETHEANDROIDSYSTEMMAKESTHEAPPROPRIATEADJUSTMENTSTOYOURUILAYOUTANDIMAGERESOURCESHOWEVER,YOUSHOULDCREATESPECIALIZEDLAYOUTSFORCERTAINSCREENSIZESANDPROVIDESPECIALIZEDIMAGESFORCERTAINDENSITIES,USINGALTERNATIVELAYOUTRESOURCES,ANDBYDECLARINGINYOURMANIFESTEXACTLYWHICHSCREENSIZESYOURAPPLICATIONSUPPORTSWITHTHEELEMENTFORMOREINFORMATION,SEETHESUPPORTINGMULTIPLESCREENSDOCUMENTINPUTCONFIGURATIONSMANYDEVICESPROVIDEADIFFERENTTYPEOFUSERINPUTMECHANISM,SUCHASAHARDWAREKEYBOARD,ATRACKBALL,ORAFIVEWAYNAVIGATIONPADIFYOURAPPLICATIONREQUIRESAPARTICULARKINDOFINPUTHARDWARE,THENYOUSHOULDDECLAREITINYOURMANIFESTWITHTHEELEMENTHOWEVER,ITISRARETHATANAPPLICATIONSHOULDREQUIREACERTAININPUTCONFIGURATIONDEVICEFEATURESTHEREAREMANYHARDWAREANDSOFTWAREFEATURESTHATMAYORMAYNOTEXISTONAGIVENANDROIDPOWEREDDEVICE,SUCHASACAMERA,ALIGHTSENSOR,BLUETOOTH,ACERTAINVERSIONOFOPENGL,ORTHEFIDELITYOFTHETOUCHSCREENYOUSHOULDNEVERASSUMETHATACERTAINFEATUREISAVAILABLEONALLANDROIDPOWEREDDEVICESOTHERTHANTHEAVAILABILITYOFTHESTANDARDANDROIDLIBRARY,SOYOUSHOULDDECLAREANYFEATURESUSEDBYYOURAPPLICATIONWITHTHEELEMENTPLATFORMVERSIONDIFFERENTANDROIDPOWEREDDEVICESOFTENRUNDIFFERENTVERSIONSOFTHEANDROIDPLATFORM,SUCHASANDROID16ORANDROID23EACHSUCCESSIVEVERSIONOFTENINCLUDESADDITIONALAPISNOTAVAILABLEINTHEPREVIOUSVERSIONINORDERTOINDICATEWHICHSETOFAPISAREAVAILABLE,EACHPLATFORMVERSIONSPECIFIESANAPILEVELFOREXAMPLE,ANDROID10ISAPILEVEL1ANDANDROID23ISAPILEVEL9IFYOUUSEANYAPISTHATWEREADDEDTOTHEPLATFORMAFTERVERSION10,YOUSHOULDDECLARETHEMINIMUMAPILEVELINWHICHTHOSEAPISWEREINTRODUCEDUSINGTHEELEMENTITSIMPORTANTTHATYOUDECLAREALLSUCHREQUIREMENTSFORYOURAPPLICATION,BECAUSE,WHENYOUDISTRIBUTEYOURAPPLICATIONONGOOGLEPLAY,THESTOREUSESTHESEDECLARATIONSTOFILTERWHICHAPPLICATIONSAREAVAILABLEONEACHDEVICEASSUCH,YOURAPPLICATIONSHOULDBEAVAILABLEONLYTODEVICESTHATMEETALLYOURAPPLICATIONREQUIREMENTSFORMOREINFORMATIONABOUTHOWGOOGLEPLAYFILTERSAPPLICATIONSBASEDONTHESEANDOTHERREQUIREMENTS,SEETHEFILTERSONGOOGLEPLAYDOCUMENTAPPLICATIONRESOURCESANANDROIDAPPLICATIONISCOMPOSEDOFMORETHANJUSTCODEITREQUIRESRESOURCESTHATARESEPARATEFROMTHESOURCECODE,SUCHASIMAGES,AUDIOFILES,ANDANYTHINGRELATINGTOTHEVISUALPRESENTATIONOFTHEAPPLICATIONFOREXAMPLE,YOUSHOULDDEFINEANIMATIONS,MENUS,STYLES,COLORS,ANDTHELAYOUTOFACTIVITYUSERINTERFACESWITHXMLFILESUSINGAPPLICATIONRESOURCESMAKESITEASYTOUPDATEVARIOUSCHARACTERISTICSOFYOURAPPLICATIONWITHOUTMODIFYINGCODEANDBYPROVIDINGSETSOFALTERNATIVERESOURCESENABLESYOUTOOPTIMIZEYOURAPPLICATIONFORAVARIETYOFDEVICECONFIGURATIONSSUCHASDIFFERENTLANGUAGESANDSCREENSIZESFOREVERYRESOURCETHATYOUINCLUDEINYOURANDROIDPROJECT,THESDKBUILDTOOLSDEFINEAUNIQUEINTEGERID,WHICHYOUCANUSETOREFERENCETHERESOURCEFROMYOURAPPLICATIONCODEORFROMOTHERRESOURCESDEFINEDINXMLFOREXAMPLE,IFYOURAPPLICATIONCONTAINSANIMAGEFILENAMEDLOGOPNGSAVEDINTHERES/DRAWABLE/DIRECTORY,THESDKTOOLSGENERATEARESOURCEIDNAMEDRDRAWABLELOGO,WHICHYOUCANUSETOREFERENCETHEIMAGEANDINSERTITINYOURUSERINTERFACEONEOFTHEMOSTIMPORTANTASPECTSOFPROVIDINGRESOURCESSEPARATEFROMYOURSOURCECODEISTHEABILITYFORYOUTOPROVIDEALTERNATIVERESOURCESFORDIFFERENTDEVICECONFIGURATIONSFOREXAMPLE,BYDEFININGUISTRINGSINXML,YOUCANTRANSLATETHESTRINGSINTOOTHERLANGUAGESANDSAVETHOSESTRINGSINSEPARATEFILESTHEN,BASEDONALANGUAGEQUALIFIERTHATYOUAPPENDTOTHERESOURCEDIRECTORYSNAMESUCHASRES/VALUESFR/FORFRENCHSTRINGVALUESANDTHEUSERSLANGUAGESETTING,THEANDROIDSYSTEMAPPLIESTHEAPPROPRIATELANGUAGESTRINGSTOYOURUIANDROIDSUPPORTSMANYDIFFERENTQUALIFIERSFORYOURALTERNATIVERESOURCESTHEQUALIFIERISASHORTSTRINGTHATYOUINCLUDEINTHENAMEOFYOURRESOURCEDIRECTORIESINORDERTODEFINETHEDEVICECONFIGURATIONFORWHICHTHOSERESOURCESSHOULDBEUSEDASANOTHEREXAMPLE,YOUSHOULDOFTENCREATEDIFFERENTLAYOUTSFORYOURACTIVITIES,DEPENDINGONTHEDEVICESSCREENORIENTATIONANDSIZEFOREXAMPLE,WHENTHEDEVICESCREENISINPORTRAITORIENTATIONTALL,YOUMIGHTWANTALAYOUTWITHBUTTONSTOBEVERTICAL,BUTWHENTHESCREENISINLANDSCAPEORIENTATIONWIDE,THEBUTTONSSHOULDBEALIGNEDHORIZONTALLYTOCHANGETHELAYOUTDEPENDINGONTHEORIENTATION,YOUCANDEFINETWODIFFERENTLAYOUTSANDAPPLYTHEAPPROPRIATEQUALIFIERTOEACHLAYOUTSDIRECTORYNAMETHEN,THESYSTEMAUTOMATICALLYAPPLIESTHEAPPROPRIATELAYOUTDEPENDINGONTHECURRENTDEVICEORIENTATIONFORMOREABOUTTHEDIFFERENTKINDSOFRESOURCESYOUCANINCLUDEINYOURAPPLICATIONANDHOWTOCREATEALTERNATIVERESOURCESFORVARIOUSDEVICECONFIGURATIONS,SEETHEAPPLICATIONRESOURCESDEVELOPERGUIDE安卓应用基础ANDROID应用程序是用JAVA编程语言编写的,ANDROID的SDK工具编译成代码和数据和资源文件放到一个ANDROID的包,一个归档文件档案资源的APK后缀,所有的在一个单一的代码APK文件被认为是一个应用程序,是ANDROID的文件,供电设备来安装应用程序。一旦安装在设备上,每个ANDROID应用程序的生命在它自己的安全沙箱而ANDROID操作系统是一个多用户LINUX系统中,每个应用程序是一个不同的用户。默认情况下,每个应用程序的系统分配一个唯一的LINUX用户ID(该ID仅用于由系统是未知的应用程序),系统设置所有的应用程序中的文件权限,以便只有用户ID分配给该应用程序可以访问它们。每个进程都有它自己的虚拟机(VM),因此应用程序的代码在从其他应用程序隔离运行。默认情况下,每个应用程序运行在它自己的LINUX进程。ANDROID的启动过程时,应用程序的任何组件需要被执行,然后关闭该进程时,它不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 两位数乘一位数计算过关自测口算题带答案
- 二年级数学100以内加减法竖式计算题能力练习口算题
- 阿长与《山海经》公开课教学课件(部编人教版七年级语文下册)
- 江苏省无锡市新区重点名校2023-2024学年中考物理最后一模试卷含解析
- 2024年苯项目策划方案报告
- 2024年软件定义存储项目投资建议书
- 2024年涂料分散剂项目融资计划书
- 2024年社会福利收养服务项目安全调研评估报告
- 2024年明胶空心胶囊项目安全调研评估报告
- 冷弯型钢项目可行性报告
- 车辆挂别人名下协议书 车辆协议书范本
- 线材生产的质量控制与缺陷说明书
- 现在分词作逻辑主语详解
- 南京市国际友城工作三年行动计划.doc
- 七年级(下)科学备课组计划
- 盾构管片拼装和姿态控制的要点
- 广告工程验收报告-简版
- 多晶硅工艺流程Microsoft Word 文档
- 判断题(修改版)
- 小学生美术课件-第12课-小兔的奇遇--冀美版-(共13张PPT)ppt课件
- 初二数学分层布置作业项目研究报告.doc
评论
0/150
提交评论