Flurry不会报告所有错误

时间:2015-10-16 09:38:21

标签: android service flurry

我在我的Android应用中使用了flurry o trace crash和错误。我最近发现了一个问题,我的一些错误(使用onError()方法记录)没有显示在flurry analitycs上。

为了测试它是不是某种配置问题或延迟,我在我的应用程序的不同位置使用相同的配置发出了一些错误。结果我看到从活动中触发的错误被正确接收,但是没有收到从我的服务中触发的一些错误。 我启用了flurry日志,他们说这些错误已经发送,但是flurry仪表板看不到它们。

例如,从未收到的错误是我从自定义UncaughtExceptionHandler触发的错误,因为Flurry也不会报告服务崩溃。这是它的代码:

    final Context context = this;
    final Thread.UncaughtExceptionHandler uncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
    Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
        @Override
        public void uncaughtException(Thread thread, Throwable ex) {
            Log.e(TAG, "ERROR DETECTED------------------------------------------", ex);
            //Utils.sendFlurryError(context, "serviceCrash", "Uncaught error in Swiper Sevice",new Exception(ex));
            FlurryAgent.onError("serviceCrash","Uncaught error in Swiper Service",ex );
            NotificationManagerCompat manager = NotificationManagerCompat.from(context);
            NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
                    .setContentIntent(PendingIntent.getActivity(context, 42, new Intent(context, AppConstants.LAUNCH_CLASS), 0))
                    .setSmallIcon(R.drawable.icon_notif2)
                            //.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.logo_rond))
                    .setGroup("swiper")
                    .setAutoCancel(true)
                    .setContentTitle("Swiper")
                    .setContentText("Swiper met an error. Please restart swiper to correct it");
            manager.notify(Notification.SWIPER_NOTIF_ID, builder.build());
           uncaughtExceptionHandler.uncaughtException(thread, ex);
        }

    });

如果你们中的任何一个遇到这种错误并且知道解决方法,那将非常感激

2 个答案:

答案 0 :(得分:0)

检查此格式以进行崩溃跟踪

https://www.crashlytics.com/

这是一个很好的图书馆,由twitter制作。

答案 1 :(得分:0)

onError更像是记录事件的模拟而不是崩溃报告的答案。实际上,您提交的跟踪将在256个字符后被截断,这是事件中值的最大长度。

但是,Flurry确实提供了崩溃报告解决方案,在这种情况下应该足够了。

https://developer.yahoo.com/flurry/docs/overview/lexicon/crashanalytics/