当前位置: 首页 > news >正文

用单位的服务器做网站关键词优化网站

用单位的服务器做网站,关键词优化网站,网红推广,如何制作小程序[无需 Mac] 使用 GitHub Actions 构建 iOS 应用 介绍1.准备存储库2.配置 GitHub Actions3. 设置密钥密码 ExportOptions.plist创建创建 App Store Connect API 密钥 如何进行Base64编码 设置应用密码 4.执行当出错时 推荐超级课程: 本地离线DeepSeek AI方案部署实…
  • [无需 Mac] 使用 GitHub Actions 构建 iOS 应用
    • 介绍
    • 1.准备存储库
    • 2.配置 GitHub Actions
    • 3. 设置密钥密码
      • ExportOptions.plist创建
      • 创建 App Store Connect API 密钥
        • 如何进行Base64编码
      • 设置应用密码
    • 4.执行
    • 当出错时

推荐超级课程:

  • 本地离线DeepSeek AI方案部署实战教程【完全版】
  • Docker快速入门到精通
  • Kubernetes入门到大师通关课
  • AWS云服务快速入门实战

介绍

GitHub Actions 是 GitHub 上用于自动化工作流程的功能。
在本文中,我们将向您展示如何在没有 Mac 的情况下使用 GitHub Actions 构建 iOS 应用。

要上传到 App Store Connect,您需要注册 Apple 开发者计划。

1.准备存储库

首先,准备好你的 iOS 应用仓库。
本文假设你的应用目录结构如下:

.
├── .github
│   └── workflows
│       └── build.yml
├── MyApp
│   ├── MyApp.xcodeproj
│   └── ...
└── ...

2.配置 GitHub Actions

在存储库根目录中.github/workflows/build.yml创建一个目录,其中包含以下内容:

构建文件

name: Buildon:pushjobs:          build:name: Buildruns-on: macos-lateststeps:- name: Checkoutuses: actions/checkout@v4- name: Archive Projectrun: |                        xcodebuild archive -project MyApp/MyApp.xcodeproj \-scheme MainApp \-sdk iphoneos \-configuration Release \-archivePath MainApp.xcarchive \CODE_SIGNING_ALLOWED=NO- name: Create ExportOptions.plistrun: |echo '${{ secrets.EXPORT_OPTIONS }}' > ExportOptions.plist- name: Create Private Keyrun: |mkdir private_keysecho -n '${{ secrets.APPLE_API_KEY_BASE64 }}' | base64 --decode > ./private_keys/AuthKey_${{ secrets.APPLE_API_ISSUER_ID }}.p8- name: Export IPArun: |   xcodebuild -exportArchive \-archivePath MainApp.xcarchive \-exportOptionsPlist ExportOptions.plist \-exportPath app.ipa \-allowProvisioningUpdates \-authenticationKeyPath `pwd`/private_keys/AuthKey_${{ secrets.APPLE_API_ISSUER_ID }}.p8 \-authenticationKeyID ${{ secrets.APPLE_API_KEY_ID }} \-authenticationKeyIssuerID ${{ secrets.APPLE_API_ISSUER_ID }}- name: Upload IPA to App Store Connectrun: |xcrun altool --upload-app -f app.ipa/MainApp.ipa \-u ${{ secrets.APPLE_ID }} \-p ${{ secrets.APP_SPECIFIC_PASSWORD }} \--type ios

在此设置中,xcodebuild我们使用命令来构建我们的 iOS 应用程序,并xcrun altool使用命令将其上传到 App Store Connect。

要点如下:

  • Xcode 项目路径MyApp/MyApp.xcodeproj和方案名称MainApp均为默认设置。请根据需要进行更改。
  • 在您的 Xcode 项目中启用自动签名。
  • xcodebuild buildxcodebuild archiveCODE_SIGNING_ALLOWED=NO您指定使签名无效时。
  • 私钥路径在内部隐式引用,不应更改。
  • -allowProvisioningUpdates因为您指定了,所以您不需要配置文件,
    并且您不需要每年更新配置文件。

3. 设置密钥密码

在 GitHub 存储库设置屏幕上,在“存储库机密”中设置以下机密。
有关详细的设置说明,请参阅GitHub 文档。

  • EXPORT_OPTIONS``ExportOptions.plist内容:
  • APPLE_API_KEY_BASE64:App Store Connect API 密钥的 Base64 编码内容
  • APPLE_API_ISSUER_ID:App Store Connect API 发行者 ID
  • APPLE_API_KEY_ID:App Store Connect API 密钥 ID
  • APPLE_ID:Apple ID
  • APP_SPECIFIC_PASSWORD:Apple ID 应用密码

