如何在 iOS 的静态库和主应用程序中进行 AFNetworking?

Posted

技术标签:

【中文标题】如何在 iOS 的静态库和主应用程序中进行 AFNetworking?【英文标题】:How to AFNetworking in Static Library and main application in iOS? 【发布时间】:2014-07-28 08:28:39 【问题描述】:

我在静态库中使用 AFNetworking,并在主应用程序中使用另一组 AFNetworking 文件。

@interface LGHTTPRequestResponse : AFHTTPRequestOperationManager

我有相同的代码,但有两个不同的文件和实例。但是我在主应用程序中得到了库 HTTP 请求的回调。

[self POST:url parameters:parameters
       success:^(AFHTTPRequestOperation *task, id responseObject)

怎么可能,即使它是静态库,我在 lib 和主应用程序中创建了两个不同的实例?为什么上面的代码同时运行在静态库中的 url 以及主应用程序中?

在尝试了太多东西之后,我什至更改了 lib 和 main application 中的类的名称。但行为保持不变。

【问题讨论】:

【参考方案1】:

我对你的问题知之甚少(你的措辞很混乱),

我想你是在说:

    您有两组不同的 AFNetworking 文件。

    您希望能够单独引用它们。

你不能这样做。一旦 AFNetworking 的命名空间被占用,第二组文件将覆盖第一组文件,您无法保证先导入哪个文件。

不管怎样,听起来你做错了什么。

了解using cocoapods to install AFNetworking,这应该不是问题。

【讨论】:

【参考方案2】:

经过很多努力,我自己解决了问题。需要更改所有内容,不仅是类的名称,还有委托的名称和其他数据结构。它按预期工作。

【讨论】:

以上是关于如何在 iOS 的静态库和主应用程序中进行 AFNetworking?的主要内容,如果未能解决你的问题,请参考以下文章

将现有的 iOS 应用项目拆分为静态库和应用皮肤项目

gitlab中fork库和主库存在代码冲突时如何解决

动态库和静态库的区别

iOS 静态库和动态库相关

iOS静态库和Framework区别

iOS中的静态库和动态库