我目前正在努力完成一个更大的应用程序的设计,该应用程序通过专有无线桥接器和使用CDC的USB主机设备远程控制无线设备。
但是现在我卡在了如何正确分离Activities、Services/IntentServices和工作线程上......
这个应用程序将由以下基础组成: -各种GUI屏幕,当然所有的屏幕都将是Activities。我打算有一些线程来接收一些消息,并通过处理程序相应地更新GUI。对此有什么建议吗?
-处理所有低级USB/CDC通信、消息序列化/反序列化并通过队列将消息分发到应用程序中的模块。这需要一个独立的线程。我不希望这个线程因为产生它的Activity消失而被销毁——这就需要一个IntentService——对吗?
-一些序列播放器,将以计时方式控制无线设备。这些将从我的一个Activity触发,并且必须一直运行到结束,不受主屏幕按键、启动其他活动等影响。再次需要一个IntentService.....对吗?
-一个状态模块,在从低级模块接收消息后更新一些“全局”数据结构(可能是数据库)。在这里我感到困惑......这只是我主Activity中的一个工作线程,还是我需要第三个IntentService?
把所有东西都放在一个服务中,然后根据需要添加线程,这样做会更好吗?
对不起我的新手上路——Android对于那些过去一个世纪一直在编写非GUI后台任务的C++程序员来说很难。
提前感谢您!
但是现在我卡在了如何正确分离Activities、Services/IntentServices和工作线程上......
这个应用程序将由以下基础组成: -各种GUI屏幕,当然所有的屏幕都将是Activities。我打算有一些线程来接收一些消息,并通过处理程序相应地更新GUI。对此有什么建议吗?
-处理所有低级USB/CDC通信、消息序列化/反序列化并通过队列将消息分发到应用程序中的模块。这需要一个独立的线程。我不希望这个线程因为产生它的Activity消失而被销毁——这就需要一个IntentService——对吗?
-一些序列播放器,将以计时方式控制无线设备。这些将从我的一个Activity触发,并且必须一直运行到结束,不受主屏幕按键、启动其他活动等影响。再次需要一个IntentService.....对吗?
-一个状态模块,在从低级模块接收消息后更新一些“全局”数据结构(可能是数据库)。在这里我感到困惑......这只是我主Activity中的一个工作线程,还是我需要第三个IntentService?
把所有东西都放在一个服务中,然后根据需要添加线程,这样做会更好吗?
对不起我的新手上路——Android对于那些过去一个世纪一直在编写非GUI后台任务的C++程序员来说很难。
提前感谢您!