gpt4 book ai didi

c# - 如何将unity ios项目集成到原生ios swift项目中?

转载 作者:行者123 更新时间:2023-11-30 17:29:07 27 4
gpt4 key购买 nike

我已经尝试了大部分在线资源,包括这个 link也将我的统一项目集成到 swift 4 本地项目中,但不幸的是直到现在才有所帮助。当我做 Linked修复我进入下面的 c++ 文件错误:

No member named 'GetHostByAddr40' in 'il2cpp::icalls::System::System::Net::Dns'; did you mean 'GetHostByAddr'?

顺便说一句,我实际上正在做一个增强现实项目,它也有一些原生 iOS 设计。从那时起,我使用 swift 4Xcode 9.2 完成了这些部分。 native 部分包含项目的开始和结束部分。在这两者之间,有增强现实部分,它是使用unity 2018.2.0f2 personalvofuria 7.2.23 完成的。

最后,现在我有一个 iOS 原生项目和一个 unity 项目。我想把Unity部分集成到iOS原生中!

最佳答案

经过长时间的搜索,我找到了错误。使用 this 修复后描述的解决方案,我最终没有找到 Bulk_Mono.Security_1.cpp 文件。所以我开始寻找它。然后我确定了问题所在。问题出在 .Net 的 4.0 脚本运行时版本。我用 4.0 制作了这个项目,因为使用 LitJson 需要至少 4.0。 4.0 没有为 iOS 生成 Bulk_Mono.Security_1.cpp 文件。然后我从项目中删除了 LitJson 并将项目运行时版本降级为 3.x 等效版本,它开始在以下 2 个文件的更改下正常工作。

请注意,通常只需将生成的objective-c 项目集成为一个框架,然后进行以下更改并运行。

  1. DisplayManager.mm 生成的文件进行了更改,该文件位于 classes/unity。自动生成的不包含最后一行return deviceUnknown;。所以我们必须手动编写。

    elif PLATFORM_TVOS
    if (!strncmp(model, "AppleTV5,", 9))
    return deviceAppleTV1Gen;
    else if (!strncmp(model, "AppleTV6,", 9))
    return deviceAppleTV2Gen;
    else
    return deviceUnknown;
    endif
    return deviceUnknown
  2. 对位于生成项目的 classes/ui 中的 SplashScreen.mm 进行以下更改。将 bool hasStoryboard = [[NSBundle mainBundle] pathForResource: @"LaunchScreen"ofType: @"storyboardc"] != nullptr; 更改为 bool hasStoryboard = [[NSBundle mainBundle] pathForResource: @"LaunchScreen_1"ofType: @"storyboardc"] != nullptr;。完整方法如下。

        void ShowSplashScreen(UIWindow* window)
    {
    bool hasStoryboard = [[NSBundle mainBundle] pathForResource: @"LaunchScreen_1" ofType: @"storyboardc"] != nullptr;

    if (hasStoryboard)
    {
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:
    @"LaunchScreen" bundle: [NSBundle mainBundle]];
    _controller = [storyboard
    instantiateViewControllerWithIdentifier: @"unitySplashStoryboard"];
    }
    else
    _controller = [[SplashScreenController alloc] init];

    [_controller create: window];
    [window makeKeyAndVisible];
    }

这就是我如何整合的全部内容。

关于c# - 如何将unity ios项目集成到原生ios swift项目中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51778263/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com