SDL2、gpg::GameServices 和多窗口

SDL2, gpg::GameServices and multi windows

提问人:skypjack 提问时间:5/9/2018 更新时间:5/11/2018 访问量:417

问:

我在基于 SDL2 构建的本机应用程序中使用适用于 Google Play 游戏服务的 C++ SDK本机部分是在运行时加载的 .so 文件。

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

但是,看起来出了点问题,应用程序只是冻结了一段时间,并显示以下消息:

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

20 秒后,应用程序按预期再次启动,但这种冻结很烦人,我不明白是什么原因。
顺便说一句,由于显而易见的原因,打电话或不能解决问题(我这样做只是为了检查是否是这种情况)。
FlushFlusBlocking

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

安卓 C++ google-play-services sdl-2

评论

0赞 Synxis 5/17/2018
打电话是未定义的行为,我真的不明白你想做什么。你能链接到关于这个案例的文档吗?main()

答: 暂无答案