【问题标题】:Unity FB.API request returning unsupportedURL on iOS, working in editorUnity FB.API 请求在 iOS 上返回 unsupportedURL,在编辑器中工作
【发布时间】:2015-06-03 10:55:53
【问题描述】:

我正在使用官方 Facebook SDK 从 Unity 应用程序请求基本数据。 当我将 first_name 字段添加到好友列表时出现问题

Unity Editor 没有问题,问题只出现在iOS,控制台尖叫UnsuportedURL

如果没有{first_name},问题就不会出现在friends

之后

请求:

me?fields=id,name,friends{first_name}

统一代码:

FB.API("me?fields=id,name,email,friends{first_name},first_name", HttpMethod.GET, delegate(FBResult dataResult) {

        if (!string.IsNullOrEmpty(dataResult.Error)) {
            //error occured
            Debug.LogError(dataResult.Error);
            error(dataResult.Error);
            isFinished(true);

        } else {

            Debug.Log(dataResult.Text);
        }

【问题讨论】:

    标签: ios facebook facebook-graph-api unity3d


    【解决方案1】:

    试试这个 URL,使用字段。

    "me?fields=id,name,email,friends.fields(first_name),first_name"

    【讨论】:

      【解决方案2】:

      看起来花括号是破坏 iOS NSURL 的问题

      转义花括号的工作方式如下: NSURL with Curly Braces

      "me?fields=id,name,email,friends%7Bfirst_name%7D,first_name"
      

      【讨论】:

        【解决方案3】:

        使用以下查询:

        "/me?fields=id,first_name,gender,picture,email,friends{id,first_name,gender,picture},invitable_friends{id,first_name,picture}"
        

        ... 在 Unity 编辑器中可以正常工作,但在 iOS 上却不行。以前的解决方案不起作用。

        从大括号切换到常规括号 - Facebook 拒绝它包含无效字符。

        切换到转义的大括号(%7B 和 %7D) - 仍然返回不支持的 URL。

        最后我是这样解决的:

        "me?fields=id,first_name,gender,picture,email,friends.fields(id,first_name,gender,picture),invitable_friends.fields(id,first_name,picture)"
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多