Android 无法启动已销毁活动的加载

Android 无法启动已销毁活动的加载,android,android-glide,ondestroy,Android,Android Glide,Ondestroy,你好,我有这个问题 java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity 我已经尝试了我在这个错误中使用的其他方法,但没有一个有效。在我的例子中,当我的应用程序启动时,在其主要活动中会加载一个视频。当我在视频加载过程中按下后退按钮时,我的应用程序崩溃。谁能帮帮我吗 这是我的破坏方法 @Override protected void onDestroy() { G

你好,我有这个问题

java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity
我已经尝试了我在这个错误中使用的其他方法,但没有一个有效。在我的例子中,当我的应用程序启动时,在其主要活动中会加载一个视频。当我在视频加载过程中按下后退按钮时,我的应用程序崩溃。谁能帮帮我吗

这是我的破坏方法

@Override
protected void onDestroy() {

        Glide.with(getApplicationContext()).pauseRequests();
        super.onDestroy();
}
日志:


如果在初始化时使用getApplicationContext() 使用(getApplicationContext())将glide作为glide.with进行滑动,并通过重写来暂停所有请求 onDestroy()作为


先验证当前类上下文是否可用,然后再对
onDestroy()
方法执行此操作

@override
protected void onDestroy() {
super.onDestroy();

    if (!this.isFinishing ()) {
         Glide.with(getApplicationContext()).pauseRequests();
     }
    }

有关更多信息,请查看解决方案:

您必须使用
您的\u活动\u名称。此
而不是
getApplicationContext()
isDestroyed()
,如下所示:

@override
protected void onDestroy() {
super.onDestroy();

    if (!this.isDestroyed()) {
         Glide.with(your_activity_name.this).pauseRequests();
    }

}

试试看。希望有帮助。

你能发布你的完整日志吗。请看。我刚发了帖子,看看我的解决方案。尝试一下。检查一下,实际上onDestroyed函数没有被执行。在Glide.with(getApplicationContext()).pauseRequests()之前,你是否尝试过我的代码调用super.ondestroy;初始化glide:glide.with(getApplicationContext())我尝试了上面的方法bro。错误仍然是一样的:(您是否调试了代码并检查了if条件中的检查点?实际上onDestroyed函数没有被执行我认为问题出在24Hmm以下的api上,然后在相同的if条件下进行检查并尝试@Sudeep)
@override
protected void onDestroy() {
super.onDestroy();

    if (!this.isFinishing ()) {
         Glide.with(getApplicationContext()).pauseRequests();
     }
    }
@override
protected void onDestroy() {
super.onDestroy();

    if (!this.isDestroyed()) {
         Glide.with(your_activity_name.this).pauseRequests();
    }

}