将 Kanzi 应用程序部署到 iOS

Kanzi Studio 提供了一些工具,可用于从您的 Kanzi 应用程序生成 Xcode 工程并将其部署到 iOS 设备。

要求

要使用 Kanzi 开发 iOS 应用程序,您需要:

  • macOS

  • Xcode 26.3 或更新版本

  • iOS SDK 26 或更新版本

  • 带有 MoltenVK 的 Vulkan SDK

  • CMake 3.25 或更新版本

  • 用于部署到 iOS 物理设备的 Apple Developer 帐户

有关为 iOS 开发建立环境的更多信息,请参阅 https://developer.apple.com。

要部署到 iOS 物理设备,您需要 Apple Developer 证书来为应用程序签名。请参阅 https://developer.apple.com/support/code-signing/。

生成 Xcode 工程

要为您的 Kanzi 应用程序生成 Xcode 工程:

  1. 在 Kanzi Studio 中导出工程的 kzb 文件。选择 File > Export > Export KZB。

  2. 将 Application 文件夹复制到您的 Mac 开发机。

  3. 在 Mac 开发机上,将 KANZI_HOME 环境变量设置为您的 Kanzi iOS 平台包所在的位置。

  4. 在 Application 文件夹的根目录中,运行 generate_cmake_xcode_ios_project.sh 以生成 Xcode 工程:

    ./generate_cmake_xcode_ios_project.sh --platform device
    

    备注

    如果该脚本不可执行,请先运行 chmod +x generate_cmake_xcode_ios_project.sh。

从 Xcode 构建和部署

要从 Xcode 构建 Kanzi 应用程序并将其部署到 iOS 设备:

  1. 使用 USB 线缆将您的 iOS 设备连接到 Mac 开发机。

  2. 从 build_ios 文件夹打开生成的 Xcode 工程。

  3. 在 Xcode 中,为您的 Apple Developer 证书设置代码签名。请参阅 Apple 代码签名。

  4. 点击 Run 以构建和部署应用程序。

从命令行构建和部署

要从命令行构建 Kanzi 应用程序并将其部署到 iOS 设备:

  1. 使用 USB 线缆将您的 iOS 设备连接到 Mac 开发机。

  2. 在 Application 文件夹中,构建应用程序并将其安装到 output 文件夹:

    xcodebuild -project build_ios/<ApplicationName>_ios.xcodeproj \
        -scheme <ApplicationName> -configuration Release \
        -destination 'generic/platform=iOS' \
        DEVELOPMENT_TEAM=<YourTeamID> \
        'DSTROOT=$(PROJECT_DIR)' \
        install
    

    将 <YourTeamID> 替换为您的 Apple Developer 团队 ID。您可以在 Apple Developer 帐户 的 Membership details 下找到您的团队 ID。

    xcodebuild 将构建的应用程序放在 output/<ApplicationName>.app 中。

    小技巧

    如果您还没有预配描述文件,请在 xcodebuild 命令中添加 -allowProvisioningUpdates,以允许其自动创建一个。

  3. 查找已连接设备的标识符:

    xcrun devicectl list devices
    
  4. 在设备上安装应用程序:

    xcrun devicectl device install app \
        --device <DeviceIdentifier> \
        output/<ApplicationName>.app
    
  5. 在设备上启动应用程序:

    xcrun devicectl device process launch \
        --console \
        --device <DeviceIdentifier> \
        <BundleIdentifier>
    

    备注

    --console 选项会将 iOS 应用程序的日志输出到 macOS 终端。

    <BundleIdentifier> 是您的应用程序的 bundle ID,通常采用 com.company-name.app-name 格式。例如,com.rightware.kanzi.basicapplication。

另请参阅

部署 Kanzi 应用程序

为 iOS 开发 Kanzi 应用程序

使用 kzb 文件