我正在使用ACRA获取崩溃报告,我的应用程序正在崩溃,出现以下错误。
java.lang.IllegalStateException: ACRA#init called more than once
at org.acra.ACRA.init(ACRA.java:121)
at com.m7.nomad.NomadApplication.onConfigurationChanged(NomadApplication.java:15)
at android.app.ActivityThread.performConfigurationChanged(ActivityThread.java:3515)
at android.app.ActivityThread.handleConfigurationChanged(ActivityThread.java:3655)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1128)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:150)
at android.app.ActivityThread.main(ActivityThread.java:4369)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:846)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:604)
at dalvik.system.NativeStart.main(Native Method)
你知道怎么解决这个问题吗?
我认为这是相当明确的=> ACRA。Init方法被调用两次(或更多次)
为什么在onConfigurationChanged方法中初始化ACRA ?
onConfigurationChanged在每次更改配置时被调用(很好的演绎Dr Watson…):例如,当您更改手持设备的方向时,…
您应该在应用程序中初始化ACRA。onCreate方法(只被调用一次):
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
ACRA.init(this);
}
}