Android Flurry不会报告所有错误

Android Flurry不会报告所有错误,android,service,flurry,Android,Service,Flurry,我在Android应用程序中使用flurry o trace崩溃和错误。我最近发现了一个问题,我的一些错误(用onError()方法记录)没有显示在flurry Analytycs上 为了测试这是否是某种配置问题或延迟,我在应用程序的不同位置使用相同的配置触发了一些错误。因此,我看到从活动触发的错误被正确接收,但从我的服务触发的一些错误没有被接收。 我启用了flurry日志,他们说已经发送了这些错误,但是flurry仪表板没有看到它们 例如,从未收到的错误是我从自定义UncaughtExcept

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

为了测试这是否是某种配置问题或延迟,我在应用程序的不同位置使用相同的配置触发了一些错误。因此,我看到从活动触发的错误被正确接收,但从我的服务触发的一些错误没有被接收。 我启用了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);
        }

    });

如果你们中的任何人遇到这种错误并知道解决方法,我们将不胜感激

检查此故障跟踪


这是一个很好的库,由twitter创建。

onError
的构建更多地是作为日志事件的模拟,而不是作为崩溃报告的答案。事实上,您提交的跟踪将在256个字符后被截断,这是一个值在事件中可以具有的最大长度

不过,Flurry确实提供了一个崩溃报告解决方案,在这种情况下应该已经足够了


我正在使用Flurry的崩溃分析解决方案,但正如我在问题描述中所说的,服务崩溃不会报告,而活动崩溃会报告。我没有看到正在管理的会话,这可能可以解释这一点。但是,您可能不想这样做,因为副作用可能是会话数过多和会话时间过长。要启动和结束会话,需要调用onStarSession和onEndSession。我们通常不鼓励以这种方式进行会话,但这是可以做到的。这并不能真正解决我的问题,但它非常有效。。。无聊的。