【问题标题】:Facebook Audience Network Proguard settingsFacebook Audience Network Proguard 设置
【发布时间】:2014-07-26 04:35:01
【问题描述】:

我目前在我的应用中使用 Proguard,但 Audience Network 无法正常工作。我需要一些不同的配置,而不是通常的配置:

-keep class com.facebook.** { *; }

问题是集成指南没有提到任何类型的 Proguard 配置。是否有人已经面临这个问题并弄清楚缺少什么?

【问题讨论】:

  • 我正在使用相同的设置,它工作正常。你能详细说明哪个类/函数对你不利吗?
  • 它不会在任何地方中断。我还收到了测试广告(只是一个屏幕说一切都很好)。但是当我尝试接收真实的广告时,我什么也看不到。然后我删除了 ProGuard 混淆,它开始工作。

标签: android facebook proguard facebook-audience-network


【解决方案1】:

我需要一些不同的配置,而不是通常的:

-keep class com.facebook.** { *; }

你需要使用

-keep class com.facebook.ads.** { *; }

proguard 配置显示 Facebook Audience Network。因为在AudienceNetwork.jar 中的主包是com.facebook.ads

【讨论】:

  • 没听懂。请详细说明。
  • -keep class com.facebook.** { *; } 将所有内容都保留在此包中,包括 .ads.** 和 -keep class com.facebook.ads.** { *; } 将所有内容保留在 ads.** 包中,因此基本上两个说明的结果相同。广告包的保留方式对吗?
  • @ThanosF 你是对的,因为 Ads 包被保留,但在 -keep class com.facebook.** { *; } Proguard 将保留所有 facebook 类,例如如果实现 Facebook 登录,它也会保留登录和信使类。但在 com.facebook.ads.** { *; } 中,它将保留广告类,同样适用于登录 com.facebook.login.** { *; }
【解决方案2】:
-keep class com.facebook.ads.** { *; }
-dontwarn com.facebook.ads.**

【讨论】:

  • 虽然这段代码 sn-p 可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您正在为将来的读者回答问题,而这些人可能不知道您的代码建议的原因。也请尽量不要用解释性的 cmets 挤满你的代码,这会降低代码和解释的可读性!
【解决方案3】:

简单地使用

-keep class com.facebook.ads.** { *; }

【讨论】:

    【解决方案4】:

    请把这行写在proguard-rules.pro文件中

    -keep class com.facebook.ads** {
       *;
    }
    -dontwarn
    -ignorewarnings
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-29
      相关资源
      最近更新 更多