【问题标题】:What is the lifetime of a PhoneGap plugin?PhoneGap 插件的生命周期是多久?
【发布时间】:2012-09-11 15:28:56
【问题描述】:
关于插件实例的生命周期,我是否需要考虑一些事情,或者我可以假设这个对象在我的 web 视图可见时一直存在?
从一些插件看来,有些人倾向于使用某种单例管理器将数据存储在他们的 PhoneGap 插件中。为什么不直接将其存储在 PhoneGap 插件本身中?
询问的原因是,似乎与 web 视图通信的唯一正确方法是通过 [self writeJavaScript:message] 方法。如果我注册自己以接收一些通知,我想确保我的插件实例存在。
【问题讨论】:
标签:
plugins
cordova
lifetime
【解决方案1】:
只要网络视图存在,插件就会存在。
初始化变量或注册回调的正确方法是在
- (CDVPlugin*) initWithWebView:(UIWebView*)theWebView {
self = [super initWithWebView:theWebView];
if (self) {
_variable = [[Variable alloc] init];
[Classname addListener:self];
}
return self;
}
方法。该方法适用于所有插件。
别忘了在dealloc方法中自己清理一下。