当前位置: 首页 > 面试题库 >

Swift桥接头文件不适用于use_frameworks

顾英发
2023-03-14
问题内容

我正在尝试使用GoogleidentityToolkit库来处理登录问题。我启用use_frameworks!在我的Pod文件中,但是找不到模块GITkit。我试图弄清楚发生了什么。据我所知,如果您使用“
use_frameworks”,则不需要创建任何桥接头文件,因为cocoapods将库向下编译为一个模块,因此以后您可以照常将其导入* .swift文件中。

在Swift中使用Google Identity Toolkit库需要什么?

在发布CocoaPods 1.0.0(当时CocoaPods 0.39.0仍然很流行)的一个星期后问了这个问题,而从2015年开始,可用的Google
Identity
Toolkit
版本是1.1.3,但由于支持Firebase身份验证而被弃用(pod 'FirebaseUI/Auth')之后的Google I / O 2016。


问题答案:

A) 在项目的根文件夹中创建一个名为 “ ProjectName-Bridging-Header.h” 的桥接头文件 。

B) 转到项目构建设置并设置以下值:

  • “安装Objective-C兼容性标头”
  • “ Objective-C桥接头”桥接头的 路径 (例如 “ ProjectName / ProjectName-Bridging-Header.h”

之后,您可以使用头文件导入要在快速代码中使用的所有ObjectiveC文件。

注意 :如果需要,请在资源标头和Swift编译器搜索部分中都将路径设置为递归。



 类似资料:
  • Swift与OC桥接 第一次学习Swift时是2.1 & 2.2版本, 后来升级到3.0后只是简单的看过一点点变化, 如今再次学习Swift已经是5.3, 之前写Swift就是生搬硬套, 很多框架仍然是通过CocoaPods安装的OC类库, 但这并不会是一个长久的方案, 所以建议那些还没有完全熟悉Swift的开发者今早学习切换到Swift, 尽可能通过Swift实现的就不要再桥接OC文件 Swif

  • 背景:我正在写一个游戏(作为一个可执行的罐子),我的游戏的一部分是一个偏好对话框,你可以在其中设置对手的名字和影响游戏进展的不同变量。我决定这将是很好的,如果这些被保存在退出,所以下一次你加载的应用程序,它会记得你之前设置了什么。 为此,我将变量写入jar中的一个txt文件,然后在启动新游戏时读取该文件。通过eclipse,这一切都可以正常工作,但当我导出到jar时,它根本不起作用。这是我用来读取

  • 问题内容: 我得到了一个迅速的项目,并使用CocoaPod导入了第三方存储库。在我使用的pod文件中,因此存储库将内置到框架中以供使用。然后将ObjC框架导入或导入到我的桥接头中。 在这种情况下,我运行该项目,它可以正常工作。但是当我存档时,在桥接头文件中找到“找不到文件”。 和 我该如何解决这个问题? 问题答案: 我的解决方案是: 不要在桥接头文件中导入ObjC框架,而只是在需要该框架的文件中导

  • 我对包含文档id引用的impex有问题。 来自docs:“尤其是对于导入partOf项值,有必要通过通常的唯一列技术以外的方式引用这些项,因为partOf项通常不提供唯一键,而只将其封闭父项作为外键保存。” 来自*项目的项目。xml(仅是最重要的部分) Impex代码: 错误消息: 当我从test属性(C类)中删除partof修饰符时,一切正常。 我想知道如果我想保留“partof”修饰符,imp

  • 我正在使用Selenium和Java自动化拖放。以下是在无头模式下使用chrome驱动程序执行拖放的代码。 在无头chrome驱动程序中执行时不会发生任何情况。但是,在非无头chrome驱动程序中,这可以正常工作并执行拖放。 注意-同时使用dragAndDropBy(源、目标)和dragAndDropBy(源、xOffset、yOffset)进行了尝试。这两种方法在非无头chrome中也不起作用

  • 背景: 最近我一直在开发一个程序,该程序对输入数据文件(用户以完整路径或名称的形式给出,如果它位于程序创建的名为inputFiles的文件夹中)执行一些数据分析并吐出一堆输出数据文件(使用CSV)。 问题: 我遇到的问题是,当我运行时。jar在我的Windows机器上,它将创建3个文件夹(InputFiles、TempFiles和OutPutFiles),但当程序在Mac上时,GUI会启动,但不会