【发布时间】:2014-05-13 17:00:03
【问题描述】:
BugSense 在我的应用程序上完美运行,但我想确定它是否正在运行? 我找不到任何为什么要这样做?
我想像这样:
if (BugSenseHandler == null) {
BugSenseHandler.initAndStartSession(this, "API KEY");
}
谢谢..
【问题讨论】:
-
首先,
BugSenseHandler是一个类,所以它永远不会为空。该代码甚至无法编译。其次,BugSense 并没有像您想象的那样“运行”。它将自己注册为 VM 的默认异常处理程序,并在异常传播到应用程序之外时被调用。似乎没有方法可以测试initAndStartSession(...)是否被调用过,但多次调用似乎没有什么坏处。 -
好的。因此,如果您不想每隔 1 分钟或类似的时间调用一次,那么您必须交叉并希望 BugSense 正在运行。
-
只需在主活动的
onCreate()中注册它,或者如果您扩展了应用程序,则在应用程序的onCreate()中注册。除非您告诉它,否则没有其他任何东西会更改默认异常处理程序。