You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Facebook SDK 11.0.0在Unity 2019.4.30f1 Android环境下崩溃如何解决?

根因说明

这个崩溃是Facebook SDK 11.0.0版本的已知问题:它的应用内购买(IAP)事件自动采集逻辑存在参数校验缺陷,onBillingServiceDisconnected回调触发时,Kotlin代码中声明为非空的入参实际传入了空值,触发空指针异常。
Android 11对后台服务绑定的限制更加严格,应用退后台后Google Play的Billing服务更容易被系统回收,所以该版本系统的崩溃占比最高。

可行解决方案

按优先级从高到低排列:

  • 升级Facebook SDK到11.1.0及以上正式版本,该bug已在后续版本中官方修复。升级后建议重新导出Android工程,验证IAP事件上报、支付流程无异常即可。
  • 若因项目兼容性问题暂时无法升级SDK,直接关闭Facebook的IAP自动采集功能即可规避崩溃,有三种实现方式:
    1. 在Unity编辑器的Facebook SDK设置面板中,关闭自动记录应用内购买事件的开关
    2. 在C#层Facebook SDK初始化完成后,调用FB.Mobile.SetAutoLogPurchaseRevenueEnabled(false)
    3. 直接在Android工程的AndroidManifest.xml中添加配置:
    <meta-data android:name="com.facebook.sdk.AutoLogPurchaseRevenue" android:value="false"/>
    
  • 兜底方案:如果需要保留Facebook IAP采集功能同时不想升级SDK,可以通过字节码插桩在InAppPurchaseBillingClientWrapper$BillingClientStateListenerWrapper.invoke方法入口添加空值校验,捕获空指针异常直接返回即可,该方案需要具备Android原生开发能力。

复现验证方法

没有Android 11实体机的情况下,可以通过Android Studio创建Android 11版本的模拟器:安装应用启动后切到后台,手动在设置中停止Google Play服务的运行,就能触发onBillingServiceDisconnected回调,验证修复方案是否生效。

内容的提问来源于stack exchange,提问作者fightaway

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 04:51:01