Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Acra在MainActivity的onCreate()中工作不正常?_Java_Android_Acra - Fatal编程技术网

Java Acra在MainActivity的onCreate()中工作不正常?

Java Acra在MainActivity的onCreate()中工作不正常?,java,android,acra,Java,Android,Acra,出于测试目的,我在MainActivity的onCreate()方法中创建了一个错误。 Acra意识到了这一点,并展示了祝酒词 02-23 19:05:35.075: E/ACRA(599): ACRA caught a RuntimeException exception for .... Building report. 02-23 19:05:35.080: I/ACRA(599): READ_LOGS granted! ACRA can include LogCat and DropBo

出于测试目的,我在MainActivity的onCreate()方法中创建了一个错误。 Acra意识到了这一点,并展示了祝酒词

02-23 19:05:35.075: E/ACRA(599): ACRA caught a RuntimeException exception for .... Building report.
02-23 19:05:35.080: I/ACRA(599): READ_LOGS granted! ACRA can include LogCat and DropBox data.
02-23 19:05:35.080: D/ACRA(599): Writing crash report file 1361642735000.stacktrace.
02-23 19:05:35.125: D/ACRA(599): Waiting for Toast + worker...
02-23 19:05:35.125: D/dalvikvm(599): GC_CONCURRENT freed 278K, 18% free 2512K/3032K, paused 2ms+4ms, total 29ms
02-23 19:05:38.160: D/ACRA(599): About to create DIALOG from #handleException
02-23 19:05:38.160: D/ACRA(599): Creating Dialog for 1361642735000.stacktrace
02-23 19:05:38.170: D/ACRA(599): Wait for Toast + worker ended. Kill Application ? true
02-23 19:05:38.190: E/ACRA(599): ... fatal error : Unable to start activity ComponentInfo{.../....MainActivity}: java.lang.ArithmeticException: divide by zero
但在那之后,一切都会一次又一次无休止地发生。。。 祝酒词又出现了,我又看到了stackstrce

当我在中创建一个错误时,比如说onOptionsItemSelected(),一切正常。祝酒词出现了。我的应用程序关闭。对话框出现。这就是我想要的

但是为什么在onCreate()中不能正常工作呢

Acra库(版本4.4.0)位于libs文件夹中

主要活动:

import org.acra.ACRA;
import org.acra.annotation.*;
import org.acra.ReportingInteractionMode;

import android.app.Application;

@ReportsCrashes(formKey = "",
        mailTo = "my_email_address", 
        mode = ReportingInteractionMode.DIALOG,
        resToastText = R.string.crash_toast_text,
        resDialogText = R.string.crash_dialog_text,
        resDialogIcon = android.R.drawable.ic_dialog_info,
        resDialogTitle = R.string.crash_dialog_title,
        resDialogCommentPrompt = R.string.crash_dialog_comment_prompt,
        resDialogOkToast = R.string.crash_dialog_ok_toast
        )

public class MyApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        ACRA.init(this);
    }

}
舱单:

<application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/Theme.Sherlock.Light.DarkActionBar"
        android:allowBackup="true"
        android:name="MyApplication" >

        <activity android:name="org.acra.CrashReportDialog"
            android:theme="@android:style/Theme.Dialog"
            android:launchMode="singleInstance"
            android:excludeFromRecents="true"
            android:finishOnTaskLaunch="true" />
可运行的:

private Runnable mUpdateTimeTask = new Runnable() {
    public void run() {

        // doing stuff here...

        mHandler.postDelayed(mUpdateTimeTask, 1000);
    }
};

因此,此行为似乎是一个Acra错误,将在版本4.5->

中得到修复。在发布MainActivity的onCreate()后,您的活动似乎正在重新启动。我想我的应用程序在以前发生错误时不会启动Runnable?我怎样才能防止这种情况发生?@Oliver:你能成功地打开对话吗。在我的例子中,ACRA无法打开对话框。您是否能够成功打开对话框。在我的例子中,ACRA无法打开对话框。我正在使用4.5 ACRA。
private Runnable mUpdateTimeTask = new Runnable() {
    public void run() {

        // doing stuff here...

        mHandler.postDelayed(mUpdateTimeTask, 1000);
    }
};