为什么多次调用enableCrashReporting()?

时间:2015-07-31 01:49:41

标签: java android parse-platform

我的一个拥有大量观众的应用有以下错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.karlol.modernoapp/com.identifier.myapp.MainActivity}: java.lang.RuntimeException: enableCrashReporting() called multiple times.

解析enableCrashReporting()方法仅在onCreate()中调用一次,如下所示:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ParseCrashReporting.enable(this);
    Parse.initialize(this, "parse key", "another parse key");   
}
  

引起:java.lang.RuntimeException:调用enableCrashReporting()   多次。

我在Parse Crash Reporting平台上看到这个错误,现在大概发生了16次,只有1次发生在我身上,但我不记得了,当我运行应用程序一千次时,我找不到错误

我是否正确调用enableParseReporting()方法?我是否必须检查方法是否已被调用以便不再调用它?

1 个答案:

答案 0 :(得分:2)

每次更改活动并返回时,都会调用Activity的onCreate()。除非您处理配置更改,否则在旋转屏幕时也会调用它,因为Activity会被终止并重新创建。

考虑创建一个扩展Application的类,并在Applications onCreate()中调用该初始化。只有当您的任何应用组件在应用生命周期开始时启动时,才会调用此方法。