【问题标题】:How to keep AdColony with Proguard in Unity? [closed]如何在 Unity 中使用 Proguard 保留 AdColony? [关闭]
【发布时间】:2020-12-17 15:11:26
【问题描述】:
我在 Unity 游戏中使用 Proguard 和 R8 minify 来处理 Admob 中介。我将 AdColony 集成到游戏中,但在设备上运行时,似乎 AdColony 在生成 APK 之前已在清理中被删除。
我不确定我需要在我的 proguard-user 文件中添加什么 keep 行才能使 AdColony 正常工作。
有人知道吗?
例如,以下示例来自应该为 AdColony 设置 GDPR 设置的行:
2020/12/17 17:05:02.861 9593 9661 错误 Unity AndroidJavaException: java.lang.NoSuchMethodError: no non-static method with name='setGDPRRequired' signature='(Z)Ljava/lang/Object;'在类 Ljava.lang.Object;
提前致谢!
【问题讨论】:
标签:
unity3d
proguard
adcolony
【解决方案1】:
我自己设法找到了答案,所以首先我会说需要添加什么,然后我会说我是如何弄清楚要添加什么的。
我的解决方法是将以下行添加到我的 proguard-user.txt 文件中:
-keep class com.adcolony.sdk.** { *; }
据我所见,在 Assets/Plugins/Android 下的 Unity 项目中,我有一堆包,其中一个名为 com.adcolony.sdk-4.3.0。因为命名约定似乎与通常出现在 proguard 文件中的文件相匹配,所以我尝试将上述 keep 行添加到我的文件中,并且成功了!
我会说我对 proguard 几乎一无所知。如果这仅仅是巧合,并且我一直使用该命令的文件不是来自我在 Android 目录中找到的包,请在下方评论,以便我和将来发现此问题的人会得到更好的通知。