我是否需要考虑插件实例的生命周期,或者我可以假设此对象在我的Web视图可见时始终存在?
通过查看一些插件,有些人倾向于使用某种单例管理器将数据存储在他们的PhoneGap插件中。为什么不将它存储在PhoneGap插件本身?
询问的原因是,与Web视图进行通信的唯一正确方法是通过[self writeJavaScript:message]方法。如果我注册自己接收一些通知,我想确保我的插件实例存在。
答案 0 :(得分:6)
只要网络视图还活着,插件就会存在。
初始化变量或注册回调的正确方法是在
中- (CDVPlugin*) initWithWebView:(UIWebView*)theWebView {
self = [super initWithWebView:theWebView];
if (self) {
_variable = [[Variable alloc] init];
[Classname addListener:self];
}
return self;
}
方法。该方法适用于所有插件。
不要忘记在dealloc方法中自己清理。