Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.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
应用程序和活动中的Android Critercism init_Android_Android Activity_Singleton_Crittercism - Fatal编程技术网

应用程序和活动中的Android Critercism init

应用程序和活动中的Android Critercism init,android,android-activity,singleton,crittercism,Android,Android Activity,Singleton,Crittercism,调用critercism.init(getApplicationContext(),id)是否安全(或推荐)在应用程序实现的onCreate和主活动中 Critercism设置的官方说明说在主要活动中调用它,而根本不提及应用程序 这似乎有一个副作用,即忽略应用程序实现的onCreate方法(实际上是单例)中发生的任何崩溃。只有在创建应用程序实现时调用init时才会报告异常 那么,在这两个位置调用init可以吗,还是应该只调用应用程序,还是只调用活动?在这两个位置初始化Critercism库是安全

调用
critercism.init(getApplicationContext(),id)是否安全(或推荐)在应用程序实现的onCreate和主活动中

Critercism设置的官方说明说在主要活动中调用它,而根本不提及应用程序


这似乎有一个副作用,即忽略应用程序实现的onCreate方法(实际上是单例)中发生的任何崩溃。只有在创建应用程序实现时调用init时才会报告异常


那么,在这两个位置调用init可以吗,还是应该只调用应用程序,还是只调用活动?

在这两个位置初始化Critercism库是安全的,但实际上并不必要。这是因为在第一次初始化之后,将检测并忽略任何后续初始化

这使您可以选择在任何位置进行初始化。尽管大多数人选择在活动级别执行,但在应用程序类中启动Critercism确实有效


无论在何处初始化库,所有活动都应报告崩溃和其他信息

除此之外,如果您在活动级别初始化Critercism,则独立运行的contentproviders中的任何崩溃都不会得到报告,或者,如果您在那里使用Critercism(例如,留下面包屑),则会导致contentprovider崩溃,但以下情况除外:

Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
at android.os.Handler.<init>(Handler.java:121)
at crittercism.android.f$5.<init>(Unknown Source)
at crittercism.android.f.<init>(Unknown Source)
at com.crittercism.app.Crittercism.<clinit>(Unknown Source)
原因:java.lang.RuntimeException:无法在未调用Looper.prepare()的线程内创建处理程序
android.os.Handler.(Handler.java:121)
在critercism.android.f$5(未知来源)
位于critercism.android.f.(未知来源)
在com.critercism.app.critercism.(未知来源)

因此,我将始终在Application.onCreate类中初始化CriterCism以避免这些问题。

在第一个活动的
onCreate
方法中调用它一次就足够了。这似乎会产生忽略应用程序实现的onCreate方法中发生的任何崩溃的副作用。初始化的一个缺点是Application.onCreate类中的关键是,您拥有应用程序的android.intent.action.BOOT_完成权限,每次用户启动手机时,您的应用程序负载都会增加。