【发布时间】:2010-11-09 18:44:17
【问题描述】:
我有一项服务可以发送带有定时任务的通知。我需要此服务在应用程序生命周期之外运行,但我只需要在应用程序生命周期内访问服务功能。本地服务是否足够,还是我需要实施 AIDL? 谢谢。
【问题讨论】:
-
本地服务已经足够好了,但 Commonsware 会过来告诉你为什么保持这样一个长期运行的服务是个坏主意。
标签: android android-service aidl
我有一项服务可以发送带有定时任务的通知。我需要此服务在应用程序生命周期之外运行,但我只需要在应用程序生命周期内访问服务功能。本地服务是否足够,还是我需要实施 AIDL? 谢谢。
【问题讨论】:
标签: android android-service aidl
我有一项服务会发送定时任务通知。
我希望你的意思是AlarmManager和IntentService,这样你的服务只在内存中尽可能短的时间,足以做一些工作,提出Notification,然后走开.不要编写试图永远存在的服务,因为那是不可能的——用户或操作系统会终止你的服务。
本地服务是否足够,还是我需要实施 AIDL?
通过问这个问题,我相信您有更基本的问题,例如没有使用AlarmManager 和IntentService 进行定期工作。您的 raise-a-Notification-periodically 服务不应运行,因此不应有您尝试访问的“服务功能”。
【讨论】:
您没有“实现 AIDL” - AIDL(android 接口定义语言)是一种推荐但非强制性的便利/抽象机制,用于生成实现 Binder RPC 接口所需的代码,这是推荐但不仅是通信方式提供服务。
【讨论】: