Android 的 Flurry 初始化错误
Flurry initialization error with Android
在应用程序 Class 上初始化 flurry 时出现以下错误:
04-27 10:57:47.360: W/dalvikvm(26744): VFY: unable to resolve static method 22939: Lcom/google/android/gms/ads/identifier/AdvertisingIdClient;.getAdvertisingIdInfo (Landroid/content/Context;)Lcom/google/android/gms/ads/identifier/AdvertisingIdClient$Info;
04-27 10:57:47.370: W/dalvikvm(26744): VFY: unable to resolve virtual method 22937: Lcom/google/android/gms/ads/identifier/AdvertisingIdClient$Info;.getId ()Ljava/lang/String;
04-27 10:57:47.370: W/dalvikvm(26744): VFY: unable to resolve virtual method 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): at com.flurry.sdk.fe.n(SourceFile:239)
04-27 10:57:47.515: W/System.err(26744): at com.flurry.sdk.fe.j(SourceFile:191)
04-27 10:57:47.515: W/System.err(26744): at com.flurry.sdk.fe.i(SourceFile:154)
04-27 10:57:47.515: W/System.err(26744): at com.flurry.sdk.fe.a(SourceFile:40)
04-27 10:57:47.520: W/System.err(26744): at com.flurry.sdk.fe.safeRun(SourceFile:83)
04-27 10:57:47.520: W/System.err(26744): at com.flurry.sdk.hq.run(SourceFile:49)
04-27 10:57:47.525: W/System.err(26744): at android.os.Handler.handleCallback(Handler.java:615)
04-27 10:57:47.530: W/System.err(26744): at android.os.Handler.dispatchMessage(Handler.java:92)
04-27 10:57:47.530: W/System.err(26744): at android.os.Looper.loop(Looper.java:137)
04-27 10:57:47.530: W/System.err(26744): at 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): at com.flurry.sdk.ce.a(SourceFile:52)
04-27 10:57:47.570: W/System.err(26744): at com.flurry.sdk.go.safeRun(SourceFile:59)
04-27 10:57:47.570: W/System.err(26744): at com.flurry.sdk.hq.run(SourceFile:49)
04-27 10:57:47.570: W/System.err(26744): at android.os.Handler.handleCallback(Handler.java:615)
04-27 10:57:47.575: W/System.err(26744): at android.os.Handler.dispatchMessage(Handler.java:92)
04-27 10:57:47.575: W/System.err(26744): at android.os.Looper.loop(Looper.java:137)
04-27 10:57:47.575: W/System.err(26744): at android.os.HandlerThread.run(HandlerThread.java:60)
然后在这之后我所有的事件和会话都被丢弃并且在 flurry 仪表板上不可见。
我正在使用 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" />
现在我有了这个 error\warning:
04-27 11:30:04.125: W/System.err(28320): at com.flurry.sdk.fe.n(SourceFile:239)
04-27 11:30:04.130: W/System.err(28320): at com.flurry.sdk.fe.j(SourceFile:191)
04-27 11:30:04.130: W/System.err(28320): at com.flurry.sdk.fe.i(SourceFile:154)
04-27 11:30:04.140: W/System.err(28320): at com.flurry.sdk.fe.a(SourceFile:40)
04-27 11:30:04.140: W/System.err(28320): at com.flurry.sdk.fe.safeRun(SourceFile:83)
04-27 11:30:04.140: W/System.err(28320): at com.flurry.sdk.hq.run(SourceFile:49)
04-27 11:30:04.185: W/System.err(28320): at com.flurry.sdk.ce.a(SourceFile:52)
04-27 11:30:04.185: W/System.err(28320): at com.flurry.sdk.go.safeRun(SourceFile:59)
04-27 11:30:04.185: W/System.err(28320): at com.flurry.sdk.hq.run(SourceFile:49)
04-27 11:30:07.235: W/FlurryAgent(28320): Flurry session created for context:com.foo
04-27 11:30:07.290: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/bp;' failed
04-27 11:30:07.290: E/dalvikvm(28320): Could not find class 'com.flurry.sdk.bp', referenced from method com.flurry.sdk.bq.a
04-27 11:30:07.290: W/dalvikvm(28320): VFY: unable to resolve new-instance 2608 (Lcom/flurry/sdk/bp;) in Lcom/flurry/sdk/bq;
04-27 11:30:07.290: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/br;' failed
04-27 11:30:07.290: E/dalvikvm(28320): Could not find class 'com.flurry.sdk.br', referenced from method com.flurry.sdk.bq.a
04-27 11:30:07.290: W/dalvikvm(28320): VFY: unable to resolve new-instance 2610 (Lcom/flurry/sdk/br;) in Lcom/flurry/sdk/bq;
04-27 11:30:07.295: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/bp;' failed
04-27 11:30:07.300: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/br;' failed
将这两行放在应用程序的 onCreate() 方法中
// configure Flurry
FlurryAgent.setLogEnabled(false);
// init Flurry
FlurryAgent.init(this,FLURRY_API_KEY);
这对我来说工作得很好。
只要确保您使用的是正确的 FLURRY_API_KEY。
这适用于分析部分。
我正在为 froyo 使用 google 服务播放,但 flurry 需要 Google Play Services 6+ 作为构建依赖项。
我也将我的 minSdkVersion 从 8 (2.2.x) 升级到 9 (2.3)
升级后一切正常。
在应用程序 Class 上初始化 flurry 时出现以下错误:
04-27 10:57:47.360: W/dalvikvm(26744): VFY: unable to resolve static method 22939: Lcom/google/android/gms/ads/identifier/AdvertisingIdClient;.getAdvertisingIdInfo (Landroid/content/Context;)Lcom/google/android/gms/ads/identifier/AdvertisingIdClient$Info; 04-27 10:57:47.370: W/dalvikvm(26744): VFY: unable to resolve virtual method 22937: Lcom/google/android/gms/ads/identifier/AdvertisingIdClient$Info;.getId ()Ljava/lang/String; 04-27 10:57:47.370: W/dalvikvm(26744): VFY: unable to resolve virtual method 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): at com.flurry.sdk.fe.n(SourceFile:239) 04-27 10:57:47.515: W/System.err(26744): at com.flurry.sdk.fe.j(SourceFile:191) 04-27 10:57:47.515: W/System.err(26744): at com.flurry.sdk.fe.i(SourceFile:154) 04-27 10:57:47.515: W/System.err(26744): at com.flurry.sdk.fe.a(SourceFile:40) 04-27 10:57:47.520: W/System.err(26744): at com.flurry.sdk.fe.safeRun(SourceFile:83) 04-27 10:57:47.520: W/System.err(26744): at com.flurry.sdk.hq.run(SourceFile:49) 04-27 10:57:47.525: W/System.err(26744): at android.os.Handler.handleCallback(Handler.java:615) 04-27 10:57:47.530: W/System.err(26744): at android.os.Handler.dispatchMessage(Handler.java:92) 04-27 10:57:47.530: W/System.err(26744): at android.os.Looper.loop(Looper.java:137) 04-27 10:57:47.530: W/System.err(26744): at 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): at com.flurry.sdk.ce.a(SourceFile:52) 04-27 10:57:47.570: W/System.err(26744): at com.flurry.sdk.go.safeRun(SourceFile:59) 04-27 10:57:47.570: W/System.err(26744): at com.flurry.sdk.hq.run(SourceFile:49) 04-27 10:57:47.570: W/System.err(26744): at android.os.Handler.handleCallback(Handler.java:615) 04-27 10:57:47.575: W/System.err(26744): at android.os.Handler.dispatchMessage(Handler.java:92) 04-27 10:57:47.575: W/System.err(26744): at android.os.Looper.loop(Looper.java:137) 04-27 10:57:47.575: W/System.err(26744): at android.os.HandlerThread.run(HandlerThread.java:60)
然后在这之后我所有的事件和会话都被丢弃并且在 flurry 仪表板上不可见。
我正在使用 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" />
现在我有了这个 error\warning:
04-27 11:30:04.125: W/System.err(28320): at com.flurry.sdk.fe.n(SourceFile:239) 04-27 11:30:04.130: W/System.err(28320): at com.flurry.sdk.fe.j(SourceFile:191) 04-27 11:30:04.130: W/System.err(28320): at com.flurry.sdk.fe.i(SourceFile:154) 04-27 11:30:04.140: W/System.err(28320): at com.flurry.sdk.fe.a(SourceFile:40) 04-27 11:30:04.140: W/System.err(28320): at com.flurry.sdk.fe.safeRun(SourceFile:83) 04-27 11:30:04.140: W/System.err(28320): at com.flurry.sdk.hq.run(SourceFile:49) 04-27 11:30:04.185: W/System.err(28320): at com.flurry.sdk.ce.a(SourceFile:52) 04-27 11:30:04.185: W/System.err(28320): at com.flurry.sdk.go.safeRun(SourceFile:59) 04-27 11:30:04.185: W/System.err(28320): at com.flurry.sdk.hq.run(SourceFile:49) 04-27 11:30:07.235: W/FlurryAgent(28320): Flurry session created for context:com.foo 04-27 11:30:07.290: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/bp;' failed 04-27 11:30:07.290: E/dalvikvm(28320): Could not find class 'com.flurry.sdk.bp', referenced from method com.flurry.sdk.bq.a 04-27 11:30:07.290: W/dalvikvm(28320): VFY: unable to resolve new-instance 2608 (Lcom/flurry/sdk/bp;) in Lcom/flurry/sdk/bq; 04-27 11:30:07.290: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/br;' failed 04-27 11:30:07.290: E/dalvikvm(28320): Could not find class 'com.flurry.sdk.br', referenced from method com.flurry.sdk.bq.a 04-27 11:30:07.290: W/dalvikvm(28320): VFY: unable to resolve new-instance 2610 (Lcom/flurry/sdk/br;) in Lcom/flurry/sdk/bq; 04-27 11:30:07.295: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/bp;' failed 04-27 11:30:07.300: W/dalvikvm(28320): Link of class 'Lcom/flurry/sdk/br;' failed
将这两行放在应用程序的 onCreate() 方法中
// configure Flurry
FlurryAgent.setLogEnabled(false);
// init Flurry
FlurryAgent.init(this,FLURRY_API_KEY);
这对我来说工作得很好。 只要确保您使用的是正确的 FLURRY_API_KEY。 这适用于分析部分。
我正在为 froyo 使用 google 服务播放,但 flurry 需要 Google Play Services 6+ 作为构建依赖项。
我也将我的 minSdkVersion 从 8 (2.2.x) 升级到 9 (2.3)
升级后一切正常。