【发布时间】:2013-06-19 19:17:47
【问题描述】:
我目前正在尝试完成一个更大的应用程序的设计,该应用程序用于通过专有无线网桥(使用 CDC 的 USB 主机设备)远程控制无线设备。
但是现在我被困在如何在活动、服务/意图服务和工作线程之间进行正确的拆分.....
应用程序将由以下基础构成: - 各种 GUI 屏幕,这些屏幕都将是活动。我打算有一些线程来接收一些消息并在这些消息接收时通过处理程序相应地更新 GUI。 - 有没有采用这种方法的 cmets?
一个处理所有低级 USB/CDC 通信、消息序列化/反序列化以及通过队列将消息分流到应用程序的模块。这需要一个单独的线程。我不希望这个线程仅仅因为产生它的活动消失而被破坏——在我的书中它需要一个 IntentService——对吗?
一些以定时方式控制无线设备的序列播放器。这些将由我的一个活动触发,并且必须运行到最后而不会因按下主页按钮、启动其他活动等而停止。 - 这再次需要 IntentService .....对吗?
状态模块在接收到来自低级模块的消息时更新一些“全局”数据结构(可能是数据库)。在这里我很困惑......这可能只是我主要活动中的一个工作线程 - 还是我正在查看第三个 IntentService?
将所有内容包含在一个服务中,然后在需要的地方添加线程会更好吗?
对不起,我的菜鸟 - 对于上个世纪一直在编写非 GUI 背景任务的 C++ 程序员来说,Android 很难。
提前致谢!!!
【问题讨论】:
标签: android android-activity android-service