小编xuy*_*jun的帖子

改造默认线程

我用RetrofitRxJava我的Android应用程序,和我的代码:

public void getConfig(NetworkSubscriber subscriber) {
    Observable<Config> observable = mApi.getConfig();
    observable.subscribeOn(Schedulers.newThread())
            .observeOn(AndroidSchedulers.mainThread())
            .subscribe(subscriber);
}

public void getCode(String mobile, int type, NetworkSubscriber subscriber) {
    Observable<BaseMessageEntity> observable = mApi.getCode(mobile, type);
    observable.subscribeOn(Schedulers.newThread())
            .observeOn(AndroidSchedulers.mainThread())
            .subscribe(subscriber);
}
Run Code Online (Sandbox Code Playgroud)

我不想写.subscribeOn(Schedulers.newThread()).observeOn(AndroidSchedulers.mainThread())每个商业方法

我能怎么做?

android rx-java retrofit rx-android

10
推荐指数
3
解决办法
3151
查看次数

RxJava:在Android MVP中自动取消订阅

我使用RxJava/ Retrofit在Android应用程序与MVP模式.

现在我想清理xxxPresenter什么时候Activity/Fragment为了防止破坏oom.

Presenter简单代码:

public class LoginPresenter {

    private LoginView mLoginView;
    private LoginMode mLoginMode;
    private Subscriber mLoginSubscriber;

    public LoginPresenter(LoginView loginView) {
        this.mLoginView = loginView;
        mLoginMode = new LoginMode();
    }

    void login(String userName, String pwd) {
        mLoginSubscriber = new Subscriber() {
            @Override
            public void onCompleted() {

            }

            @Override
            public void onError(Throwable e) {

            }

            @Override
            public void onNext(Object o) {
                if (mLoginView != null) {
                    mLoginView.onLoginSuccess();
                }
            }
        };
        mLoginMode.login(userName, pwd, mLoginSubscriber); …
Run Code Online (Sandbox Code Playgroud)

mvp android rx-java

1
推荐指数
1
解决办法
1405
查看次数

标签 统计

android ×2

rx-java ×2

mvp ×1

retrofit ×1

rx-android ×1