1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Android应用

Android应用程序是用java语言写的,通过aapt工具把应用程序所需要的任何数据、资源文件打包成apk文件,这个文件是一个将应用安装到手机上的一个载体。 ???????? 有很多方式,每个android应用程序存在于不同的世界: (1)?????? Linux进程中运行,当应用中的任何代码需要执行时android就启动相应的进程,当不需要执行时并且系统资源被其他应用请求时android就关闭相应的进程。 (2)?????? VM),所以应用程序代码与其他的应用运行是彼此隔离的。 (3)?????? Linux user ID,都被设置权限以便应用程序的文件只对用户可见或者只对应用自己可见。 安排两个应用程序共享一个user ID是可能的,这种情况下他们彼此之间是可以看见对方的文件的,为了保护系统资源,拥有相同ID的应用也能被安排运行在一个相同的Linux进程中,共享相同的VM。 ? 1、??? Application Components) Android一个核心的特点就是一个应用能使用另一个应用的元素(如果另一个应用允许的话),你的应用不需要包含你用到的另一个应用的代码也不需要你连接这些代码,相反的,只是当应用需要这些代码时,就启动另一个应用相应的代码(不是让另一个应用全部启动) 为了这个能工作,当一个应用的任何部分被需要时系统必须能启动这个应用进程,并且将这个部分实例化成java对象,因此,和其他大多数系统不同的是,android应用程序没有一个单独的程序入口(例如:没有main()函数),相反的,android应用有必要的组件以便当需要时系统能实例化并运行它,android中有四种组件: (1)?????? Activity?? Activity是一个可见的用户可以使用的用户界面,如果一个应用中有多个Activity,虽然彼此结合形成一个应用在一起工作,但是每个Activity是彼此独立的,每个都是Activity的一个子类。 ? 一个应用程序可能由一个或多个Activity组成,这些Activity这么样显示,需要多少个Activity,依赖于这个应用的设计者,一般的,有一个Activity应该被标记成当这个应用启动时第一个呈现出来给用户的。 ? 每个Activity默认的被给予一个窗口来绘制,一般的,这个窗口占满整个屏幕,但是他可以比屏幕小并且浮在另一个窗口的上面。 一个窗口中的可见的内容是由一些具有层次关系的view组成的,都是继承自View类的,每个view都控制一个窗口中的特定的矩形框,parent view 包含children view和组织children view的布局,leaf view(那些在继承层次最底层的view)绘制在他们所控制的矩形框中,并且对用户的动作做出直接的回应,因此view就是Activity和用户交互的地方,android有很多已经做好的view你可以使用,包括buttons,text fields,scroll bars,menu items,check boxes等等 ? 一个view hierarchy是通过Activity.setContentView()方法被放到一个Activity的window中的,content view是view hierarchy中最顶端的那个view。 (2)?????? Services service不是一个用户可见的组件,在不确定的一段时间内运行在后台,每个service都继承自Service类。 你可以连接(connect)或者绑定(bind)到一个正在运行的service(如果这个service还没运行的话就启动它),当连接到service后,你可以通过一个service暴露出来的接口和这个service交流,对music service来说,这个接口可以是允许用户暂停,后退,停止,重新播放。 ? 和Activity或者其他组件一样,service运行在这个应用进程的主线程中,所以他不会阻塞其他的组件或者用户界面,他们经常为那些耗时长的任务单独开一个线程。 (3)?????? Broadcast receivers broadcast receiver这样一个组件,他只是接收广播并作出反应,在系统中有很多已有的广播,比如反应时区变化(timezone)的,电池变化(battery)的,用户修改了系统语言时的广播,应用程序也可以自己定义广播,比如定义这样一个广播,让其他的应用知道某些数据已经下载完毕了可以使用了。 一个应用可以有任意多个broadcast receiver来对他所关心的广播进行监听并作出反应。所有的receiver都继承自BroadcastReceiver类。 ? BroadcastReceiver不显示在用户界

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档