【问题标题】:Android Applications Without Any User Interaction没有任何用户交互的 Android 应用程序
【发布时间】:2011-11-04 14:24:24
【问题描述】:

我想编写一个没有任何用户交互的 Android 应用程序。自然,几乎所有的例子,A​​ndroid 中的设计原则都包括一个活动,即一个用户界面。

你知道创建非 ui Android 应用程序的好资源吗?欢迎提供任何信息;示例代码、设计原则、最佳实践等。

我的意思是我正在寻找的不仅仅是从广播接收器启动服务。 android 中的所有内容都根据用户界面、消息传递结构、异步任务如何处理工作线程中的长进程以及更改主线程中的 gui 等进行设计。在我看来,Android 中没有 UI 的应用程序是某种 hack,但这是我需要的。所以我想知道你是如何破解的?

【问题讨论】:

  • 这是另一个问题提到的解决方案:Android Activity with no GUI
  • @SpeedBirdNine:谢谢,已编辑问题。
  • 为什么不能从广播接收器启动服务完全满足您的需求?据我所知,您要求的是服务的功能,所以请使用服务。

标签: android


【解决方案1】:

服务应该能够做任何你需要的事情,但我想你的一些困惑在于以正确的方式启动服务,而没有 UI。

如果您在某个系统事件上启动服务,只需创建一个 BroadcastReceiver,并为相关系统生成的意图注册。通过这个接收器,您可以启动服务,您的应用程序将在后台运行。

如果您需要手动运行(用户点击您的图标),只需创建一个非常简单的活动

class DummyActivity extends Actiity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    Intent intent = new Intent(this, MyService.class);
    startService (intent);
    finish();
    }
}

如果您发现您的应用程序被系统杀死,您将需要更多地研究前台服务。由于您没有 UI,系统更有可能终止您的服务。

【讨论】:

    【解决方案2】:

    根据您希望应用程序执行的操作,您可以查看Services。基本上它们是没有 UI 的活动。

    【讨论】:

    • 是的,我肯定会使用服务,但即使不使用主要活动并绕过它也是一个问题,所以我正在寻找社区的经验。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-10
    相关资源
    最近更新 更多