SDL2,gpg :: GameServices和多个窗口

sky*_*ack 12 c++ android google-play-services sdl-2

我在基于SDL2构建的本机应用程序中使用C++ SDK for Google Play Game Services.本机部分是在运行时加载的.so文件.

只要我以标准方式使用应用程序,一切正常.另一方面,我遇到了gpg::GameServices使用多窗口时遇到的问题.
当应用程序切换到多窗口模式时,本机部分将离开该main功能并通过设计重新输入.main由于用户正在终止应用程序或者因为切换到多窗口模式,我不知道该函数是否被放弃,因此在函数结束时我gpg::GameServices按照文档中的建议重置指向对象的指针.然后在同一函数的开头重新初始化.

但是,看起来出现了问题,应用程序只是通过以下消息冻结了一段时间:

V/GamesNativeSDK:GameServices清理时间超过15秒或返回错误.在GameServicesImpl可能仍处于活动状态时销毁对象.

20秒后,应用程序按预期再次启动,但这种冻结非常烦人,我无法理解是什么原因.
作为旁注,出于明显的原因打电话FlushFlusBlocking不解决问题(我这样做只是为了检查是否是这种情况).

gpg::GameServices即使应用程序未正确关闭,是否有任何问题终止?我的意思是,当活动被销毁但.so没有被丢弃时,而是创建一个新的活动,并在main之后立即再次调用该函数?