Xcode12 创建Multi-PlatformProject

写在前面

因为公司后期可能需要用到AppleTV、iPad、iOS等苹果多平台开发,so最近在做这方面的前期技术开发调研,通过该链接下载了一个tvOS demo,发现一个有趣的点就是该项目是兼容苹果所有平台的项目,如iOS、tvOS、macOS、watchOS等。如下结构:

问题来了,如何构建这样的项目?

有意思的是在stack overflow上找到一位同样遇到该问题的同仁 ->

问题

解答

我这边是借用了Xcode自带的MutiPlatform项,当然你也可以跟stackoverflow上那位网友那么操作,都差不多,重点是共享文件夹里面的文件给哪些target授权。

Environment

1、macOS Big Sur 11.5
2、Xcode 12.5.1
3、模拟器 4k tvOS 14.5

步骤

主要三个点

  • MultiPlatform创建工程
  • 确定共享的文件
  • 修改Development Assets配置

1、cmd+shift+n 创建MultiPlatform工程,如下图:

默认会创建iOS和macOS Target

该方式下默认只会创建iOS和macOS,如下图(马赛克打的是tvOS,这是后面手动创建的,先忽略)


2、将需要共享的文件移到Shared文件夹,且授权所有Target访问(这是重点),移除其余不需要的文件。如下图:

以上步骤改完之后,选择tvOS scheme运行发现,会编译报错,需要继续步骤3

3、修改Development Assets配置

下面是直接删除了相关assets,当然你也可以改成Shared里面assets或直接保留原来assets



Done

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。