Android singletop singleinstance 和 singletask

标签 android single-instance

我在为不同的 Activity 实现不同类型的启动模式时遇到了设计问题。我有 5 个 Activity 。

  1. 视频列表

  2. 视频详情

  3. 收藏夹列表

  4. 视频搜索

  5. 视频播放器

当用户启动应用程序时,它会转到显示视频列表的 VideoList。单击任何视频将它们带到视频详细信息。该页面中有两个按钮。播放按钮和添加到收藏夹按钮。我在所有页面上都有一个页脚栏。页脚栏包含三个图像按钮。

1 HOME - 将用户带到首页 - 视频列表页面

2 FAVORITES LIST - 显示收藏视频列表。单击任何一个视频都会将用户带到视频详细信息

3 视频搜索 - 用户可以按艺术家姓名搜索视频。单击任何一个视频都会将用户带到视频详细信息

我的问题是,如果我将所有 Activity 设置为标准,它会占用大量内存。因为用户可以从每个页面打开新 Activity 。

<强>1。我的选择是什么?

<强>2。我可以使用 SingleInstance/SingleTop(针对所有 Activity 或仅针对某些 Activity )吗?

<强>3。我尝试在所有 Activity 中使用 SingleTop。它适用于大多数情况。除了一个。

一个。用户打开应用。

单击视频列表页面中的项目之一。它打开一个新 Activity - VideoDetail

在 VideoDetail 页面中,用户单击收藏夹列表图像按钮,这会打开一个新 Activity FavoritesList。

当用户单击收藏夹中的其中一个视频时,它不会打开新的视频详细信息,而是关闭收藏夹列表并返回到详细信息页面。

请帮忙

提前致谢

马币

最佳答案

如果您想在此实例中使用 SingleTop,则需要将加载视频详细信息的代码从 onCreate 移至 onResume,因为 VideoDetail Activity 仅在创建时一次,然后在 intent 尝试再次启动它时恢复。

关于Android singletop singleinstance 和 singletask,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2308942/

相关文章:

android - 导航查看菜单项,例如 Google Play 商店

java - 如何修复 'java.lang.ClassCastException: Activity must implement fragment' s 回调'

wix - 是否可以同时只运行一个 WiX msi 实例?

Java在设置组件大小时重用Dimension对象

java - Java 中静态变量的问题

android - IntentService STICKY 已销毁但服务在 Android 2.3.4 中保持记录数据

android - Paytm 集成在单击登录/注册时显示白屏,如果尝试使用借记卡付款则显示错误

Java - 将对象类型转换为字符串类名称对象

python - Django "Singleton model"存储用户设置

java - 如何重新打开java应用程序launch4j单实例