Как работать с рекламой Splunk Mint и Facebook в одном проекте

Я пытался интегрировать рекламу Facebook в своем приложении для Android с Audience Network-SDK:5.0.0, и Facebook SDK рухнул с этой ошибкой:

10-16 13:12:07.128 25301-25725/? D/ProxyCache: Open connection  to http://127.0.0.1:43557/ping
        10-16 13:12:08.318 25301-25586/? E/ProxyCache: Error pinging server [attempt: 2, timeout: 1200]. 
        java.util.concurrent.TimeoutException
            at java.util.concurrent.FutureTask.get(FutureTask.java:176)
            at com.facebook.ads.internal.r.b.f.b(Unknown Source)
            at com.facebook.ads.internal.r.b.f.<init>(Unknown Source)
            at com.facebook.ads.internal.r.b.f.<init>(Unknown Source)
            at com.facebook.ads.internal.f.d$1.a(Unknown Source)
            at com.facebook.ads.internal.f.d$1.call(Unknown Source)
            at java.util.concurrent.FutureTask.run(FutureTask.java:237)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
            at java.lang.Thread.run(Thread.java:818)
        Shutdown server... Error pinging server [attempts: 3, max timeout: 1200].
    10-16 13:12:08.318 25301-25586/? I/ProxyCache: Shutdown proxy server
    10-16 13:12:08.328 25301-25602/? W/System.err: java.lang.InterruptedException
    10-16 13:12:08.348 25301-25602/? W/System.err:     at java.lang.Thread.sleep(Native Method)
            at java.lang.Thread.sleep(Thread.java:1031)
            at java.lang.Thread.sleep(Thread.java:985)
            at com.splunk.mint.ExceptionHandler.uncaughtException(ExceptionHandler.java:64)
            at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
            at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
    10-16 13:12:08.348 25301-25602/? E/AndroidRuntime: FATAL EXCEPTION: Thread-12294
        PID: 25301
        java.lang.NullPointerException: Attempt to invoke virtual method 'void java.io.FileDescriptor.setInt$(int)' on a null object reference
            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:93)
            at java.net.ServerSocket.implAccept(ServerSocket.java:216)
            at java.net.ServerSocket.accept(ServerSocket.java:140)
            at com.facebook.ads.internal.r.b.f.e(Unknown Source)
            at com.facebook.ads.internal.r.b.f.a(Unknown Source)
            at com.facebook.ads.internal.r.b.f$e.run(Unknown Source)
            at java.lang.Thread.run(Thread.java:818)

Как вы видите, трассировка просто говорит вам, что ping (и соединение с локальным хостом) не удалось, но он не скажет вам больше. Я не решаю это, потому что это происходит только на физическом устройстве и только с моим приложением (пример приложения от Facebook отлично работает на том же устройстве и в той же сети).

Я не знаю, почему это происходит и как это исправить.

1 ответ

Вот и я наконец нашел ошибку и решение.

Позвольте мне объяснить ошибку:

  1. SDK для рекламы в Facebook использует локальный кеш-прокси для загрузки ресурсов объявлений

  2. Я также использую Splunk Mint для отслеживания ошибок моего приложения в производстве.

  3. В библиотеке Splunk Mint есть проблемы с мониторингом http:

Отключить мониторинг сети

Решением было добавить эту строку перед init Mint SDK:

Mint.disableNetworkMonitoring();
Другие вопросы по тегам