我想做一个在后台运行并监控质量的服务。我想到了一个向 Activity 公开 aidl 接口(interface)的单独服务,aidl 将具有一些 Activity 可以调用的与监视器相关的函数。举例说明我的服务应该如何工作,想一想在后台运行并等待来电的 ebuddy 应用程序(我相信这是由服务完成的)。
- 这是解决我的问题的正确方法吗?
- 我目前能够创建我的服务并使用 aidl 界面,但是当我关闭 Activity 时(当我按下后退按钮时)服务也被破坏了!如何避免这种情况?
- 我想像 ebuddy 一样做一个持续通知,怎么做?我试过使用通知管理器但没有成功,我只能在通知部分添加。
最佳答案
好的,所以要发出通知,您只需要做
mNotification = new Notification( icon, text, when );
mNotification.flags |= Notification.FLAG_ONGOING_EVENT;
并使用通知管理器进行通知。
如果有人需要在后台运行某些东西(不是后台线程),那么你必须扩展服务类,你必须绑定(bind)到服务并获得一个 stub ,然后你可以调用 stub 通过它的 aidl 公开的方法文件。有关更多信息,您可以查看 SDK 附带的远程服务示例,它位于:/src/com.example.android.apis/app
关于android服务在后台运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3352848/