Swift之利用API可用性解决App Extension无法编译
【摘要】
一、问题分析
从 Xcode12.5 开始,苹果要求所有的 Extension Target 必须设置 APPLICATION_EXTENSION_API_ONLY 为 true,否则将会导致编译错...
一、问题分析
- 从 Xcode12.5 开始,苹果要求所有的 Extension Target 必须设置 APPLICATION_EXTENSION_API_ONLY 为 true,否则将会导致编译错误“Application extensions and any libraries they link to must be built with the APPLICATION_EXTENSION_API_ONLY build setting set to YES”;但是通常会在主工程和 Extension 之间使用 Framework 或其他方式共享代码,这些代码中使用了非 extension-only API,所以导致问题出现,那么该如何解决呢?
- 以一个具体的工程结构为例,如下图所示:
- 主工程 Host App 中,创建了一个 Share Extension 的扩展 Target 做分享相关的操作;另外为了模块化,有一个 Library 工程包含所有的基础组件和 Fundation 扩展方法,NetworkService 工程包含网络请求相关的功能封装和处理,它们都被编译为 Framework 供主工程和 Share Extension 共同使用。
- 首先需要把 Share Extension、Library、NetworkService 这三个工程的
文章来源: blog.csdn.net,作者:Serendipity·y,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/Forever_wj/article/details/118681275
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)