0

我在 Unity 游戏中使用 Proguard 和 R8 minify 来处理 Admob 中介。我将 AdColony 集成到游戏中,但在设备上运行时,似乎 AdColony 在制作 APK 之前已在清理中被删除。

我不确定keep我需要将哪一行添加到我的 proguard-user 文件中才能使 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 中;

提前致谢!

4

1 回答 1

0

我自己设法找到了答案,所以首先我会说需要添加的内容,然后是我如何弄清楚要添加的内容。

我的解决方法是将以下行添加到我的proguard-user.txt文件中:

-keep class com.adcolony.sdk.** { *; }

据我所见,在我的 Unity 项目中Assets/Plugins/Android,我有一堆包,其中一个名为com.adcolony.sdk-4.3.0. 因为命名约定似乎与通常出现在 proguard 文件中的文件相匹配,所以我尝试将上述的 keep 行添加到我的文件中,并且成功了!

我会说我对proguard几乎一无所知。如果这仅仅是巧合,并且我一直使用该命令的文件不是来自我在Android目录中找到的包,请在下面评论,以便我和将来发现这一点的人会得到更好的通知。

于 2020-12-17T16:06:28.690 回答