登录和注册我是用的接口,注册过的手机号不能注册第二遍,简单的用MVP实现一下登录注册.
首先我用的是Retrofit和Rxjava的结合请求的接口。
public interface Inters {
//注册
@GET("user/reg")
Observable<RegBean> Regs(@Query("mobile") String mobile, @Query("password") String password);
//登录
@GET("user/login")
Observable<LogBean> Logs(@Query("mobile") String mobile, @Query("password") String password);
}
登录和注册的Bean包我就不写了,还有Retrofit+Rxjava+OkHttp的结合我也不写了,可以去我别的博客找。
首先是MVP的V层
public interface ILoginView {
//登录成功
void onLogScuss(LogBean bean);
//注册成功
void onRegScuss(RegBean bean);
}
M层
public class LoginModel {
ILoginModel model;
public void setModel(ILoginModel model) {
this.model = model;
}
//定义一个注册方法
public void RegModel(final String name, final String pass){
//OkHttp里面可以添加拦截器
OkHttpClient ok = new OkHttpClient.Builder()
.build();
//请求数据
RetrofitUnitl.getInstance("http://120.27.23.105/",ok)
.setCreate(Inters.class)
.Regs(name,pass)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(new Subscriber<RegBean>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onNext(RegBean bean) {
model.reg(bean);
}
});
}
//定义一个登录方法
public void LogModel(final String name, final String pass){
//OkHttp里面可以添加拦截