我有如下组装,它将从plist启动
@implementation classAAssembly
- (id)classA {
return [TyphoonDefinition withClass:[classA class] configuration:^(TyphoonDefinition *definition) {
definition.scope = TyphoonScopeSingleton;
}];
}当应用程序加载时,这将创建实例并注入到相关位置
然后我有一些静态方法需要使用它,所以我试着如下所示
+ (void)staticMethod {
classAAssembly *assembly = [[classAAssembly new] activate];
classA *classA = [assembly classA];
}问题是,当我这样做时,它会给出新的实例,我期望的是在应用程序加载时创建相同的实例。
任何帮助都将不胜感激。
发布于 2016-11-30 18:37:39
您在上面创建了一个新的程序集。您需要做的是获得one created using plist integration的句柄。例如,要从您的应用程序委托访问程序集,请将其注入其中。
要从静态方法访问程序集,您必须创建一个指向它的静态指针:
- (void) typhoonDidInject {
myStaticAssembly = this.assembly
}https://stackoverflow.com/questions/40884930
复制相似问题