0

我昨天将 facebook unity 插件从 4.2.4 版本升级到 4.3.3。

对于旧版本,我只是在 project/plugin/Android 中添加 jar 文件并添加一些特定的代码来使用它。

至于新版本,它只是给了我一个完整的facebook android项目,我该怎么办?

  1. 将其编译为 jar 并像以前一样使用它?

  2. 导出我的项目以及 FB 项目,然后将其打包到 Eclipse 中?(每次都超级浪费时间)

事实上,我两种都试过了:

1. 这不再有效,导致一些资源 id 错误。

2. 我确实制作了一个包,但它无法像以前在 4.2.4 中那样登录。

有没有人和我一样遇到同样的问题?

我真的认为一个sdk不应该把整个项目都拿出来,因为作为一个正在运行的项目,要添加的sdk太多了,我们每次都没有太多时间处理每个插件。像facebook这样的大公司应该让事情变得更容易。

顺便说一句:Facebook 页面上的说明很旧,我无法从他们那里获得有用的信息。

4

1 回答 1

0

您应该能够使用新的 4.3.3 版本“构建并运行”(如果您导入包并保持结构不变。请务必在导入之前清除旧的 Facebook SDK。)Unity 会自动将其与您的项目一起编译。

要回答您关于我们为什么这样做的问题:

  1. 它从 jar 切换出来的原因是,在旧版本中,当它被编译到 jar 时,这意味着 R 类在编译时(jar)具有硬编码的资源 ID。不幸的是,当将其他插件引入项目时,它会重新排序资源 ID,但不会调整 jar 中的 R 类。这会破坏集成并使 Facebook 与其他 android 插件的集成变得毫无用处。

  2. android 文件的源代码与它一起打包,因为一些开发人员要求使用更多方法来编辑代码以满足他们的需要。有几个适用于 Unity 的 android 插件,虽然我们尽最大努力确保我们的 Unity SDK 与它们配合得很好,但在某些情况下,开发人员可能希望额外控制它们如何合并在一起。

话虽如此,由于您将项目从 4.2.4 升级到 4.3.3,因此您是否遵循此处的更改日志:https ://developers.facebook.com/unity/change-log-4.x/#131013 ?

基本上发生的情况是,由于导入包不允许我们删除旧文件,因此无法清理使用 jar 方法的项目。将它们都保留在项目中会破坏 android 构建。这只是一次应该再次发生的迁移。

于 2013-10-24T18:15:19.737 回答