• 全国 [切换]
  • 二维码
    速企网

    手机WAP版

    手机也能找商机,信息同步6大终端平台!

    微信小程序

    微信公众号

    当前位置: 首页 » 行业新闻 » 热点新闻 » 正文

    基于Telegram二次开发 --- 打包篇

    放大字体  缩小字体 发布日期:2024-12-24 05:58:59   浏览次数:1  发布人:23b7****  IP:124.223.189***  评论:0
    导读

    在 环境篇 ,我们在 步骤3 生成了一个 telegram-configuration 的文件夹,打开 telegram-configuration 文件夹,如图所示:image.pngprovisioning:真机运行以及打包 ipa 所需描述文件存放的文件夹 variables.bz:bazel构建项目时的配置 我们需要更改的就是 provisioning 文件夹和 variables.b

    在 环境篇 ,我们在 步骤3 生成了一个 telegram-configuration 的文件夹,打开 telegram-configuration 文件夹,如图所示:




    image.png

    provisioning:真机运行以及打包 ipa 所需描述文件存放的文件夹
    variables.bz:bazel构建项目时的配置

    我们需要更改的就是 provisioning 文件夹和 variables.bzl 配置文件


    1、打开 variables.bzl 配置文件

    telegram_bundle_id = "xxx.xxxxx.xxxxxx" telegram_api_id = "8" telegram_api_hash = "7245de8e747a0d6fbe11f7cc14fcc0bb" telegram_team_id = "xxxxxxxx" telegram_app_center_id = "0" telegram_is_internal_build = "true" telegram_is_appstore_build = "false" telegram_appstore_id = "xxxxxxxxx" telegram_app_specific_url_scheme = "tg" telegram_aps_environment = "development" telegram_enable_siri = True telegram_enable_icloud = True telegram_enable_watch = True

    • telegram_bundle_id:自己项目的 Bundle ID
    • telegram_team_id:开发者账号的 teamID
    • telegram_is_internal_build: dev 包填 true,appstore 包填 false
    • telegram_is_appstore_build: dev 包填 false,appstore 包填 true
    • telegram_appstore_id:上架后 AppStoreID,未上架可以不用改
    • telegram_aps_environment:打包模式,dev 包填 development,appstore 包填 production
    • telegram_enable_siri:是否需要配置 siri 功能
    • telegram_enable_icloud:是否需要配置 iCloud 功能
    • telegram_enable_watch:是否需要配置 watch App

    根据自己需求填写完毕后,我们接着进行下一步


    2、打开 provisioning 文件夹




    image.png


    我们能看到这就是打包时所需要的描述文件,这就需要我们到 苹果开发者中心 去生成对应的描述文件(如何生成对应的描述文件?看这个 issues),描述文件下载下来以后需要保持跟此文件夹的名字保持一致,然后将此文件夹的描述文件逐个替换;
    如果 variables.bzl 文件中配置的是 dev 包,替换的就应是 Development 描述文件,配置 appstore 包,替换的就应是 App Store 描述文件

    如果你不需要 watchApp 相关功能,你可以在 variables.bzltelegram_enable_watchFalse,然后将 provisioning 文件夹 WatchApp.mobileprovisionWatchExtension.mobileprovision 这两项删除,同时打开 BUILD 删除掉文件中对应的这两项;其他两个以此类推。


    3、真机运行

    cd Telegram-iOS

    python3 build-system/Make/Make.py \ --cacheDir="$HOME/telegram-bazel-cache" \ generateProject \ --configurationPath="$HOME/telegram-configuration" \ --disableExtensions

    跟生成 xcode 项目命令相比,少了一个操作指令

    --disableProvisioningProfiles

    这个指令是忽略掉描述文件构建 Xcode 项目,而我们已经配置好了我们的描述文件,所以不要执行忽略指令,让脚本根据我们的描述文件重新构建工程。

    执行完毕,我们打开xcode来到这里:




    image.png


    可以看到 Bundle Identifier 是我们前两步配置的 Bundle ID,可以勾选 Automatically manage signing 让 Xcode 自动管理配置文件,也可以手动在 Provisioning Profile 选择对应的描述文件;设置完毕就可以在真机上运行了。


    4、打包ipa

    cd Telegram-iOS

    python3 build-system/Make/Make.py \ --cacheDir="$HOME/telegram-bazel-cache" \ build \ --configurationPath="$HOME/telegram-configuration" \ --buildNumber=100001 \ --configuration=release_universal

    • --buildNumber:熟悉开发上架的都应该知道这是啥,传 appstore 的时候同版本自增就行
    • --configuration:打包 ipa 没特殊要求的话,就是默认 release_universal,如果要打 debug 包的话,就改为 debug_universal

    5、ipa包位置
    打包成功后,打开 Telegram-iOS 然后根据终端输出的路径去找 ipa 包




    image.png

     
    (文/匿名(若涉版权问题请联系我们核实发布者) / 非法信息举报 / 删稿)
    打赏
    免责声明
    • 
    本文为昵称为 23b7**** 发布的作品,本文仅代表发布者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,发布者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们154208694@qq.com删除,我们积极做(权利人与发布者之间的调停者)中立处理。郑重说明:不 违规举报 视为放弃权利,本站不承担任何责任!
    有个别老鼠屎以营利为目的遇到侵权情况但不联系本站或自己发布违规信息然后直接向本站索取高额赔偿等情况,本站一概以诈骗报警处理,曾经有1例诈骗分子已经绳之以法,本站本着公平公正的原则,若遇 违规举报 我们100%在3个工作日内处理!
    0相关评论
     

    (c)2008-现在 sud.com.cn All Rights Reserved.