gpt4 book ai didi

android - RoboSpice - 入门不工作

转载 作者:太空狗 更新时间:2023-10-29 13:32:15 25 4
gpt4 key购买 nike

我设法实现了 robospice (GoogleHttpClientSpiceService) 示例,它可以正常工作 - 它成功地转到服务器,获取数据并将其存储在缓存中。如果 Activity 未处于 onPause 状态,甚至会显示 toast 并更新 GUI。

我的问题(也是我尝试 robospice 的唯一原因)是如果 Activity 恢复,它不会再次收到通知。我做错了什么吗?

    @Override //THIS IS NOT CALLED ON ACTIVITY RESUME (BECAUSE OF THIS I CANNOT DISMISS DIALOG)
public void onRequestSuccess( final String result ) {
Toast.makeText( PrijavaActivity.this, "success", Toast.LENGTH_SHORT ).show();
Log.w(TAG, "sakses" + result);


FragmentManager fm = getSupportFragmentManager();
Fragment fragment = fm.findFragmentByTag("prijavaDialog");
if(fragment!=null) {
FragmentTransaction ft = fm.beginTransaction();
ft.remove(fragment);
ft.commit();
}
}

谢谢...

最佳答案

您误解了 RoboSpice。您获得的行为是正确的。

当一个 Activity 停止(如您所说的不活动)时,它的所有请求监听器都将被删除,他们将不会收到通知。

监听器只有在拥有它们的 Activity 仍然存在时才会收到通知。这就是 RoboSpice 的全部要点:防止监听器或 Activity 的内存泄漏。

如果您想“继续监听”请求的结果,即使启动它的 Activity 已变为非 Activity 状态,那么您必须采用不同的策略。您应该使用更稳定的上下文,如应用程序或服务,并从中启动您的请求,或者可能只是听取来自该上下文的请求结果(使用 addListenerIfPending,而不是执行)。

关于android - RoboSpice - 入门不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14307487/

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