我的android应用程序包含一套迷你应用程序。简而言之,主屏幕包含几个图标,每个图标用于迷你应用程序。当点击一个图标时,迷你应用程序就会启动。总之,我有4个迷你应用程序。所以你可以想象我的主屏幕就像主屏幕发射器。虽然这些迷你应用程序可以独立运行,但我希望用户能够通过身份验证。因此,在LoginActivity之前有一个MainActivity。
LoginActivity -> MainActivity ---> AppOneActivity
---> AppTwoActivity
---> AppThreeActivity
---> AppFourActivity (aka PresenceListActivity)我仍然不太确定任务(一组活动安排)的好处,所以我希望Android专家对我的设计决策提出意见:-
(1)我计划将属性finishOnTaskLaunch设置为LoginActivity.的true据我所知,一旦对登录进行了身份验证,我将导航用户到MainActivity,并希望LoginActivity消失。这比在活动中叫#finish好吗?如果没有任何额外的配置/代码,MainActivity会自动成为任务的根吗?
(2)其中一个迷你应用是IM客户端。PresenceListActivity将托管ChatActivity的许多实例(一对一的聊天会话,其好友列表中有一个主动的联系人)。我计划对ChatActivity使用默认的启动模式,因为每次聊天都应该由一个新实例来处理。听起来对吗?
(3)在AppOneActivity,AppTwoActivity等的上角将存在一个粘滞的导航条。我计划将clearTaskOnLaunch属性设置为对所有它们都为真。据我所知,每当我计划推出任何一个迷你应用程序时,我都应该清除堆栈。他们的launchModes也将是singleTask。我在正确的道路上吗?
(4)最后,我不太明白如何读取亚行shell虚拟活动的输出。例如
Task{10 com.me.rnd.exit}
clearOnBackground=false numActivities=1
affinity=com.me.rnd.exit
lastActiveTime=5513102 (inactive for 5s)
History #1: .....
Task{2 com.android.launcher}
clearOnBackground=true numActivities=1 rootWasReset=true
affinity=com.android.launcher
lastActiveTime=5512949 (inactive for 6s)
Running #0:有时在任务下面,您会看到History,而在其他运行的中,这意味着什么?更奇怪的是,有时我有两个History在一个任务下。
发布于 2009-09-29 00:24:57
(1)我计划将属性finishOnTaskLaunch设置为LoginActivity的true。据我所知,一旦对登录进行了身份验证,我将导航用户到MainActivity,并希望LoginActivity消失。这比在活动中叫#finish好吗?如果没有任何额外的配置/代码,MainActivity会自动成为任务的根吗?
我建议从一开始就将MainActivity作为根活动。
首先,MainActivity将创建LoginActivity或LoginDialog,并将结果返回给MainActivity。
这样,您就不必弄清楚如何将MainActivity从子活动移动到根活动。
但是,如果这对您的代码有太多的干扰,那么请不要考虑我的建议。
干杯,
约瑟夫
https://stackoverflow.com/questions/1486281
复制相似问题