目前Facebook官网无人更新SDK,只好自己尝试编译。
最后编译出新的库文件,替代了本地之前安装的 9.2.0版本,并成功打包出Android版本。
1. 从 Github 下载最新版本工程
下载地址:https://github.com/facebook/facebook-sdk-for-unity
2. 解压后目录
Facebook.Unity - Facebook.Unity.dll
Facebook.Unity.Android - Facebook.Unity.Android.dll
Facebook.Unity.Android.StrippingHack
Facebook.Unity.Canvas - Facebook.Unity.Canvas.dll
Facebook.Unity.Editor - Facebook.Unity.Editor.dll
Facebook.Unity.IOS - Facebook.Unity.IOS.dll
Facebook.Unity.IOS.StrippingHack
Facebook.Unity.Settings - Facebook.Unity.Settings.dll
Facebook.Unity.Tests - 示例?
Facebook.Unity.Windows - Windows 版本
facebook-android-wrapper - Android Studio 工程
UnitySDK - Unity 插件目录(只缺少dll文件)
scripts - 编译及复制用脚本
3. Visual Studio 打开解决方案
遇到几个问题:
a. 缺少 Unity 相关库文件
在根目录下创建存放依赖库文件的目录,如 MyLibs
从 Unity Editor 目录下,复制所有 Unity 库文件,如:
C:\Program Files\Unity\2019.4.34f1\Editor\Data\Managed\UnityEngine
b. 缺少 Unity.UI 相关定义
在根目录下创建 UnityEngine.UI 目录工程
复制 Unity 工程中 Library\PackageCache\com.unity.ugui@1.0.0\Runtime 的所有内容
4. 设置每个项目的引用
逐一点开每个工程,设置“属性”
设置引用路径,如 E:\Software\Develop\Facebook\facebook-sdk-for-unity-main\MyLibs\
右键点击“引用” => “增加引用”,添加相关依赖的库
5. 使用 Release 配置,生成工程
自行复制生成的 dll 文件到 UnitySDK 目录中对应的位置,或运行相关脚本