## Monogram:基于 Kotlin 和 Jetpack Compose 的开源 Android Telegram 客户端
开发者发布了 Monogram——一款非官方的 Android Telegram 客户端。该项目使用 Kotlin、Jetpack Compose 和 TDLib。代码在 GitHub 上以 GPLv3 许可发布。该客户端专注于原生 Material Design 3、高性能以及最低资源消耗。作者强调活跃开发、频繁更新,但可能存在 bug。
创建该项目的动机源于官方客户端的问题:过于复杂的单体代码、源码发布延迟,以及有争议的重设计,该设计融入了 iOS 元素,如背景模糊和半透明效果。Monogram 通过确保透明度和遵守 Android 标准来解决这些问题。
技术基础与关键特性
网络、MTProto 和端到端加密由 C++ 编写的 TDLib 处理。客户端逻辑使用现代 Android 工具构建,以优化性能。
关键特性:
- 使用 Jetpack Compose 和 Material Design 3 构建 UI:内置媒体组件减少 CPU/GPU 负载。
- 使用 MapLibre 渲染地图和地理数据。
- 会话保护:使用系统生物识别进行本地保护。
这带来了流畅的动画效果,并比单体替代方案更省电。
流行替代客户端的风险
RKS Global 的研究发现了 8 个客户端的漏洞。大多数客户端将数据发送到俄罗斯,或使用 Firebase Analytics,违反官方 Telegram 政策。
测试项目:
- Telegram Official。
- Telegram X。
- Plus Messenger。
- Nekogram。
- Graph Messenger。
- Telega。
- iMe。
- F-Droid (Forkgram, Mercurygram)。
问题:
- Telega、Graph Messenger、iMe 将数据发送到俄罗斯服务器。
- Plus Messenger、Graph Messenger、iMe、Nekogram 包含 Firebase Analytics(Google 会跟踪使用情况)。
- 广告 SDK:Graph Messenger(6 个)、iMe(15+ 个)、Plus Messenger(1 个)。Telega 和 iMe 中有 VK 痕迹。
- Telega 将 MTProto 服务器替换为其在俄罗斯联邦的代理服务器。
官方客户端禁用了 Firebase,但分支版本重新启用了它。
关键点
- Monogram 使用 TDLib 实现安全的 MTProto,避免自定义代理。
- 完全遵守 Material Design 3,不抄袭 iOS 风格。
- 以 GPLv3 开源,确保透明度。
- 资源使用最小化:Compose + 原生组件。
- 活跃开发,但存在 bug——针对中高级开发者。
开发者前景
该项目非常适合在真实场景中学习 Jetpack Compose。架构模块化,不像官方的单体结构。MapLibre 集成展示了无需供应商锁定的 Google Maps 替换方案。
对贡献者:重点关注 TDLib 集成的性能和生物识别。测试 MTProto 边缘情况至关重要,因为分支版本饱受批评。
— Editorial Team
暂无评论。