如何編譯 Telegram-iOS 並在 TestFlight 上分發

2020-10-30 13:43:04 +08:00
 rix

我有 C/C++ 編譯經驗,但是第一次接觸 Objective-C/Swift 和 iOS 相關的編譯。

我按照官方給出的 Reproducible Builds 指引可以編譯 7.1.1 的 IPA 。跟官方指引不同的地方在於我根據源碼中的提示使用了 XCode 11.5 而不是 11.2.1 。

然後我嘗試用 altool 上傳編譯好的 IPA 卻出現這樣的錯誤:

xcrun altool --upload-app -f build/Telegram_signed.ipa -t ios -u my@email.com
my@email.com's password:
2020-10-22 00:24:14.708 altool[63845:710730] CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary on line 1. Parsing will be abandoned. Break on _CFPropertyListMissingSemicolon to debug.
2020-10-22 00:24:14.921 altool[63845:710723] *** Error: Error uploading 'build/Telegram_signed.ipa'.
2020-10-22 00:24:14.923 altool[63845:710723] *** Error: code -22014 (Unable to validate your application. We are unable to create an authentication session.)

我想問問各位如何才能在 TestFlight 上分發自己編譯的 Telegram 呢?

至於爲什麼我要用 TestFlight 分發自己編譯的 Telegram,根本原因是我希望家人之間的聊天能搬到 Telegram 上進行,原因主要是因爲微信不給保存雲端記錄,很多以前的照片視頻如今都找不到了。Telegram 的話沒有這個問題,能更好地記錄家人之間的活動歷史。而大部分家人都沒有技術基礎,搞不來 富強 那一套,所以目前的想法就是自己編譯一個 Telegram,把服務器節點換成自己私有的,家人只要裝個 TestFlight 就能安裝,而不需要太多的配置操作。

有人說我可以指引他們配置 Telegram 內部的 MTProto,這點我試過了,當你還沒有帳號且沒有 富強 的時候,在歡迎界面會卡在 Start Messaging 處。這個有一定概率發生,有些人可以順利進入下一步,有些人就一直被卡在那一步,很不穩定。然而不進入下一步就無法設置 MTProto,所以這條路並走不通。

1634 次点击
所在节点    Telegram
8 条回复
FireFoxAhri
2020-10-30 13:57:59 +08:00
我也想过自己编译但是你把服务器节点换成自己的能连接吗
rix
2020-10-30 14:34:02 +08:00
@FireFoxAhri 服務器節點定義兼容 MTProto 節點
Hyseen
2020-10-30 15:44:30 +08:00
注册苹果开发者账号了吗?
rix
2020-10-30 16:38:22 +08:00
@Hyseen 有的,給了錢的,也創建了 App 了
paradoxs
2020-10-30 16:40:12 +08:00
搞不了的,tg 服务端部分不开源。 自己弄,难度很高。 要一个 一个功能对接。
rix
2020-10-30 16:44:46 +08:00
@paradoxs 不你理解錯了,我不是要搭私服。TG 官方的 MTProto 是專用的轉發代理,只要把 TG 原始服務器節點換成自建的 MTProto 節點就能達到 富強 的效果,而不需要建立私服
Elaine1989
2020-11-01 15:50:30 +08:00
沒遇見卡住的情況,客戶端在請求發送驗證碼失敗後會自動詢問代理
再說這東西登陸一次之後就不用弄了,用得著費這麼大勁嘛?
家裡人難道感覺每 90 天更新一次應用不煩的嘛?
rix
2020-11-03 02:22:20 +08:00
@Elaine1989 都說了這是有一定概率的。給你看看卡住的情況是怎樣的: https://imgur.com/Ntlx03h

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/720146

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX