facebook Unity sdk。我可以减少其中的方法数量

时间:2017-05-23 15:44:13

标签: android facebook unity3d

由于这个问题,我无法构建我当前的Unity Android游戏"方法引用太多:76221;最大值为65536"

我正在使用以下SDK

Facebook(登录并结交朋友)

GameSparks(后端)

Firebase消息传递(用于推送通知)

Appodeal(广告)

在联系appodeals支持后,他们向我指出了一个不同的appoded sdk包,当我使用那个时,我仍然无法构建,但数字从76221下降到71455.

我想知道我是否可以减少facebook SDK并且可能低于65536分。

我正在使用facebook SDK做的所有事情......

初始化

登录

获取访问令牌

获取个人资料图片的网址

2 个答案:

答案 0 :(得分:0)

您应该通过不包括整个软件包而只包括您真正需要的部分来成功解决您的问题。例如,如果您在firebase上执行的操作都是消息传递,则仅包括核心和消息传递:

compile 'com.google.firebase:firebase-core:10.2.4'
compile 'com.google.firebase:firebase-messaging:10.2.4'

答案 1 :(得分:0)

您可能尚未探索过的一个解决方案是将项目导出到Android Studio,然后尝试删除内容。您也可以定位更高的minSDK(我认为高于Lollipop)。不幸的是,我没有更坚固的混凝土"答案"这将解决这个问题,但我可以向您提供有关问题性质的更多详细信息。

在Dalvik运行时上运行的应用程序将导出到Dalvik可执行文件(DEX)文件中。 Dalvik规范只允许65,536个方法引用,因此您的问题。新的ART运行时具有multidex支持,即多个DEX文件。

您可以在此处阅读更多内容:https://developer.android.com/studio/build/multidex.html

有关于此的Unity论坛帖子。您可以在此处阅读更多内容:https://forum.unity3d.com/threads/multidex-support-on-android.325429/