什么是Android Application? 请问android中的application类有什么用,和a...

\u4ec0\u4e48\u662fAndroid Application\uff1f

\u4efb\u4f55\u4e00\u4e2aAndroid Application\u57fa\u672c\u4e0a\u662f\u7531\u4e00\u4e9bActivities\u7ec4\u6210\uff0c\u5f53\u7528\u6237\u4e0e\u5e94\u7528\u7a0b\u5e8f\u4ea4\u4e92\u65f6\u5176\u6240\u5305\u542b\u7684\u90e8\u5206Activities\u5177\u6709\u7d27\u5bc6\u7684\u903b\u8f91\u5173\u7cfb\uff0c\u6216\u8005\u5404\u81ea\u72ec\u7acb\u5904\u7406\u4e0d\u540c\u7684\u54cd\u5e94\u3002\u8fd9\u4e9bActivities\u6346\u7ed1\u5728\u4e00\u8d77\u6210\u4e3a\u4e86\u4e00\u4e2a\u5904\u7406\u7279\u5b9a\u9700\u6c42\u7684Application, \u5e76\u4e14\u4ee5\u201c\u3002apk\u201d\u4f5c\u4e3a\u540e\u7f00\u540d\u5b58\u5728\u4e8e\u6587\u4ef6\u7cfb\u7edf\u4e2d\u3002Android\u5e73\u53f0\u9ed8\u8ba4\u4e0b\u7684\u5e94\u7528\u7a0b\u5e8f \u4f8b\u5982\uff1aEmail\u3001Calendar\u3001Browser\u3001Maps\u3001Text Message\u3001Contacts\u3001Camera\u548cDialer\u7b49\u90fd\u662f\u4e00\u4e2a\u4e2a\u72ec\u7acb\u7684Apps\u3002\u5b89\u88c5 Application\u7684\u8fc7\u7a0b\u4e5f\u53ef\u4ee5\u7b80\u5355\u7406\u89e3\u4e3a\u5c06\u5176\u6240\u5305\u88f9\u7684Activities\u5bfc\u5165\u5230\u5f53\u524d\u7684\u7cfb\u7edf\u4e2d\uff0c\u5982\u679c\u7cfb\u7edf\u4e2d\u5df2\u7ecf\u5b58\u5728\u4e86\u76f8\u540c\u7684Activities\uff0c \u90a3\u4e48\u5c06\u4f1a\u81ea\u52a8\u5c06\u5176\u5173\u8054\uff0c\u800c\u4e0d\u4f1a\u91cd\u590d\u5b89\u88c5\u76f8\u540c\u7684Activities\uff0c\u907f\u514d\u8d44\u6e90\u7684\u6d6a\u8d39\u3002Application\u5378\u8f7d\u7684\u8fc7\u7a0b\u4e5f\u4f1a\u68c0\u67e5\u5f53\u524d\u6240\u5173\u8054\u7684 Activities\u662f\u5426\u6709\u88ab\u5176\u5b83Application\u6807\u7b7e\u6240\u5173\u8054\uff0c\u5982\u679c\u4ec5\u4ec5\u662f\u63d0\u4f9b\u5f53\u524d\u7684Application\u4f7f\u7528\uff0c\u90a3\u4e48\u5c06\u4f1a\u5f7b\u5e95\u88ab\u79fb\u9664\uff0c\u76f8\u53cd\u5219\u4e0d\u505a \u4efb\u4f55\u64cd\u4f5c\u3002\u5c31\u50cf\u6211\u4eec\u5df2\u7ecf\u77e5\u9053\u7684\uff0cApplication\u57fa\u672c\u4e0a\u662f\u7531\u56db\u4e2a\u6a21\u5757\u7ec4\u6210\uff1aActivity\u3001Service\u3001Content Provider \u548c Broadcast Receiver\uff0c\u5176\u4e2dActivity\u662f\u5b9e\u73b0\u5e94\u7528\u7684\u4e3b\u4f53\u3002\u64cd\u4f5c\u5e94\u7528\u7a0b\u5e8f\u65f6\uff0c\u6709\u65f6\u9700\u8981\u8c03\u7528\u591a\u4e2aActivities\u6765\u5b8c\u6210\u9700\u6c42\uff0c\u4f8b\u5982\uff1a\u53d1\u9001\u90ae\u4ef6\u7a0b\u5e8f\uff0c\u9996\u5148\u662f\u8fdb\u5165\u90ae\u4ef6\u4e3b\u754c\u9762\uff0c\u7136\u540e\u542f\u52a8\u4e00\u4e2a\u65b0\u7684Activity\u7528\u4e8e\u586b\u5199\u65b0\u90ae\u4ef6\u5185\u5bb9\uff0c\u540c\u65f6\u53ef\u4ee5\u8c03\u51fa\u8054\u7cfb\u4eba\u5217\u8868\u7528\u4e8e\u63d2\u5165\u6536\u4ef6\u4eba\u4fe1\u606f\u7b49\u7b49\u3002\u5728\u8fd9\u4e2a\u64cd\u4f5c\u8fc7\u7a0b\u4e2d Android\u5e73\u53f0\u6709\u4e00\u4e2a\u4e13\u95e8\u7528\u4e8e\u7ba1\u7406Activities\u5806\u6808\u7684\u673a\u5236\uff0c\u5176\u53ef\u4ee5\u65b9\u4fbf\u7684\u7ebf\u6027\u8bb0\u5f55Activities\u5b9e\u4f8b\uff0c\u5f53\u5b8c\u6210\u67d0\u4e2a\u64cd\u4f5c\u65f6\uff0c\u53ef\u4ee5\u901a\u8fc7\u5bfc\u822a\u529f\u80fd\u8fd4\u56de\u4e4b\u524d\u7684Activity\uff08\u901a\u8fc7\u6309\u64cd\u4f5c\u53f0\u7684\u201cBack\u201d\u6309\u94ae\uff09\u3002\u6bcf\u6b21\u542f\u52a8\u65b0\u7684Activity\u90fd\u5c06\u88ab\u6dfb\u52a0\u5230Activity Stack\u3002\u7528\u6237\u53ef\u4ee5\u65b9\u4fbf\u7684\u8fd4\u56de\u4e0a\u4e00\u4e2aActivity\u76f4\u5230Home Screen\uff0c\u5230\u8fbeHome Screen\u540e\uff0c\u5c06\u65e0\u6cd5\u518d\u7ee7\u7eed\u67e5\u770b\u5806\u6808\u8bb0\u5f55\uff08\u4fd7\u8bdd\u8bf4\uff1a\u5230\u5934\u4e86\uff09\u3002\u5982\u679c\u5f53\u524dTask\u88ab\u4e2d\u6b62\uff08Interrupting the task\uff09\uff0c\u8fd4\u56de\u5230\u7cfb\u7edf\u4e3b\u754c\u9762\u540e\u542f\u52a8\u4e86\u5176\u5b83\u64cd\u4f5c\uff0c\u5f53\u5e0c\u671b\u8fd4\u56de\u5230\u524d\u4e00\u4e2aTask\u7ee7\u7eed\u6267\u884c\u65f6\uff0c\u53ea\u9700\u8981\u518d\u6b21\u901a\u8fc7\u4e3b\u754c\u9762\u7684Application launcher\u6216\u8005\u5feb\u6377\u65b9\u5f0f\u542f\u52a8\u8fd9\u4e2aTask\u7684Root Activity\u4fbf\u53ef\u8fd4\u56de\u5176\u4e2d\u6b62\u65f6\u7684\u72b6\u6001\u7ee7\u7eed\u6267\u884c\u3002\u76f8\u5bf9\u4e8eViews\u3001Windows\u3001Menus\u548cDialogs\u800c\u8a00\uff0cActivity\u662f\u552f\u4e00\u53ef\u88ab\u8bb0\u5f55\u5728History stack\u4e2d\u7684\u6570\u636e\uff0c\u6240\u4ee5\u5f53\u4f60\u6240\u8bbe\u8ba1\u7684\u5e94\u7528\u7a0b\u5e8f\u9700\u8981\u7528\u6237\u7531A\u754c\u9762\u8fdb\u5165\u5230\u6b21\u4e00\u7ea7\u754c\u9762B\uff0c\u5f53\u5b8c\u6210\u64cd\u4f5c\u540e\u9700\u8981\u518d\u6b21\u8fd4\u56deA,\u90a3\u4e48\u5fc5\u987b\u8003\u8651\u5c06A\u770b\u4f5c\u4e3a Activity\uff0c\u5426\u5219\u5c06\u65e0\u6cd5\u4ece\u5386\u53f2\u5806\u6808\u4e2d\u8fd4\u56de\u3002\u4f8b\u5982\uff0c\u5047\u8bbe\u4f60\u60f3\u5728\u4f60\u7684\u5e94\u7528\u4e2d\u8ba9\u7528\u6237\u663e\u793a\u4e00\u4e9b\u5730\u65b9\u7684\u8857\u666f\u3002\u800c\u8fd9\u91cc\u5df2\u7ecf\u6709\u4e00\u4e2aActivity\u53ef\u4ee5\u505a\u5230\u8fd9\u4e00\u70b9\uff0c\u56e0\u6b64\uff0c\u4f60\u7684Activity\u6240\u9700\u8981\u505a\u7684\u53ea\u662f\u5728Intent\u5bf9\u8c61\u4e2d\u6dfb\u52a0\u5fc5\u8981\u7684\u4fe1\u606f\uff0c\u5e76\u4f20\u9012\u7ed9startActivity\uff08\uff09\u3002\u5730\u56fe\u6d4f\u89c8\u5c06\u4f1a\u663e\u793a\u4f60\u7684\u5730\u56fe\u3002\u5f53\u7528\u6237\u6309\u4e0bBACK\u952e\uff0c\u4f60\u7684Activity\u4f1a\u518d\u6b21\u51fa\u73b0\u5728\u5c4f\u5e55\u4e0a\u3002\u5bf9\u4e8e\u7528\u6237\u6765\u8bf4\uff0c\u770b\u8d77\u6765\u597d\u50cf\u662f\u5730\u56fe\u6d4f\u89c8\u4e0e\u4f60\u7684Activity\u4e00\u6837\uff0c\u5c5e\u4e8e\u76f8\u540c\u7684\u5e94\u7528\u7a0b\u5e8f\uff0c\u5373\u4fbf\u662f\u5b83\u5b9a\u4e49\u5728\u5176\u5b83\u7684\u5e94\u7528\u7a0b\u5e8f\u91cc\uff0c\u5e76\u8fd0\u884c\u5728\u90a3\u4e2a\u5e94\u7528\u7a0b\u5e8f\u7684\u8fdb\u7a0b\u91cc\u3002Android\u901a\u8fc7\u5c06\u8fd9\u4e24\u4e2aActivity\u4fdd\u5b58\u5728\u540c\u4e00\u4e2aTask\u91cc\u6765\u4f53\u73b0\u8fd9\u4e00\u7528\u6237\u4f53\u9a8c\u3002\u7b80\u5355\u6765\u8bf4\uff0c\u4e00\u4e2aTask\u5c31\u662f\u7528\u6237\u4f53\u9a8c\u4e0a\u7684\u4e00\u4e2a\u201c\u5e94\u7528\u201d\u3002\u5b83\u5c06\u76f8\u5173\u7684Activity\u7ec4\u5408\u5728\u4e00\u8d77\uff0c\u4ee5stack\u7684\u65b9\u5f0f\u7ba1\u7406\uff08\u5c31\u662f\u524d\u9762\u63d0\u5230\u7684Activity Stack\uff09\uff0c\u8fd9\u5c31\u662fTask\u3002\u5728Android\u5e73\u53f0\u4e0a\u53ef\u4ee5\u5c06task\u7b80\u5355\u7684\u7406\u89e3\u4e3a\u5e7d\u591a\u4e2aActivity\u5171\u540c\u534f\u4f5c\u5b8c\u6210\u67d0\u9879\u5e94\u7528\uff0c\u800c\u4e0d\u7ba1Activity\u5177\u4f53\u5c5e\u4e8e\u54ea\u4e2aApplication\uff0c\u901a\u8fc7\u4e0b\u56fe\u53ef\u4ee5\u66f4\u6e05\u6670\u7684\u7406\u89e3Application\u3001task\u3001Activity\u4e09\u8005\u4e4b\u95f4\u7684\u5173\u7cfb\uff1a\u6211\u4eec\u7528\u8fc7Android\u7684\u624b\u673a\u5c31\u4f1a\u77e5\u9053\u6709\u4e0b\u9762\u7684\u573a\u666f\uff1a\u5047\u8bbe\u6211\u4eec\u9996\u5148\u5728\u7528IReader\u5728\u770b\u4e66\uff0c\u4ece\u9009\u4e66\u5230\u5177\u4f53\u4e66\u7684\u9605\u8bfb\u754c\u9762\uff0c\u8fd9\u662f\u6709\u597d\u51e0\u4e2aActivity\u3002\u6211\u4eec\u6bcf\u4e00\u4e2a\u70b9\u51fb\u7684Activity\u90fd\u88ab\u653e\u5728\u9605\u8bfb\u8fd9\u4e2aTask\u5bf9\u5e94\u7684Activity Stack\u4e2d\u4e86\uff0c\u8fd9\u53ef\u4ee5\u653e\u6211\u4eec\u901a\u8fc7\u56de\u9000\u952e\u8fd4\u56de\u6bcf\u4e00\u4e2a\u524d\u9762\u7684Activity\u3002\u6211\u4eec\u5728\u9605\u8bfb\u5230\u4e00\u534a\u65f6\uff0c\u60f3\u770b\u770bSina\u5fae\u535a\uff0c\u6309Home\u952e\u79bb\u5f00\u4e86IReader\u3002\u5728Sina\u5fae\u535a\u754c\u9762\u4e5f\u662f\u6709\u591a\u4e2aActivity\uff0c\u6211\u4eec\u4e00\u6b65\u5230\u9605\u8bfb\u754c\u9762\u3002\u8fd9\u65f6\u5019\u6211\u4eec\u6bcf\u4e00\u4e2a\u70b9\u51fb\u7684Activity\u90fd\u88ab\u653e\u5728Sina\u5fae\u535a\u8fd9\u4e2aTask\u5bf9\u5e94\u7684Activity Stack\u4e2d\u4e86\uff0c\u8fd9\u53ef\u4ee5\u653e\u6211\u4eec\u901a\u8fc7\u56de\u9000\u952e\u8fd4\u56de\u6bcf\u4e00\u4e2a\u524d\u9762\u7684Activity\u3002\u6211\u4eec\u8fd9\u65f6\u5019\u518d\u56de\u5230IReader\u8bfb\u4e66\u754c\u9762\uff0c\u539f\u5148\u7684\u72b6\u6001\u8fd8\u662f\u4fdd\u7559\u7684\u3002\u663e\u7136\u6bcf\u4e00\u4e2aTask\u6709\u81ea\u5df1\u7684 Activity Stack\u3002Task\u5c31\u662f\u8fd9\u6837\u4e3a\u4e86\u65b9\u4fbf\u4eba\u4eec\u4f7f\u7528\u624b\u673a\u800c\u8bbe\u7f6e\u7684\uff0c\u5c31\u50cf\u524d\u9762\u63d0\u5230\u7684\u573a\u666fTask\u53ef\u4ee5\u8de8Application\u3002\u4e0b\u9762\u8fd9\u4e2a\u56fe\u4ece\u53e6\u5916\u4e00\u4e2a\u89d2\u5ea6\u63cf\u8ff0\u4e86Application Task Activities\u7684\u5173\u7cfbTask\u901a\u8fc7Application launcher\u3001Home screen\u7684\u5feb\u6377\u65b9\u5f0f\u6216\u8005 \u7531 \u201cRecent Tasks\u201d\uff08\u957f\u65f6\u95f4\u6309\u4f4fHome\u952e\uff09\u6700\u8fd1\u4f7f\u7528\u8fc7\u7684Task\u8bb0\u5f55\u4e2d\u542f\u52a8\u3002

