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