我按照下面的教程与iOS应用程序集成了统一
我试图通过遵循iOS的代码来阻止统一
func stopUnity() {
if isUnityRunning {
isUnityRunning = false
currentUnityController!.applicationWillResignActive(application!)
}
}
但是当我试图重新开始团结时,我会按照下面的代码
func startUnity() {
if !isUnityRunning {
isUnityRunning = true
currentUnityController!.applicationDidBecomeActive(application!)
}
}
它只会恢复团结游戏。我会重新开始团结游戏而不是重新开始。
发布于 2018-09-20 03:27:33
这里是一个具有相同问题的线程。
我希望有下一种方式来终止统一:
1) Application.Quit --它调用Exit(0)
,所以它也终止了本地应用程序。但我们只需要关闭团结和让应用程序工作。
退出播放器应用程序。关闭正在运行的应用程序。退出在编辑器中被忽略。
2) Application.Unload --这是我们想要的,取决于描述,但我还没有弄明白如何用它来制作。
卸载统一运行时。类似于退出,但应用程序不退出。当在另一个应用程序中将联合用作组件时,这是非常有用的。例如,如果您使用Unity来显示某些特殊内容,但不希望在不需要时将Unity保存在内存中。
3)打电话给unityController?.applicationWillTerminate(UIApplication.shared)
--对我没用。坠毁了。
4)添加UIApplicationExitsOnSuspend -没有尝试。
在那里,我写下了我关于那个问题的想法。我知道这不是真正的答案,但它总比什么都没有好,也许还能让别人广泛地找到真正好的解决方案:)
发布于 2021-10-12 06:26:12
当使用"Unity“功能将团结集成到您的本地iOS应用程序时,您将无法完全终止统一并返回到您的本地应用程序。
正如关于将团结集成到本机统一文献应用程序的iOS中所述,您可以调用UnityFramework实例上的方法- (void)unloadApplication;
来释放它占用的内存的大部分(但不是全部)。这样做之后,您将能够再次运行Unity。
var isInitialized: Bool {
ufw?.appController() != nil
}
func unloadUnity() {
if isInitialized {
ufw?.unloadApplication()
}
}
https://stackoverflow.com/questions/46630315
复制