Application\u548cActivity,Service\u4e00\u6837\u662fAndroid\u6846\u67b6\u7684\u4e00\u4e2a\u7cfb\u7edf\u7ec4\u4ef6\uff0c\u5f53Android\u7a0b\u5e8f\u542f\u52a8\u65f6\u7cfb\u7edf\u4f1a\u521b\u5efa\u4e00\u4e2aApplication\u5bf9\u8c61\uff0c\u7528\u6765\u5b58\u50a8\u7cfb\u7edf\u7684\u4e00\u4e9b\u4fe1\u606f\u3002
Android\u7cfb\u7edf\u81ea\u52a8\u4f1a\u4e3a\u6bcf\u4e2a\u7a0b\u5e8f\u8fd0\u884c\u65f6\u521b\u5efa\u4e00\u4e2aApplication\u7c7b\u7684\u5bf9\u8c61\u4e14\u53ea\u521b\u5efa\u4e00\u4e2a\uff0c\u6240\u4ee5Application\u53ef\u4ee5\u8bf4\u662f\u5355\u4f8b\uff08singleton\uff09\u6a21\u5f0f\u7684\u4e00\u4e2a\u7c7b\u3002
\u901a\u5e38\u6211\u4eec\u662f\u4e0d\u9700\u8981\u6307\u5b9a\u4e00\u4e2aApplication\u7684\uff0c\u7cfb\u7edf\u4f1a\u81ea\u52a8\u5e2e\u6211\u4eec\u521b\u5efa\uff0c\u5982\u679c\u9700\u8981\u521b\u5efa\u81ea\u5df1\u7684Application\uff0c\u90a3\u4e5f\u5f88\u7b80\u5355\uff01\u521b\u5efa\u4e00\u4e2a\u7c7b\u7ee7\u627fApplication\u5e76\u5728AndroidManifest.xml\u6587\u4ef6\u4e2d\u7684application\u6807\u7b7e\u4e2d\u8fdb\u884c\u6ce8\u518c\uff08\u53ea\u9700\u8981\u7ed9application\u6807\u7b7e\u589e\u52a0name\u5c5e\u6027\uff0c\u5e76\u6dfb\u52a0\u81ea\u5df1\u7684 Application\u7684\u540d\u5b57\u5373\u53ef\uff09\u3002
\u542f\u52a8Application\u65f6\uff0c\u7cfb\u7edf\u4f1a\u521b\u5efa\u4e00\u4e2aPID\uff0c\u5373\u8fdb\u7a0bID\uff0c\u6240\u6709\u7684Activity\u90fd\u4f1a\u5728\u6b64\u8fdb\u7a0b\u4e0a\u8fd0\u884c\u3002\u90a3\u4e48\u6211\u4eec\u5728Application\u521b\u5efa\u7684\u65f6\u5019\u521d\u59cb\u5316\u5168\u5c40\u53d8\u91cf\uff0c\u540c\u4e00\u4e2a\u5e94\u7528\u7684\u6240\u6709Activity\u90fd\u53ef\u4ee5\u53d6\u5230\u8fd9\u4e9b\u5168\u5c40\u53d8\u91cf\u7684\u503c\uff0c\u6362\u53e5\u8bdd\u8bf4\uff0c\u6211\u4eec\u5728\u67d0\u4e00\u4e2aActivity\u4e2d\u6539\u53d8\u4e86\u8fd9\u4e9b\u5168\u5c40\u53d8\u91cf\u7684\u503c\uff0c\u90a3\u4e48\u5728\u540c\u4e00\u4e2a\u5e94\u7528\u7684\u5176\u4ed6Activity\u4e2d\u503c\u5c31\u4f1a\u6539\u53d8\u3002

