public void synchronizationRemote() { friendshipResource .list() .observeOn(Schedulers.io()) .subscribeOn(Schedulers.io()) .flatMap(list -> Observable.from(list)) .subscribe( friendVo -> { Friend friend = friendDao.queryBuilder().where(FriendDao.Properties.Uid.eq(friendVo.id)).unique(); if (friend == null) { friend = new Friend(); friend.setUid(friendVo.id); friend.setUsername(friendVo.username); friend.setNickname(friendVo.nickname); friend.setAvatar(friendVo.avatar); } else { friend.setUsername(friendVo.username); friend.setNickname(friendVo.nickname); friend.setAvatar(friendVo.avatar); } friendDao.insertOrReplace(friend); }); }