gpt4 book ai didi

java - 在 FirebaseStorage 中的 Activity 销毁后调用 OnComplete

转载 作者:行者123 更新时间:2023-11-29 19:03:33 25 4
gpt4 key购买 nike

我正在以这种方式使用 Firebase 存储下载图像:

StorageReference storageReference = FirebaseStorage.getInstance().getReference();
storageReference.child("images/").child("myimage.jpg").getBytes(Long.MAX_VALUE).addOnCompleteListener(this);

然后我添加了一个监听器以了解下载何时完成:

@Override
public void onComplete(@NonNull Task<byte[]> task)
{
//stuff...
}

当我删除 Internet、尝试下载图像并销毁 Activity 时出现问题。调用应该被销毁,因为 Activity 已被销毁,但它仍然存储。事实上,当我激活 Internet 时,尽管 Activity 已被销毁,但仍会调用 onComplete 方法。最后一个没有再次创建,我用日志检查了所有。那么我怎样才能明确地中断通话呢?为什么调用该方法?

最佳答案

任务 API 支持您:使用 addOn[...]Listener(Activity, On[...]Listener) 变体。然后监听器将在 Activity 的 onStop() 方法中自动移除。对于您的情况,它看起来像这样:

...addOnCompleteListener(this, this);

这是 documentation.

关于java - 在 FirebaseStorage 中的 Activity 销毁后调用 OnComplete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47994639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com