Android三重混合应用程序

Android三重混合应用程序,android,android-widget,Android,Android Widget,我正在尝试为Android创建一个应用程序。我的应用程序需要是一个在后台运行的服务,一个用于配置服务的UI应用程序,以及一个用于关闭和打开后台服务的桌面小部件 我的问题是,安卓系统通常是如何做到这一点的?我需要3个单独的应用程序吗?或者我可以创建一个包含服务、UI和小部件的应用程序吗?我知道有这样的应用程序,比如Weather.com,它有一个桌面小部件、一个位于通知区域的服务和一个用于配置服务和小部件的UI应用程序。Weather.Com是一个从市场上下载的软件,所以我假设这可以在一个应用程序

我正在尝试为Android创建一个应用程序。我的应用程序需要是一个在后台运行的服务,一个用于配置服务的UI应用程序,以及一个用于关闭和打开后台服务的桌面小部件


我的问题是,安卓系统通常是如何做到这一点的?我需要3个单独的应用程序吗?或者我可以创建一个包含服务、UI和小部件的应用程序吗?我知道有这样的应用程序,比如Weather.com,它有一个桌面小部件、一个位于通知区域的服务和一个用于配置服务和小部件的UI应用程序。Weather.Com是一个从市场上下载的软件,所以我假设这可以在一个应用程序中完成。有人能给我指一个教程或代码示例吗?

当然只有一个应用程序。 搜索appwidget教程,有很多。您将在一个类中处理小部件的广播。另一个类用于GUI内容(至少一个),另一个类用于服务。您在清单中声明每个部分,因此您的GUI将有一个“活动”声明,您的服务是“服务”,小部件是“接收者”:


当然只有一个应用程序。 搜索appwidget教程,有很多。您将在一个类中处理小部件的广播。另一个类用于GUI内容(至少一个),另一个类用于服务。您在清单中声明每个部分,因此您的GUI将有一个“活动”声明,您的服务是“服务”,小部件是“接收者”:



为什么投票被否决?可能是因为你似乎没有自己搜索太多。@Earl-告诉你,伙计,马克是对的。我有时喜欢把答案公开几天,这样我就能看到各种各样的答案。“这并不意味着我就完全无视它们。”厄尔——还有一件事。仅仅因为我多次登录这个网站并不意味着我在这里检查我的答案。我在这里读的是对某人问题的回答,与我自己的问题无关。这并不意味着我坐在电脑前,精神病患者正在刷新我的浏览器。很好,正如我所怀疑的。所以我们都可以放松一下,过一个愉快的周末!我把问题投了更高的票,所以现在它是零:)为什么这个问题被否决了?也许是因为你似乎没有自己搜索太多。@Earl-告诉你,伙计,马克是对的。我有时喜欢把答案公开几天,这样我就能看到各种各样的答案。“这并不意味着我就完全无视它们。”厄尔——还有一件事。仅仅因为我多次登录这个网站并不意味着我在这里检查我的答案。我在这里读的是对某人问题的回答,与我自己的问题无关。这并不意味着我坐在电脑前,精神病患者正在刷新我的浏览器。很好,正如我所怀疑的。所以我们都可以放松一下,过一个愉快的周末!我把问题的票数调高了,所以现在是零:)别费心回答他的问题,他不再接受这些问题了——从7月22日起就不再接受了——所以你不会得到学分。我有一个非常详细的例子,来自应用商店的一个应用程序,他接受了建议,没有留下支票,所以我把它删除了。@Earl-你知道,我从来没有看到你关于这个问题的答案。但马克确实回答了,所以我会认为这是对的。别费心回答他的问题,他不再接受这些问题了——从7月22日起就不再接受了——所以你不会得到学分。我有一个非常详细的例子,来自应用商店的一个应用程序,他接受了建议,没有留下支票,所以我把它删除了。@Earl-你知道,我从来没有看到你关于这个问题的答案。但是马克在这里回答了,所以我会把它标记为正确的。
<activity android:name="MainActivity" />

<service android:name="MainService" />

<receiver 
    android:name="MyWidget" 
    android:label="MyWidget Desc" >
    <intent-filter>
        <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
    </intent-filter>
    <meta-data 
        android:name="android.appwidget.provider" 
        android:resource="@xml/widget_info" 
        />
</receiver>