【问题标题】:How can I fix Facebook PostProcessBuild PBXParser for Facebook SDK 6.x in Unity 4.6.1 and XCode 6.1.1如何在 Unity 4.6.1 和 XCode 6.1.1 中修复 Facebook SDK 6.x 的 Facebook PostProcessBuild PBXParser
【发布时间】:2015-01-21 15:58:26
【问题描述】:

在为 iOS 构建时,Facebook 的 PostProcessBuild 方法 OnPostProcessBuild 会尝试解析一些数据来做一些事情,比如将 Facebook 库添加到最终的 XCode 项目中。

解析器接收到错误的文件格式。在其 Decode() 方法中,它需要以以下开头的数据:

public const string PBX_HEADER_TOKEN = "// !$*UTF8*$!\n";

像这样:

// !$*UTF8*$!
{
    archiveVersion = 1;
    classes = {
    };
    objectVersion = 46;
    objects = {

/ Begin PBXBuildFile section /
        011C65182C1C4E78903D645B / libxml2.dylib / = {isa = PBXBuildFile; fileRef = 318C8AB7C5D04BBFA6BA701D / libxml2.dylib /; };

但是,它会接收一个包含 project.pbxproj 内容的字符串,格式正确。像这样:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>archiveVersion</key>
    <string>1</string>
    <key>classes</key>
    <dict/>
    <key>objectVersion</key>
    <string>46</string>
    <key>objects</key>
    <dict>

还有其他人遇到这种情况吗? 我发现这些问题是相关的,但没有一个能回答真正的问题。

FacebookSDK for Unity iOS Mach-O linker error - undefined symbols _iosLogin,

http://forum.unity3d.com/threads/mach-o-linker-error-with-facebook-sdk.239085/

关于如何解决它的任何想法?

【问题讨论】:

    标签: xcode unity3d facebook pbxproj


    【解决方案1】:

    当文件恢复为原始 PBX 格式时,您可以强制 FB 稍后更改 project.pbxproj 文件:

    通过将文件FacebookPostprocess.cs 中的[PostProcessBuild(100)] 行更改为[PostProcessBuild(99999999)]

    【讨论】:

      【解决方案2】:

      我也有同样的问题。在我安装了另一个修改 project.pbxproj 文件的插件之后,来自 PBXParser 的数据是 xml1 格式。我在某处发现很容易修改类似 json 的格式,但很难将其保存为 Xcode 可以理解的格式。标准流程是将其保存为 xml1 格式。 Xcode 可以理解 xml1 格式,所以这不是问题。 所以我的解决方法如下:

      1. 照常运行构建。
      2. 构建失败后关闭 Xcode(Xcode 将在关闭时以正确的 json 格式写入项目文件)。
      3. 将修改后的 project.pbxproj 文件复制到另一个位置。
      4. 更改 PBXParser 以从修改后的文件中读取数据(如果在 xml 中) 格式!
      5. 再次运行构建。

      这不是很干净,但对我有用。更好的选择是将 xml 转换为 json 用于 PBXParser...

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-24
        • 2023-03-15
        相关资源
        最近更新 更多