繁体   English   中英

如何在Pod项目ViewController中导入AppDelegate.h文件?

[英]How to import AppDelegate.h file in Pod project ViewController?

我是POD项目的新手。 我想更新pod项目viewControllers,因为我需要访问Pod Project中的AppDelegate类。

我试图更新Pod配置文件以访问AppDelegate但无法获得成功。

您真的不想在您的应用和广告连播之间创建循环依赖关系。 建议的方法是在pod中定义协议并使AppDelegate实现该协议。

@protocol PodArrayProvider
    - (NSArray *)arrayToAccess:
@end

// in AppDelegate.m
#import <Pod/Pod.h>

@extension AppDelegate () <PodArrayProvider>
@end

@implementation AppDelegate
- (NSArray *)arrayToAccess
{
    return self.realArray;
}
@end

// then in your pod, you can do:
id<PodArrayProvider> arrayProvider = (id<PodArrayProvider>)[[UIApplication sharedApplication] delegate];
NSAssert([arrayProvider conformsTo:@protocol(PodArrayProvider)], @"bad app delegate!");
NSArray *things = [arrayProvider arrayToAccess];

像上面的结构应该有用,但我会敦促你重新思考这个架构。 pod是应用程序的依赖项,不应该对应用程序有任何了解。 该应用程序应该告诉pod它需要知道的一切。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM