Commit 90bfd08e by sikang

添加登录成功广播

parent 89899ae9
...@@ -4,7 +4,8 @@ package tech.starwin.broadcast; ...@@ -4,7 +4,8 @@ package tech.starwin.broadcast;
* Created by SiKang on 2018/11/16. * Created by SiKang on 2018/11/16.
*/ */
public enum ActionEnum { public enum ActionEnum {
LOGIN_INVALID("action.login.invalid"); LOGIN_INVALID("action.login.invalid"),
LOGIN_SUCCESS("action.login.success");
private String action; private String action;
......
...@@ -4,6 +4,8 @@ package tech.starwin.mvp.presenter; ...@@ -4,6 +4,8 @@ package tech.starwin.mvp.presenter;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.text.TextUtils; import android.text.TextUtils;
import org.greenrobot.eventbus.EventBus;
import java.io.File; import java.io.File;
import java.util.List; import java.util.List;
...@@ -17,6 +19,7 @@ import io.reactivex.functions.Predicate; ...@@ -17,6 +19,7 @@ import io.reactivex.functions.Predicate;
import io.reactivex.schedulers.Schedulers; import io.reactivex.schedulers.Schedulers;
import okhttp3.ResponseBody; import okhttp3.ResponseBody;
import tech.starwin.base.BasePresenter; import tech.starwin.base.BasePresenter;
import tech.starwin.broadcast.ActionEnum;
import tech.starwin.constants.TrackEvent; import tech.starwin.constants.TrackEvent;
import tech.starwin.impl.HttpObserver; import tech.starwin.impl.HttpObserver;
import tech.starwin.mvp.api.LoanApi; import tech.starwin.mvp.api.LoanApi;
...@@ -116,6 +119,8 @@ public class UserPresenter extends BasePresenter<UserApi> { ...@@ -116,6 +119,8 @@ public class UserPresenter extends BasePresenter<UserApi> {
} }
PreferencesManager.get().saveUserInfo(data); PreferencesManager.get().saveUserInfo(data);
view.onHttpSuccess(action, data); view.onHttpSuccess(action, data);
EventBus.getDefault().post(ActionEnum.LOGIN_SUCCESS);
} }
@Override @Override
...@@ -164,18 +169,32 @@ public class UserPresenter extends BasePresenter<UserApi> { ...@@ -164,18 +169,32 @@ public class UserPresenter extends BasePresenter<UserApi> {
* @param auth_code Facebook 授权码 * @param auth_code Facebook 授权码
*/ */
public void accountKotLogin(final String action, String auth_code) { public void accountKotLogin(final String action, String auth_code) {
handleRequest(apiService.accountKitLogin(null, auth_code), new HttpObserver<TokenInfoBean>() { handleRequest(
apiService.accountKitLogin(null, auth_code)
.flatMap(new Function<TokenInfoBean, ObservableSource<UserBean>>() {
@Override
public ObservableSource<UserBean> apply(TokenInfoBean tokenInfoBean) throws Exception {
TrackEventHelper.logEvent(TrackEvent.FACEBOOK_LOGIN_SUCCESS);
//刷新Token信息
LoginManager.get().notifyTokenInfo(tokenInfoBean);
return apiService.getUserInfo(tokenInfoBean.getToken());
}
}),
new HttpObserver<UserBean>() {
@Override @Override
public void onStart() { public void onStart() {
view.onHttpStart(action, true); view.onHttpStart(action, true);
} }
@Override @Override
public void onSuccess(TokenInfoBean tokenInfoBean) { public void onSuccess(UserBean data) {
TrackEventHelper.logEvent(TrackEvent.FACEBOOK_LOGIN_SUCCESS); if (TextUtils.isEmpty(data.getName())) {
//刷新Token信息 data.setName(LoginManager.get().getTokenInfo().getMobile());
LoginManager.get().notifyTokenInfo(tokenInfoBean); }
view.onHttpSuccess(action, tokenInfoBean); PreferencesManager.get().saveUserInfo(data);
view.onHttpSuccess(action, data);
EventBus.getDefault().post(ActionEnum.LOGIN_SUCCESS);
} }
@Override @Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment