gpt4 book ai didi

java - 编写网络类的最佳方法

转载 作者:行者123 更新时间:2023-12-01 13:46:59 24 4
gpt4 key购买 nike

我想编写一个名为 NetworkManager 的类来处理所有网络交互。因此,使用此类的实例,我会得到如下内容:

NetworkManager nm = new NetworkManager();
...
nm.login(username, password);
...

但是,一旦收到响应,该网络管理器就可以在 UI 线程上执行某些操作,最好的方法是什么?对 onClick 样式事件进行建模我认为这会是这样的:

nm.getPicture(new NetworkListener() {
@Override
public void run(Picture p){
updateUI(p);
}

我不确定如何编写 getPicture 方法和 NetworkListener() 类。

我不想使用AsyncTask,因为这意味着我必须在 MainActivity 的不同部分编写服务器代码。我还考虑过广播者和听众,但这对于一次性事件来说似乎太多了。

最佳答案

Checkout Retrofit ( http://square.github.io/retrofit/ ) 考虑集成网络类的一部分可能会很有用。我不确定您是否会有多个类似的调用,但如果是这样,我建议您应用观察者模式,在其中异步调用并等待响应,但是,有一个很好的库可以实现这一点,非常有据可查,称为 Otto ( http://square.github.io/otto/ )。

关于java - 编写网络类的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20293700/

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