任何一个Android Application基本上是由一些Activities组成,当用户与应用程序交互时其所包含的部分Activities具有紧密的逻辑关系,或者各自独立处理不同的响应。 这些Activities捆绑在一起成为了一个处理特定需求的Application, 并且以“。apk”作为后缀名存在于文件系统中。 Android平台默认下的应用程序 例如:Email、Calendar、Browser、Maps、Text Message、Contacts、Camera和Dialer等都是一个个独立的Apps。 安装 Application的过程也可以简单理解为将其所包裹的Activities导入到当前的系统中,如果系统中已经存在了相同的Activities, 那么将会自动将其关联,而不会重复安装相同的Activities,避免资源的浪费。 Application卸载的过程也会检查当前所关联的 Activities是否有被其它Application标签所关联,如果仅仅是提供当前的Application使用,那么将会彻底被移除,相反则不做 任何操作。 就像我们已经知道的,Application基本上是由四个模块组成:Activity、Service、Content Provider 和 Broadcast Receiver,其中Activity是实现应用的主体。 操作应用程序时,有时需要调用多个Activities来完成需求,例如:发送邮件程序,首先是进入邮件主界面,然后启动一个新的Activity用于填写新邮件内容,同时可以调出联系人列表用于插入收件人信息等等。在这个操作过程中 Android平台有一个专门用于管理Activities堆栈的机制,其可以方便的线性记录Activities实例,当完成某个操作时,可以通过导航功能返回之前的Activity(通过按操作台的“Back”按钮)。 每次启动新的Activity都将被添加到Activity Stack。用户可以方便的返回上一个Activity直到Home Screen,到达Home Screen后,将无法再继续查看堆栈记录(俗话说:到头了)。如果当前Task被中止(Interrupting the task),返回到系统主界面后启动了其它操作,当希望返回到前一个Task继续执行时,只需要再次通过主界面的Application launcher或者快捷方式启动这个Task的Root Activity便可返回其中止时的状态继续执行。 相对于Views、Windows、Menus和Dialogs而言,Activity是唯一可被记录在History stack中的数据,所以当你所设计的应用程序需要用户由A界面进入到次一级界面B,当完成操作后需要再次返回A,那么必须考虑将A看作为 Activity,否则将无法从历史堆栈中返回。 例如,假设你想在你的应用中让用户显示一些地方的街景。而这里已经有一个Activity可以做到这一点,因此,你的Activity所需要做的只是在Intent对象中添加必要的信息,并传递给startActivity()。地图浏览将会显示你的地图。当用户按下BACK键,你的Activity会再次出现在屏幕上。 对于用户来说,看起来好像是地图浏览与你的Activity一样,属于相同的应用程序,即便是它定义在其它的应用程序里,并运行在那个应用程序的进程里。 Android通过将这两个Activity保存在同一个Task里来体现这一用户体验。简单来说,一个Task就是用户体验上的一个“应用”。 它将相关的Activity组合在一起,以stack的方式管理(就是前面提到的Activity Stack),这就是Task。 在Android平台上可以将task简单的理解为幽多个Activity共同协作完成某项应用,而不管Activity具体属于哪个Application, 通过下图可以更清晰的理解Application、task、Activity三者之间的关系: 我们用过Android的手机就会知道有下面的场景: 假设我们首先在用IReader在看书,从选书到具体书的阅读界面,这是有好几个Activity。我们每一个点击的Activity都被放在阅读这个Task对应的Activity Stack中了,这可以放我们通过回退键返回每一个前面的Activity。 我们在阅读到一半时,想看看Sina微博,按Home键离开了IReader。 在Sina微博界面也是有多个Activity,我们一步到阅读界面。这时候我们每一个点击的Activity都被放在Sina微博这个Task对应的Activity Stack中了,这可以放我们通过回退键返回每一个前面的Activity。 我们这时候再回到IReader读书界面,原先的状态还是保留的。 显然每一个Task有自己的 Activity Stack。 Task就是这样为了方便人们使用手机而设置的,就像前面提到的场景Task可以跨Application。 下面这个图从另外一个角度描述了Application Task Activities的关系 Task通过Application launcher、Home screen的快捷方式或者 由 “Recent Tasks”(长时间按住Home键)最近使用过的Task记录中启动。

