我想知道我的应用是合法关闭还是崩溃。当我的应用程序启动时,它会设置一个警报,当触发时启动服务。我无法解决如何从服务中编码isFinishing()的问题。我试过了: -
if (!((Activity) getBaseContext()).isFinishing())
这个编译好了,但是当运行时出现以下错误: -
java.lang.ClassCastException: android.app.ContextImpl
有没有办法从服务中拨打电话? 罗恩
答案 0 :(得分:0)
您的问题来自错误的投射:getBaseContext()
除了ContextImpl
之外根本不会返回任何活动。
但是,我不确定这会解决你的问题。请参阅上面的评论。
此致 斯特凡
答案 1 :(得分:0)
isFinishing()适用于Activity而不是Service。最有可能的是,它写在你的活动的onPause()方法中,以找出活动正在完成或(暂停或停止)。
现在,如果您将活动上下文传递给服务,它将起作用。但是如果你的上下文不是活动上下文,那么就是例外。