首页 > 解决方案 > Unity 中使用 Facebook SDK 的延迟深度链接

问题描述

我已经研究了所有互联网,但仍然没有找到解决方案(我知道,StackOverFlow 上存在同样的问题,但它太旧了,还没有回答)

所以任务很简单:在 Android 应用程序中启用深度链接。当我在 Android Studio 中执行此操作时,通过在 java 上编写就可以了。我能做到。

但是,在使用 Unity 时,我遇到了一个大问题,我做了什么:

在我场景的一个脚本中,我做到了:

FB.Mobile.FetchDeferredAppLinkData(result =>
            {
                if (!String.IsNullOrEmpty(result.Url)
                {
                    //something to-do
                }
                //something to-do #2
            });

我尝试了很多,试图启动 Facebook SDK 的示例(但它们不起作用),Facebook 设置页面中添加的 AppLink(我的意思是 Unity),试图移动此代码(并且此代码没有任何 if和其他(只是做简单的方法)),但什么也没有发生,当应用程序启动时,它就像总是黑屏一样。

我知道,我以正确的方式添加了 SDK,因为我可以在我的 Facebook 页面上跟踪这个应用程序。

所以,接下来的问题是:如何使用 Unity 和 Facebook SDK 在 Android 应用程序中启用延迟深度链接。谢谢!

标签: androidfacebookunity3d

解决方案


  1. 安装 FacebookSDK

  2. 包括命名空间(使用 Facebook.Unity;)

  3. 并在开始添加此代码

         if (FB.IsInitialized)
         {
             FB.ActivateApp();
         }
         else
         {
    
             FB.Init(() =>
             {
                 FB.ActivateApp();
                 FB.Mobile.FetchDeferredAppLinkData(x =>
                 {
                     deep = x.TargetUrl;
                 });
             });
         }
    

推荐阅读