欲望以提升热忱,毅力以磨平高山!|

navyum

园龄:4个月粉丝:0关注:0

electron

electron 打包 mac程序环境配置:

需要准备的内容:

  1. appleid(账号)
  2. apple app password(app专用密码)
  3. apple development cert(开发者证书)

appleid(apple账号)

使用自己的appleid即可 注册地址:https://appleid.apple.com/

设置apple app专用密码

  1. 登陆刚申请好的appleid。登陆地址:https://appleid.apple.com/account/manage
  2. 点击 【APP 专用密码】,设置一个密码 ⚠️:设置完成后立即保存到本地文件,后面无法再次查看,只能重新创建。 Img

申请开发者证书:

  • 方式一:使用Mac Xcode
    1. Apple store 安装 Xcode
    2. 打开xcode->preference
    3. 点击 accounts(未登录则需要登录前面申请的appleid)
    4. 点击 Manage Certificates,并申请证书 Img ⚠️:申请时设置的密码即后面需要用到的CSC_KEY_PASSWORD,需要保管好如果未设置,则后面CSC_KEY_PASSWORD设置为空字符串
    5. 申请完成后,右键申请的证书并导出pcks12证书,命名为developerID_application.p12 Img
  • 方式二:openssl申请并提交到官网
    • 加入 Apple Developer Program 地址
    • 本地生成证书
    openssl genrsa -out my.key 2048
    openssl req -new -sha256 -key my.key -out my.csr
    ⚠️:创建证书时设置的密码即后面需要用到的CSC_KEY_PASSWORD,需要保管好。如果未设置,则后面CSC_KEY_PASSWORD设置为空字符串。
    • 上传到开发者平台 地址
      • 选择:Developer ID Application
        • 如图:Img
      • 选择Previous SUB-CA,然后点击Choose File上传刚才的my.csr文件
        • 如图:Img
      • 下载最终证书文件,文件名为developerID_application.cer
        • 如图:Img
      • 通过shell进入到下载目录(Downloads),执行如下命令生成pkcs12证书及对应的base64字符串 bash openssl x509 -in developerID_application.cer -inform DER -outform PEM -out developerID_application.pem openssl pkcs12 -export -inkey ios.key -in developerID_application.pem -out developerID_application.p12

Electron 设置打包环境:

  • 本地构建:
    • 设置环境变量: bash ## 具体环境变量名称视你的项目而定 export CSC_LINK=$HOME/Downloads/developerID_application.p12 #设置你自己的对应目录 export CSC_KEY_PASSWORD="***" #设置你自己申请证书时输入的密码 export APPLEID="" # 你的appleid export APPLEPASSWD="" # 你的app专用密码
  • github actions 构建:
    • 打开项目的 Settings-> secrets and variables -> Actions -> New repository secret
    • 具体环境变量名称视你的项目而定
      • 添加 CSC_KEY_PASSWORD、CSC_LINK、APPLEID、APPLEPASSWD ❌:踩坑:CSC_LINK设置错误:
      • 问题1: CSC_LINK设置时需要将pcks12密钥做base64编码为字符串才能设置
      • 解决: openssl base64 -in developerID_application.p12 -out certificate-base64.txt
      • 问题2:
        • 情况:上面生成的base64文件字符串设置到github action报错:
          • Error: Unable to process file command ‘env’ successfully.
          • Error: Invalid format ’***’ Img
        • 分析:根据执行情况和错误可以发现,生成的证书base64字符串有大量换行,导致通过echo 导入 GITHUB_ENV变量失败
        • 解决方案:
          • 去除base64的格式换行: openssl base64 < developerID_application.p12 | tr -d '\r\n' | tee certificate-base64.txt
          • 重新复制并设置CSC_LINK,成功
    • 附github action workflow代码片段: - name: Set env if: matrix.platform == 'mac' run: | echo "APPLEID=${{ secrets.APPLEID }}" >> $GITHUB_ENV echo "APPLEIDPASS=${{ secrets.APPLEIDPASS }}" >> $GITHUB_ENV echo "CSC_LINK=${{ secrets.CSC_LINK }}" >> $GITHUB_ENV echo "CSC_KEY_PASSWORD=${{ secrets.CSC_KEY_PASSWORD }}" >> $GITHUB_ENV

本文作者:navyum

本文链接:https://www.cnblogs.com/navyum/p/18509393

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   navyum  阅读(17)  评论(0编辑  收藏  举报
//自己上传到博客园的js
点击右上角即可分享
微信分享提示