美文网首页
基于Telegram二次开发 --- App次级页面逻辑

基于Telegram二次开发 --- App次级页面逻辑

作者: 试图与自己和解 | 来源:发表于2022-11-28 20:05 被阅读0次

分析版本:Telegram 8.7.1

Telegram App.png

一、 联系人模块:ContactsController

image.png
  • DeviceContactInfoController: 导航栏 Navigation 右上角按钮,调用系统的创建联系人。
  • PeersNearbyController: cell Find People Nearby 的响应界面,它的cell Create a Local Group 则是跳转到 PermissionController 中间页,进入创建当前位置群聊的业务逻辑。
  • InviteContactsController: cell Invite Friends 的响应界面,邀请业务相关。

二、消息列表模块:ChatListController

image.png
  • ComposeControllerl: 导航栏 Navigation 右上角按钮响应控制器,功能为创建新的消息;其页面有三个 cell 响应事件。
    New Group: 对应控制器 ContactMultiselectionController
    New Contact: 对应控制器 DeviceContactInfoController ,创建联系人公用控制器。
    New Channel: 对应控制器 PermissionController ,中间页公用展示控制器,进入创建 Channel 业务逻辑。
  • ChatController: 消息列表被点击,进入聊天消息页面,核心控制器,里面16000行代码,各种逻辑嵌套,高度耦合,极难阅读区分对应功能模块; 点击导航栏 Navigation 右上角按钮,进入 PeerInfoScreen 对应场景。

三、设置模块:PeerInfoScreen

image.png

以默认设置模块为例:

  • @ Set Username: 对应 UsernameSetupController ;设置用户名。
  • Saved Messages: 对应 ChatController ;收藏夹。
  • Recent Calls: 对应 CallListController ;最近呼叫。
  • Devices: 对应 RecentSessionsController ;设备。
  • Chat Folders: 对应 ChatListFilterPresetListController ;对话文件夹。
  • Notifications and Sounds: 对应 NotificationsAndSoundsController ;通知和声音。
  • Privacy and Security: 对应 PrivacyAndSecurityController ;隐私和安全。
  • Data and Storage: 对应 DataAndStorageSettingsController ;数据和存储。
  • Appearance: 对应 ThemeSettingsController ;外观。
  • Language: 对应 LocalizationListController ;语言。
  • Stickers and Emoji: 对应 InstalledStickerPacksController
  • Ask a Question: 对应 ChatController ;我有疑问。
  • IM FAQ: 跳转web链接Url ;常见问题。

相关文章

网友评论

      本文标题:基于Telegram二次开发 --- App次级页面逻辑

      本文链接:https://www.haomeiwen.com/subject/dsdkfdtx.html