gpt4 book ai didi

java - 如何使用 Android 中的 MVP 模式从我的交互器启动服务?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:15:06 26 4
gpt4 key购买 nike

我遵循的模型 View 展示器 (MVP) 模式类似于 Antonio Leiva 在此处找到的示例:antoniolg/github .

我一直在研究它,我想知道如何从 interactor 层启动一个 service。通常我一直将我的 retrofit 调用放在 interactor 中,但我想知道是否有办法从 interactor 启动服务,所以我可以改为在服务中运行我的 retrofit 调用。这里的问题是我没有运行服务的 Activity 上下文,如果我将上下文公开给 interactor,这有点违背了 MVP 的目的。

我也不太确定这是否是一件好事(从交互器启动服务)。我当时正在考虑从 presenter 层开始服务,但我正在走向死胡同,我应该如何处理这个问题。

如果有办法解决这个问题,请帮助其他人?如果这不是一个好方法,请启发我。

最佳答案

定义类,例如 My App extends Application 并定义类似 getAppInstance 的方法返回 Application 对象,然后将此类的名称属性添加到 Manifest 中的 Applicqtion 标签,然后在您的用例中调用此方法以获取上下文对象并启动您的服务

public class MyApp extends Application {

private MyApp instance;

@Override
public void onCreate() {
super.onCreate();

instance = this;

}

@Override
public void onTerminate() {
super.onTerminate();

instance = null;
}

public MyApp getInstance(){
return instance;

}
}

关于java - 如何使用 Android 中的 MVP 模式从我的交互器启动服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34196781/

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