我对如何实现onReset方法感兴趣,以了解何时重置插件。
如Cordova指南中所示 Plugin Initialization and Lifetime
具有长时间运行的请求,后台 Activity (如媒体播放,侦听器或维护内部状态)的插件应实现onReset方法以清理这些 Activity 。当UIWebView导航到新页面或刷新时,该方法将运行,从而重新加载JavaScript。
到目前为止,我还没有找到有关如何实现它的文档,也没有任何地方的指导方针...
如果有人知道该怎么做,我很高兴知道。
谢谢。
最佳答案
在iOS中找到解决方案,这必须在插件的本机端而不是JS端完成。
Cordova CDVPlugin 实现了通知中心观察者- (void)onReset
调用的[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onReset) name:CDVPluginResetNotification object:theWebView];
方法
每当webViewDidStartLoad
触发时,此通知就会由Cordova发布。
由于我的插件是CDVPlugin的子类:@interface MyPlugin : CDVPlugin
,因此我可以在我的插件类中重写onReset
方法并执行我想要的事情:
- (void)onReset
{
//... my code
[super onReset];
}