【问题标题】:iOS How to manage different features that requires a 3rd-party frameworkiOS 如何管理需要第三方框架的不同功能
【发布时间】:2015-06-05 14:20:52
【问题描述】:

我开发了一个作为标准 iOS 框架分发给我们发布商的 SDK。 为了尽可能清楚,假设我的 SDK 被称为“A”。 “A”需要一个管理特定功能的第 3 方 iOS 框架(称为“B”)。 因此,例如,我在“A”中有一个这样的类:

#import <Foundation/Foundation.h>

#import <B/SomeClassOfB.h>

@interface MyClassOfA : NSObject < 'B' Delegate>

3rd-party框架的导入和我的类符合'B'协议

现在,如果我在美国有一个想要使用此特定功能的发布者,我会将我的框架和第 3 方框架发送给他,发布者将它们都链接到他的应用程序并且一切正常。是啊!!

现在的问题....如果我在欧洲有一个不想使用此特定功能的发布者,我不想向他发送 3rd-party 框架并且他不想添加一些完全无用的东西到他的应用程序。 解决这个问题的最佳方法是什么?如何构建两个不同的框架,一个具有依赖于“B”的上述类,另一个忽略它而每次都没有“注释”代码?

谢谢

【问题讨论】:

    标签: ios ios7 ios-frameworks


    【解决方案1】:

    您可以创建另一个target

    如果您只是想区分 .h 或 .m 文件,则创建具有相同文件名(或类名)但文件路径不同的这些文件,然后编辑“目标成员”

    【讨论】:

    • 我得到:“类的重复接口定义”。我将文件放在不同的文件夹中并更改了目标成员资格。
    • @GiulioBider 你能发布一个示例项目吗?
    • 是的,我明天会发布。顺便说一句,如果我有 2 个 .m 文件和 1 个 .h 一切正常。我需要 2 .m 和 2.h 因为标题和实现是不同的。但是如果我创建 2 个 .h 文件,就会出现上述错误。
    • 一个项目中文件名或类名相同是可以的,不管是.h还是.m,只要用“target members”告诉Xcode编译器链接正确的文件即可。
    • 谢谢精灵。几个小时后,一切都很好! :)
    猜你喜欢
    • 2011-10-05
    • 2014-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多