我一整天都在努力寻找一种方法,在请求未消耗的消息计数时从Twilio通道中删除Twilio CallbackListener,以避免在我的活动被销毁时泄漏内存。调用channel.removeAllListeners似乎只从通道中删除ChannelListener。我在下面发布了一些我正在尝试做的代码,这里是Twilio chat docs的链接。有任何想法吗?
CallbackListener<Long> callbackListener = new CallbackListener<Long>() {
@Override
public void onSuccess(Long unconsumedCount) {
}
@Override
public void onError(ErrorInfo errorInfo) {
super.onError(errorInfo);
}
};
channel.getUnconsumedMessagesCount(callbackListener);
答案 0 :(得分:2)
Twilio开发者传道者在这里。
channel.getUnconsumedMessagesCount
仅设置在返回结果时调用一次callbackListener
。它不会永久地将其设置为侦听器,因此您不会泄漏内存,如果您需要再次获取未使用的消息计数,则需要再次调用它。请注意,该值缓存了5秒,因此不需要经常调用它。
让我知道这是否有帮助。