android - 单个活动会导致首次加载延迟吗?
问题描述
我对android开发很陌生,正在阅读有关片段及其利润的文章,但阅读了片段的生命周期,我了解到“所有片段都将在创建主机活动时创建,当主机活动进入时,所有片段都将进入启动状态start state 和 ..." ,作为回报,在处理多个活动时,每个活动都独立启动。
现在我提出的问题是:
由于 Fragment 的生命周期行为,当 Activity 中存在太多 Fragment(比如说超过 20 个)时,是否会导致应用启动时出现很大延迟?
当应用程序结构复杂导致创建多个片段时,是否建议使用单活动应用程序?
解决方案
经过一些测试和记录后,我意识到在使用导航的特殊情况下,并非所有片段都同时加载,但只有那些是必需的,例如在我的情况下,我只有一个由导航处理的片段,然后当 Activity 运行时,仅创建、启动和恢复 Home Fragment 而不是任何其他 Fragment,因此这不仅不会导致延迟,而且会提高整体应用程序性能,因为 Fragment 比 activity 轻得多。所以我建议使用 Single Activity App 和导航
推荐阅读
- azure-ad-b2c - 在集合中找不到 ID 为“alternativeSecurityId”的声明 - 子旅程自定义策略
- python - Python程序第一次执行耗时太长?
- c# - Polly CircuitBreakerAsync 没有按我的预期工作
- php - 您如何使用 Woocommerce 禁用私人产品上“添加到购物车”的重定向?
- rust - 接收通过引用传递的参数的异步函数向量
- azure - 如何使用 Azure AD B2C 保护 Blazor Wasm 应用访问的 Azure 函数?
- python - 选择 html 文本代码的特定文本部分
- java - java.lang.IllegealStateException:未设置位置
- go - 循环结构并检查嵌套以查找匹配值
- git - 我应该如何正确压缩以前在 master 上推送的提交?