-
Notifications
You must be signed in to change notification settings - Fork 207
feat: iOS TurboDisplay optimize realize #896
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
feat: iOS TurboDisplay optimize realize #896
Conversation
c61dca5 to
04159e0
Compare
core-render-ios/Handler/KuiklyTurboDisplay/KRTurboDisplayCacheManager.m
Outdated
Show resolved
Hide resolved
core-render-ios/Handler/KuiklyTurboDisplay/KRTurboDisplayCacheManager.m
Outdated
Show resolved
Hide resolved
core-render-ios/Handler/KuiklyTurboDisplay/KRTurboDisplayCacheManager.m
Outdated
Show resolved
Hide resolved
core-render-ios/Handler/KuiklyTurboDisplay/KRTurboDisplayCacheManager.m
Outdated
Show resolved
Hide resolved
core-render-ios/Handler/KuiklyTurboDisplay/KRTurboDisplayProp.m
Outdated
Show resolved
Hide resolved
core-render-ios/Handler/KuiklyTurboDisplay/KuiklyTurboDisplayRenderLayerHandler.m
Show resolved
Hide resolved
core-render-ios/Handler/KuiklyTurboDisplay/KuiklyTurboDisplayRenderLayerHandler.m
Outdated
Show resolved
Hide resolved
| newNodeTree:newNodeTree | ||
| diffPolicy:KRRealFirstScreenDiffEventReplay]; | ||
|
|
||
| // 第二次diff-view - 阶段2:在 Kuikly 线程队列末尾添加任务,等待跨端侧渲染指令全部到达后执行延迟渲染 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
异步任务执行前,能确认跨端侧渲染指令全部到达了吗
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
目前已验证,回放事件所产生的渲染指令在diff之前全部到达端侧
|
|
||
| - (NSString *)extraCacheKeyFromMainCacheKey:(NSString *)mainCacheKey { | ||
| // kuikly_turbo_display_9xxx.data -> kuikly_turbo_display_extra_xxx.json | ||
| NSString *hash = [mainCacheKey stringByReplacingOccurrencesOfString:@"kuikly_turbo_display_9" withString:@""]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
建议kuikly_turbo_display_9提为公共串常量,在mainCacheKey生成的地方也使用,这样可以避免它将来变化后这里不再匹配
core-render-ios/Extension/KuiklyRenderViewControllerBaseDelegator.h
Outdated
Show resolved
Hide resolved
| @interface KRTurboDisplayConfig : NSObject | ||
|
|
||
| /** @brief Diff-DOM 模式 默认为 KRDiffDOMModeStructureAware(新模式,支持结构变化)*/ | ||
| @property (nonatomic, assign) KRDiffDOMMode diffDOMMode; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
config创建后还允许修改的吗?
如果成员在过程中发生改变会如何?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
已通过修改BaseDelegator中turboDisplayConfig方法,像框架返回的是业务定义的config实例的深拷贝副本,业务无法再对框架内的实例发生修改。
# Conflicts: # core/src/commonMain/kotlin/com/tencent/kuikly/core/pager/PagerData.kt
…fication scenarios
00e03b0 to
f4e31bb
Compare
feat: iOS TurboDisplay optimize realize