我正在使用 Unity 开发增强现实应用程序,用户可以在其中使用移动设备拍摄照片以在其上添加 3D 对象。问题在于,在 Android 上,当用户选择从我的应用程序中拍摄照片时,应用程序被置于后台并经常关闭,而不是保存在内存中以处理拍摄的照片。我知道这是因为 Android 杀死应用程序来释放内存。但是有没有办法防止我的应用程序被杀死?即使在带有 512Mo 内存的 Ipad 2 上,IOS 也不会做这种残酷的杀戮:拍摄后它会顺利返回应用程序。而 Android 是用我的 1Go 内存手机做到的。此外,我不希望我的应用程序被服务杀死并重新启动以处理照片,因为它加载起来非常繁重,而且离立即启动还很远。
问问题
4466 次
1 回答
1
Application.runInBackground
在移动平台上被禁用,因此 Unity 无法保证您的游戏/应用程序保持运行。这种行为是正常的,因为操作系统会根据需要终止活动。遗憾的是,Android 资源匮乏,因此即使使用更好的硬件,在 iO 上停留在后台的应用程序也可能在 Android 上被杀死。
正如该线程中所暗示的,您有几个选项:使用状态来处理暂停/恢复,创建一个将在后台继续运行的服务(它必须通过插件或在 Eclipse 中在 Unity 之外创建)和/或使用 Android 的意图机制。
于 2013-10-03T19:58:21.260 回答