Настройки Facebook Audience Network Proguard

В настоящее время я использую Proguard в своем приложении, и сеть аудитории не работает. Мне нужна другая конфигурация, нежели обычная:

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

Проблема в том, что в руководстве по интеграции не упоминаются никакие конфигурации Proguard. Кто-нибудь уже сталкивался с этой проблемой и разобрался, чего не хватает?


person Sergio Carneiro    schedule 26.07.2014    source источник
comment
Я использую ту же настройку, и она отлично работает. Можете ли вы уточнить, какой класс / функция вам подходит?   -  person Amir Naor    schedule 06.08.2014
comment
Ничего не ломается. Я также получаю тестовые объявления (просто экран, говорящий, что все в порядке). Но когда я пытаюсь получить настоящую рекламу, я ничего не вижу. Затем я удаляю обфускацию ProGuard, и она начинает работать.   -  person Sergio Carneiro    schedule 14.08.2014


Ответы (4)


Мне нужна другая конфигурация, нежели обычная:

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

Вам нужно использовать

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

конфигурация proguard для показа сети аудитории Facebook, потому что inAudienceNetwork.jar основной пакет com.facebook.ads

person Giru Bhai    schedule 28.04.2015
comment
не понял вас. просьба уточнить. - person Giru Bhai; 27.07.2015
comment
-keep class com.facebook.** { *; } сохраняет все в этом пакете, включая .ads. ** и -keep class com.facebook.ads.** { *; } сохраняет все под пакетом ads. **, поэтому в основном результат одинаков для обеих инструкций. Рекламный пакет все равно сохраняется, верно? - person ThanosFisherman; 27.07.2015
comment
@ThanosF, вы правы, так как пакет Ads сохраняется, но в -keep class com.facebook.** { *; } Proguard также сохранит все классы facebook, например, для он также сохранит логин и класс мессенджера, если реализован вход в Facebook. Но в com.facebook.ads.** { *; } он сохранит классы рекламы, и то же самое будет применяться для входа com.facebook.login.** { *; }. - person Giru Bhai; 29.02.2016

просто используйте

-keep class com.facebook.ads.** { *; }
person Williem    schedule 28.03.2016

Запишите эту строку в proguard-rules.pro файл

-keep class com.facebook.ads** {
   *;
}
-dontwarn
-ignorewarnings
person Tariq Mahmood    schedule 05.09.2019

person    schedule
comment
Хотя этот фрагмент кода может решить вопрос, включение объяснения действительно помогает улучшить качество вашего сообщения. Помните, что вы отвечаете на вопрос для читателей в будущем, и эти люди могут не знать причины вашего предложения кода. Также постарайтесь не загромождать свой код пояснительными комментариями, это снижает удобочитаемость как кода, так и пояснений! - person kayess; 06.12.2016