ExportOptions.plist创建

EXPORT_OPTIONS以下是它的内容。您可以从
YOUR_TEAM_IDApple Developer Program Membership中查看。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict><key>method</key><string>app-store</string><key>teamID</key><string>YOUR_TEAM_ID</string>
</dict>
</plist>

创建 App Store Connect API 密钥

您可以通过 App Store Connect API 创建App Store Connect API密钥。
您可以使用任意名称,但Admin需要拥有 App Store Connect API 的访问权限。
有关如何颁发密钥的详细说明,请参阅Apple 的文档。

APPLE_API_KEY_BASE64是密钥内容。
请注意,该内容只能下载一次。请对其
进行Base64编码并设置为机密。

如何进行Base64编码

您可以使用以下命令将其以 Base64 进行编码:

Windows(PowerShell)

[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("AuthKey_YOUR_ISSUER_ID.p8"))

Linux / macOS

base64 -i AuthKey_YOUR_ISSUER_ID.p8

APPLE_API_ISSUER_ID是密钥的颁发者 ID,
所有密钥的颁发者 ID 都是相同的。

APPLE_API_KEY_ID是您的密钥 ID。它也是
下载的密钥文件名AuthKey_后面的字符串。

设置应用密码

APPLE_ID是您的 Apple ID(电子邮件地址)。
请设置您注册 Apple Developer Program 时使用的 Apple ID。

APP_SPECIFIC_PASSWORD是根据您 Apple ID 的应用专用密码创建的。
有关如何设置的更多信息,请参阅Apple 的文档。

4.执行

您现在可以出发了。

当您推送到 GitHub 时,GitHub Actions 将自动执行。
如果构建成功,该应用将上传至 App Store Connect。
您可以在 App Store Connect 中创建内部测试版本,无需审核。
不妨在您的 iPhone 上测试一下!

当出错时

如果您的工作流程失败,请检查以下内容:

  • Xcode 项目路径和方案名称是否正确?
    xcodebuild -list -project MyApp/MyApp.xcodeproj您可以检查方案名称。
  • 您的 Xcode 项目中是否启用了自动签名?
  • 密钥密码都设定好了吗?
  • APPLE_API_KEY_BASE64它是Base64编码的吗?
  • App Store Connect API 密钥权限是否正确?
  • 您可以检查MainApp.ipa目录中是否已创建app.ipa 。
    根据项目的不同,它的名称可能会有所不同。
    ls -l app.ipa

>

http://www.dtcms.com/a/577120.html

相关文章:

  • C语言基础开发入门系列(八)C语言指针的理解与实战
  • 如何绑定网站域名解析电商网站模板html
  • 【机器视觉通用检测框架】基于VS2019 C#+VisionPro9.0开发的视觉框架软件,全套源码,开箱即用
  • 智慧交通管理新范式 基于深度学习的城市交通车型识别AI监控系统 车型识别 停车场车型分类系统 高速路车型识别算法
  • pnpm 安装依赖后 仍然启动报的问题
  • 【河北政务服务网-注册_登录安全分析报告】
  • 深入理解 package.json:前端项目的 “身份证“
  • 【辽宁政务服务网-注册_登录安全分析报告】
  • 免费正能量励志网站建设网站要多久到账
  • 新乡市红旗区建设局网站网页制作素材网有哪些
  • 用车申请车辆管理小程序开发
  • 单片机.RS485
  • 从单模型到多域自由转换:StarGAN的公式与多域图像生成魔法
  • 人工智能在全球多领域的应用潜力及当前技术面临的挑战
  • Python处理json数据
  • go开发规范指引
  • 期权交易中的希腊字母:风险管理的多维指南
  • C++---关键字constexpr
  • 广州购物网站公司地址广州网站建设
  • 手术机器人多传感器数据融合 × 深度学习前沿研究精要(2024-2025)
  • 火山引擎升级AI云原生套件:AgentKit、ServingKit、TrainingKit全链路加速AI应用落地
  • Git命令速查手册
  • 随机链表的复制 (带random的链表深度拷贝)| C语言实现
  • 大仓库推到GitHub大踩坑-Git LFS从安装到使用
  • 宁夏制作网站公司网站仿静态和静态的区别
  • 【App开发】02:Android Studio项目环境设置
  • 初识MYSQL —— 复合查询
  • 有网站可以接设计的单子做吗招投标网站
  • 基于 WPS TOROW 函数实现 VLOOKUP:多行多列转一行
  • 编译SQLite 3.51源码并体验新功能