编译iOS Telegram碰到的几个问题

Telegram iOS开源路径:https://github.com/TelegramMessenger/Telegram-iOS
Bazel:https://github.com/bazelbuild/bazel/releases

整个编译过程,主要以Telegram的操作命令行为主,本文只记录一些报错点

代码不完整导致的未知错误

推荐使用SourceTree拉取源码,项目包含了很多submodules,在国内拉取,最常见的就是主项目拉取成功,但是部分submodules没有拉取下来,最后会造成很多未知错误。
submodules有很多,需要每一个submodules都能双击打开git详情页,这样可以确保所有的代码都拉取成功了!


submodules列表

Xcode版本不符

version.json文件包含APP版本号、Bazel版本号、Xcode版本号。不建议修改Bazel版本号,Xcode可以修改小版本,但是不要跨越大版本号


version.json文件

打包报错:not inside workspace

Telegram项目存储路径不可以包含中文


报错

修改variables.bzl文件

variables.bzl修改注意事项:
telegram_aps_environment对应的内容'development'、'production'
telegram_enable_siri、telegram_enable_icloud、telegram_enable_watch = True这三项是代表是否开启拓展,如果你要生成并调试拓展的项目,这三项必须为True


variables.bzl

关于描述文件

项目需要的描述文件比较多,其中Telegram.mobileprovision为主描述,这个描述一定要包含App Group、iCloud、apns、内购权限,如果怕麻烦,生成描述的时候,可以把所有的权限都勾上。
其他的描述,都按照普通APP描述去创建就可以,其中BroadcastUpload需要跟主项目关联App Group关系。


描述文件夹

编译过程还碰到很多问题,后续想起来再更……

你可能感兴趣的:(编译iOS Telegram碰到的几个问题)