"任何一个Android Application基本上是由一些Activities组成,当用户与应用程序交互时其所包含的部分Activities具有紧密的逻辑关系,或者各自独立处理不同的响应。
这些Activities捆绑在一起成为了一个处理特定需求的Application, 并且以“。apk”作为后缀名存在于文件系统中。
Android平台默认下的应用程序 例如:Email、Calendar、Browser、Maps、Text Message、Contacts、Camera和Dialer等都是一个个独立的Apps。
安装 Application的过程也可以简单理解为将其所包裹的Activities导入到当前的系统中,如果系统中已经存在了相同的Activities, 那么将会自动将其关联,而不会重复安装相同的Activities,避免资源的浪费。
Application卸载的过程也会检查当前所关联的 Activities是否有被其它Application标签所关联,如果仅仅是提供当前的Application使用,那么将会彻底被移除,相反则不做 任何操作。
就像我们已经知道的,Application基本上是由四个模块组成:Activity、Service、Content Provider 和 Broadcast Receiver,其中Activity是实现应用的主体。
操作应用程序时,有时需要调用多个Activities来完成需求,例如:发送邮件程序,首先是进入邮件主界面,然后启动一个新的Activity用于填写新邮件内容,同时可以调出联系人列表用于插入收件人信息等等。在这个操作过程中 Android平台有一个专门用于管理Activities堆栈的机制,其可以方便的线性记录Activities实例,当完成某个操作时,可以通过导航功能返回之前的Activity(通过按操作台的“Back”按钮)。
每次启动新的Activity都将被添加到Activity Stack。用户可以方便的返回上一个Activity直到Home Screen,到达Home Screen后,将无法再继续查看堆栈记录(俗话说:到头了)。如果当前Task被中止(Interrupting the task),返回到系统主界面后启动了其它操作,当希望返回到前一个Task继续执行时,只需要再次通过主界面的Application launcher或者快捷方式启动这个Task的Root Activity便可返回其中止时的状态继续执行。
相对于Views、Windows、Menus和Dialogs而言,Activity是唯一可被记录在History stack中的数据,所以当你所设计的应用程序需要用户由A界面进入到次一级界面B,当完成操作后需要再次返回A,那么必须考虑将A看作为 Activity,否则将无法从历史堆栈中返回。
例如,假设你想在你的应用中让用户显示一些地方的街景。而这里已经有一个Activity可以做到这一点,因此,你的Activity所需要做的只是在Intent对象中添加必要的信息,并传递给startActivity()。地图浏览将会显示你的地图。当用户按下BACK键,你的Activity会再次出现在屏幕上。
对于用户来说,看起来好像是地图浏览与你的Activity一样,属于相同的应用程序,即便是它定义在其它的应用程序里,并运行在那个应用程序的进程里。
Android通过将这两个Activity保存在同一个Task里来体现这一用户体验。简单来说,一个Task就是用户体验上的一个“应用”。
它将相关的Activity组合在一起,以stack的方式管理(就是前面提到的Activity Stack),这就是Task。
在Android平台上可以将task简单的理解为幽多个Activity共同协作完成某项应用,而不管Activity具体属于哪个Application,
通过下图可以更清晰的理解Application、task、Activity三者之间的关系:
我们用过Android的手机就会知道有下面的场景:
假设我们首先在用IReader在看书,从选书到具体书的阅读界面,这是有好几个Activity。我们每一个点击的Activity都被放在阅读这个Task对应的Activity Stack中了,这可以放我们通过回退键返回每一个前面的Activity。
我们在阅读到一半时,想看看Sina微博,按Home键离开了IReader。
在Sina微博界面也是有多个Activity,我们一步到阅读界面。这时候我们每一个点击的Activity都被放在Sina微博这个Task对应的Activity Stack中了,这可以放我们通过回退键返回每一个前面的Activity。
我们这时候再回到IReader读书界面,原先的状态还是保留的。
显然每一个Task有自己的 Activity Stack。
Task就是这样为了方便人们使用手机而设置的,就像前面提到的场景Task可以跨Application。
下面这个图从另外一个角度描述了Application Task Activities的关系
Task通过Application launcher、Home screen的快捷方式或者 由 “Recent Tasks”(长时间按住Home键)最近使用过的Task记录中启动。"

扩展阅读:javascript download ... apk+apps+download ... android苹果版下载 ... xkdspap3.0下载安装 ... android免费下载网站 ... 十款app软件下载入口 ... 30000款免费软件下载 ... android下载安装app ... android asset禁止访问 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网