Ошибка инициализации Flurry с Android
У меня есть следующая ошибка при инициализации Flurry на Application Class:
04-27 10: 57: 47.360: W / dalvikvm (26744): VFY: невозможно разрешить статический метод 22939: Lcom/google/android/gms/ads/identifier/AdvertisingIdClient;.getAdvertisingIdInfo (Landroid/content/Context;)Lcom/ Google / Android / GMS / объявление / идентификатор /AdvertisingIdClient$Info; 04-27 10:57:47.370: W/dalvikvm(26744): VFY: невозможно разрешить виртуальный метод 22937: Lcom/google/android/gms/ads/identifier/AdvertisingIdClient$Info;.getId ()Ljava/lang/String; 04-27 10:57:47.370: W/dalvikvm(26744): VFY: невозможно разрешить виртуальный метод 22938: Lcom/google/android/gms/ads/identifier/AdvertisingIdClient$Info;.isLimitAdTrackingEnabled ()Z 04-27 10:57:47.510: W/System.err(26744): java.lang.NoClassDefFoundError: com.google.android.gms.ads.identifier.AdvertisingIdClient 04-27 10:57:47.510: W/System.err(26744): на com.flurry.sdk.fe.n(SourceFile:239) 04-27 10:57:47.515: W/System.err(26744): на com.flurry.sdk.fe.j(SourceFile:191) 04-27 10:57:47.515: W/System.err(26744): на com.flurry.sdk.fe.i(SourceFile:154) 04-27 10:57:47.515: W/System.err(26744): на com.flurry.sdk.fe.a(SourceFile:40) 04-27 10:57:47.520: W/System.err(26744): на com.flurry.sdk.fe$1.safeRun(SourceFile:83) 04-27 10:57:47.520: W/System.err(26744): на com.flurry.sdk.hq.run(SourceFile:49) 04-27 10:57:47.525: W/System.err(26744): на android.os.Handler.handleCallback(Handler.java:615) 04-27 10:57:47.530: W/System.err(26744): на android.os.Handler.dispatchMessage(Handler.java:92) 04-27 10:57:47.530: W/System.err(26744): на android.os.Looper.loop(Looper.java:137) 04-27 10:57:47.530: W/System.err(26744): на android.os.HandlerThread.run(HandlerThread.java:60) 04-27 10:57:47.570: W/System.err(26744): java.lang.NullPointerException 04-27 10:57:47.570: W/System.err(26744): на com.flurry.sdk.ce.a(SourceFile:52) 04-27 10:57:47.570: W/System.err(26744): на com.flurry.sdk.go$3.safeRun(SourceFile:59) 04-27 10:57:47.570: W/System.err(26744): на com.flurry.sdk.hq.run(SourceFile:49) 04-27 10:57:47.570: W/System.err(26744): на android.os.Handler.handleCallback(Handler.java:615) 04-27 10:57:47.575: W/System.err(26744): на android.os.Handler.dispatchMessage(Handler.java:92) 04-27 10:57:47.575: W/System.err(26744): на android.os.Looper.loop(Looper.java:137) 04-27 10:57:47.575: W/System.err(26744): на android.os.HandlerThread.run (HandlerThread.java:60)
Затем после этого все мои события и сессии отменяются и не видны на информационной панели.
Я использую FlurryAnalytics-5.3.0.jar и FlurryAds-5.3.0.jar.
Код инициализации:
FlurryAgent.setLogEnabled(BuildConstants.IS_RUNNING_DEBUG);
if (BuildConstants.IS_RUNNING_DEBUG) {
FlurryAgent.setLogLevel(Log.VERBOSE);
} else {
FlurryAgent.setLogLevel(Log.ERROR);
}
FlurryAgent.setLogEvents(true);
FlurryAgent.setReportLocation(true);
FlurryAgent.init(context, ImplementationUtils.getAnalyticsKey());
РЕДАКТИРОВАТЬ: я добавил следующий код в манифест: <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
и теперь у меня есть эта ошибка \ предупреждение:
04-27 11: 30: 04.125: W / System.err (28320): на com.flurry.sdk.fe.n(SourceFile:239) 04-27 11:30:04.130: W/System.err(28320): на com.flurry.sdk.fe.j(SourceFile:191) 04-27 11:30:04.130: W/System.err(28320): на com.flurry.sdk.fe.i(SourceFile:154) 04-27 11:30:04.140: W/System.err(28320): на com.flurry.sdk.fe.a(SourceFile:40) 04-27 11:30:04.140: W/System.err(28320): на com.flurry.sdk.fe$1.safeRun(SourceFile:83) 04-27 11:30:04.140: W/System.err(28320): на com.flurry.sdk.hq.run(SourceFile:49) 04-27 11:30:04.185: W/System.err(28320): на com.flurry.sdk.ce.a(SourceFile:52) 04-27 11:30:04.185: W/System.err(28320): на com.flurry.sdk.go$3.safeRun(SourceFile:59) 04-27 11:30:04.185: W/System.err(28320): на com.flurry.sdk.hq.run(SourceFile:49) 04-27 11:30:07.235: W/FlurryAgent(28320): сеанс Flurry создан для контекста:com.foo 04-27 11:30:07.290: W/dalvikvm(28320): ссылка класса 'Lcom/flurry/sdk/bp;' не удалось 04-27 11:30:07.290: E/dalvikvm(28320): не удалось найти класс 'com.flurry.sdk.bp', на который ссылается метод com.flurry.sdk.bq.a 04-27 11:30:07.290: W/dalvikvm(28320): VFY: невозможно разрешить новый экземпляр 2608 (Lcom/flurry/sdk/bp;) в Lcom/flurry/sdk/bq; 04-27 11:30:07.290: W/dalvikvm(28320): ссылка класса 'Lcom/flurry/sdk/br;' не удалось 04-27 11:30:07.290: E/dalvikvm(28320): не удалось найти класс 'com.flurry.sdk.br', на который ссылается метод com.flurry.sdk.bq.a 04-27 11:30:07.290: W/dalvikvm(28320): VFY: невозможно разрешить новый экземпляр 2610 (Lcom/flurry/sdk/br;) в Lcom/flurry/sdk/bq; 04-27 11:30:07.295: W/dalvikvm(28320): ссылка класса 'Lcom/flurry/sdk/bp;' не удалось 04-27 11:30:07.300: W/dalvikvm(28320): ссылка класса 'Lcom/flurry/sdk/br;' не удалось
2 ответа
Я использовал Google Play Play для Froyo, но Flurry требует Google Play Services 6+ в качестве зависимости сборки.
Я также обновляю свой minSdkVersion с 8 (2.2.x) до 9 (2.3)
После этого обновления все работает нормально.
Поместите эти две строки в метод onCreate() вашего приложения
// configure Flurry
FlurryAgent.setLogEnabled(false);
// init Flurry
FlurryAgent.init(this,FLURRY_API_KEY);
Это прекрасно работает для меня. Просто убедитесь, что вы используете правильный FLURRY_API_KEY. Это работает для аналитики.