转发https://www.jianshu.com/p/d9da64774f7b
项目里使用flatmap,报错:NetworkOnMainThread
这是由于ApiRetrofit.getInstance().getUserInfoById(friendId) 是运行在主线程中。
改成:return ApiRetrofit.getInstance().getUserInfoById(friendId).subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread());
ApiRetrofit.getInstance().agreeFriends(friendId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.flatMap(new Func1<AgreeFriendsResponse, Observable<GetUserInfoByIdResponse>>() {
@Override
public Observable<GetUserInfoByIdResponse> call(AgreeFriendsResponse agreeFriendsResponse) {
if (agreeFriendsResponse != null && agreeFriendsResponse.getCode() == 200) {
helper.setViewVisibility(R.id.tvAdded,