Android 安卓7+;:使用Cordova应用程序进行多窗口检测

Android 安卓7+;:使用Cordova应用程序进行多窗口检测,android,cordova,Android,Cordova,人们是如何在cordova或使用浏览器事件处理android支持的?具体来说,我正在我的应用程序中捕获pause事件并进行清理,因为当应用程序未在多窗口模式下运行时,实际上意味着应用程序将进入后台。我使用这个回调来清除一些昂贵的内存资源(包括正在显示的实时视频提要) 但是,在多窗口模式下,当您将两个应用相邻放置并在另一个应用上执行任何活动时,浏览器将生成暂停事件。显然,在这种情况下,我不想进行清理,因为UI仍然可见 所以问题是,科尔多瓦是否提供了一种方法: 检测应用程序是否在多窗口模式下运行

人们是如何在cordova或使用浏览器事件处理android支持的?具体来说,我正在我的应用程序中捕获
pause
事件并进行清理,因为当应用程序未在多窗口模式下运行时,实际上意味着应用程序将进入后台。我使用这个回调来清除一些昂贵的内存资源(包括正在显示的实时视频提要)

但是,在多窗口模式下,当您将两个应用相邻放置并在另一个应用上执行任何活动时,浏览器将生成
暂停
事件。显然,在这种情况下,我不想进行清理,因为UI仍然可见

所以问题是,科尔多瓦是否提供了一种方法:

  • 检测应用程序是否在多窗口模式下运行
  • 或者,区分
    暂停
    事件和
    停止
    事件(如SO线程中所述)

我注意到在科尔多瓦讨论,但作者没有提到哪一行的变化。我只发现与androidresizable相关的更改被设置为true,但这不是我的问题。该应用程序的窗口是多窗口的,不会全屏显示。这是导致问题的事件。

我拼凑了一个cordova插件,如果应用程序在多窗口中,则返回true;如果应用程序不在多窗口中,则返回false。还允许您捕获在多窗口模式下非常重要的
onStop
onStart

这是我的第一个插件,如果它不好,请随时公关和改进

链接: