Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 活动本质上是应用程序的文件/页面吗?_Android - Fatal编程技术网

Android 活动本质上是应用程序的文件/页面吗?

Android 活动本质上是应用程序的文件/页面吗?,android,Android,在决定是否创建活动时,我是否应该这样看待它 当然!没有义务在您的应用程序中包含活动,因为您的应用程序只能包含一个服务。。。除非你愿意,否则不需要进入AIDL 问题是,如何使应用程序运行。当您使用活动创建应用程序时,您在清单中添加了一个意图过滤器,该过滤器使活动可从启动器启动。如果没有活动,你必须找到另一种方式开始 不过,这很容易做到。只需从其他程序中激发一个意图,如下所示: startService(new Intent("my.service.intent")); <servi

在决定是否创建活动时,我是否应该这样看待它

当然!没有义务在您的应用程序中包含活动,因为您的应用程序只能包含一个服务。。。除非你愿意,否则不需要进入AIDL

问题是,如何使应用程序运行。当您使用活动创建应用程序时,您在清单中添加了一个意图过滤器,该过滤器使活动可从启动器启动。如果没有活动,你必须找到另一种方式开始

不过,这很容易做到。只需从其他程序中激发一个意图,如下所示:

startService(new Intent("my.service.intent"));
    <service android:name=".SomeService" >
      <intent-filter>
        <action android:name="my.service.intent"/>
      </intent-filter>
。。。服务注册到您的清单中,如下所示:

startService(new Intent("my.service.intent"));
    <service android:name=".SomeService" >
      <intent-filter>
        <action android:name="my.service.intent"/>
      </intent-filter>

当然,如果应用程序和服务之间确实需要复杂的API,那么
startService
broadcastIntent
就有点笨重了。如果您需要更丰富的内容,您将需要查看AIDL和绑定服务。

一本书与一个应用程序(或任何程序)的比较过于狭隘。最好将应用程序与冰山进行比较

冰山的冰山一角(可见部分)就是活动,简单地说,就是眼睛能看到的东西


冰山的底部(在水中的部分)是底层代码、后台线程(进程,例如线程、服务…),简单地说,用户不知道的事情。

这是许多安卓开发人员提出和争论的问题,多年来观点不断演变,但根据你问的人,你仍然会得到主观的回答。活动可能是以这种方式开始的——作为封装构成更大任务一部分的特定页面的一种方式——因此它们的模型是堆栈

更“现代”的观点——这是谷歌Android开发人员的自以为是的观点——将单个(或更多)活动视为系统事件的挂钩,以及实现实际页面的一组片段的容器。这让我想起了单页web应用程序是如何构建的。您可以在此处了解更多信息:

如果你正在寻找一个初始的观点,那是一个很好的起点,你可以从那里发展自己的观点


我倾向于持中间立场。我倾向于将我的应用程序分为多个功能部分(例如设置向导、用户管理、主页等),每个功能部分通常都有一个活动,其中包含多个表示页面的片段

否。活动是管理屏幕上当前视图的对象。我认为这是一个更高级的问题答案。不过,如果他遇到服务,这将有助于他理解服务。我认为活动是一个工作流。它可以映射到一个页面,可以映射到多个页面(通过片段或其他方法),也可以映射到多个页面(例如,显示抽象数据类型的活动)。