parent
b426f30ead
commit
bcf9360497
@ -1,10 +0,0 @@
|
||||
package com.android.model;
|
||||
|
||||
import com.android.bean.ResponseData;
|
||||
import com.android.bean.User;
|
||||
|
||||
public interface LoginListener {
|
||||
void onSuccess(ResponseData<User> responseData);
|
||||
void onError();
|
||||
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
package com.android.model;
|
||||
|
||||
public interface LoginModel {
|
||||
void longin(String account,String password,LoginListener loginListener);
|
||||
}
|
@ -1,60 +0,0 @@
|
||||
package com.android.model;
|
||||
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
|
||||
import com.android.bean.ResponseData;
|
||||
import com.android.bean.User;
|
||||
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.rxjava3.annotations.NonNull;
|
||||
import io.reactivex.rxjava3.core.Observable;
|
||||
import io.reactivex.rxjava3.core.Observer;
|
||||
import io.reactivex.rxjava3.disposables.Disposable;
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers;
|
||||
import retrofit2.Retrofit;
|
||||
import retrofit2.adapter.rxjava3.RxJava3CallAdapterFactory;
|
||||
import retrofit2.converter.gson.GsonConverterFactory;
|
||||
|
||||
public class LoginModelImpl implements LoginModel{
|
||||
private final static String TAG = "LoginModelImpl";
|
||||
@Override
|
||||
public void longin(String account,String password,final LoginListener loginListener) {
|
||||
Retrofit retrofit = new Retrofit.Builder()
|
||||
.baseUrl("http://47.107.52.7:88/member/")
|
||||
.addConverterFactory(GsonConverterFactory.create())
|
||||
.addCallAdapterFactory(RxJava3CallAdapterFactory.create())
|
||||
.build();
|
||||
|
||||
longinHttp_Interface request = retrofit.create(longinHttp_Interface.class);
|
||||
|
||||
Observable<ResponseData<User>> observable =
|
||||
request.getObservableTest(password, account);
|
||||
|
||||
|
||||
observable
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<ResponseData<User>>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull ResponseData<User> userResponseData) {
|
||||
loginListener.onSuccess(userResponseData);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package com.android.model.login;
|
||||
|
||||
import com.android.bean.ResponseData;
|
||||
import com.android.bean.User;
|
||||
|
||||
public interface LoginListener {
|
||||
void onLoginSuccess(ResponseData<User> responseData);
|
||||
void onGetCodeSuccess(ResponseData<String> responseData);
|
||||
void onRejisterSuccess(ResponseData<String> responseData);
|
||||
void onError();
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
package com.android.model.login;
|
||||
|
||||
public interface LoginModel {
|
||||
void longin(String account,String password,LoginListener loginListener);
|
||||
void sendVerifyCode(String phoneNumber,LoginListener loginListener);
|
||||
void registerUser(String phoneNumber,String code,LoginListener loginListener);
|
||||
|
||||
}
|
@ -0,0 +1,158 @@
|
||||
package com.android.model.login;
|
||||
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.bean.ResponseData;
|
||||
import com.android.bean.User;
|
||||
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.rxjava3.annotations.NonNull;
|
||||
import io.reactivex.rxjava3.core.Observable;
|
||||
import io.reactivex.rxjava3.core.Observer;
|
||||
import io.reactivex.rxjava3.disposables.Disposable;
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers;
|
||||
import retrofit2.Retrofit;
|
||||
import retrofit2.adapter.rxjava3.RxJava3CallAdapterFactory;
|
||||
import retrofit2.converter.gson.GsonConverterFactory;
|
||||
|
||||
public class LoginModelImpl implements LoginModel{
|
||||
private final static String TAG = "LoginModelImpl";
|
||||
|
||||
/**
|
||||
* 用户登录功能
|
||||
* @param account 手机号
|
||||
* @param phoneCode 验证码
|
||||
* @param loginListener 反回数据给活动
|
||||
*/
|
||||
@Override
|
||||
public void longin(String account,String phoneCode,final LoginListener loginListener) {
|
||||
Retrofit retrofit = new Retrofit.Builder()
|
||||
.baseUrl("http://47.107.52.7:88/member/")
|
||||
.addConverterFactory(GsonConverterFactory.create())
|
||||
.addCallAdapterFactory(RxJava3CallAdapterFactory.create())
|
||||
.build();
|
||||
|
||||
longinHttp_Interface request = retrofit.create(longinHttp_Interface.class);
|
||||
|
||||
User user = new User();
|
||||
user.setCode(phoneCode);
|
||||
user.setPhone(account);
|
||||
Log.e("TAG",phoneCode);
|
||||
Log.e("TAG",account);
|
||||
|
||||
Observable<ResponseData<User>> observable = request.login(user);
|
||||
observable
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<ResponseData<User>>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull ResponseData<User> userResponseData) {
|
||||
loginListener.onLoginSuccess(userResponseData);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
Log.e("onError",e.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取验证码
|
||||
* @param phoneNumber 手机号
|
||||
*/
|
||||
@Override
|
||||
public void sendVerifyCode(String phoneNumber,final LoginListener loginListener) {
|
||||
Retrofit retrofit = new Retrofit.Builder()
|
||||
.baseUrl("http://47.107.52.7:88/member/")
|
||||
.addCallAdapterFactory(RxJava3CallAdapterFactory.create())
|
||||
.addConverterFactory(GsonConverterFactory.create())
|
||||
.build();
|
||||
longinHttp_Interface httpInterface = retrofit.create(longinHttp_Interface.class);
|
||||
|
||||
Observable<ResponseData<String>> observable = httpInterface.sendCode(phoneNumber);
|
||||
observable
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<ResponseData<String>>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull ResponseData<String> stringResponseData) {
|
||||
loginListener.onGetCodeSuccess(stringResponseData);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
Log.d(TAG,"error");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户注册
|
||||
* @param phoneNumber
|
||||
* @param code
|
||||
*/
|
||||
@Override
|
||||
public void registerUser(String phoneNumber, String code,final LoginListener loginListener) {
|
||||
Retrofit retrofit = new Retrofit.Builder()
|
||||
.baseUrl("http://47.107.52.7:88/member/")
|
||||
.addCallAdapterFactory(RxJava3CallAdapterFactory.create())
|
||||
.addConverterFactory(GsonConverterFactory.create())
|
||||
.build();
|
||||
longinHttp_Interface httpInterface = retrofit.create(longinHttp_Interface.class);
|
||||
|
||||
User user = new User();
|
||||
user.setPhone(phoneNumber);
|
||||
user.setCode(code);
|
||||
Observable<ResponseData<String>> observable = httpInterface.register(user);
|
||||
observable
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<ResponseData<String>>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull ResponseData<String> stringResponseData) {
|
||||
loginListener.onRejisterSuccess(stringResponseData);
|
||||
Log.e(TAG,"注册成功");
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
package com.android.model.login;
|
||||
|
||||
|
||||
import com.android.bean.ResponseData;
|
||||
import com.android.bean.User;
|
||||
|
||||
import io.reactivex.rxjava3.core.Observable;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.http.Body;
|
||||
import retrofit2.http.GET;
|
||||
import retrofit2.http.Headers;
|
||||
import retrofit2.http.POST;
|
||||
import retrofit2.http.Query;
|
||||
|
||||
/*
|
||||
"http://47.107.52.7:88/member/photo/user/login?password=123456&username=fangshicai"
|
||||
*/
|
||||
public interface longinHttp_Interface {
|
||||
//登录
|
||||
@POST("tran/user/login")
|
||||
@Headers({"appId:b34ac21286ae45938add627b418a4871",
|
||||
"appSecret:67526def9de11d4a64f5e80e60ed3372eea69"})
|
||||
Observable<ResponseData<User>> login(@Body User user);
|
||||
|
||||
//获取验证码
|
||||
@GET("tran/user/send")
|
||||
@Headers({"appId:b34ac21286ae45938add627b418a4871",
|
||||
"appSecret:67526def9de11d4a64f5e80e60ed3372eea69"})
|
||||
Observable<ResponseData<String>> sendCode(@Query("phone") String phone);
|
||||
|
||||
@POST("tran/user/register")
|
||||
@Headers({"appId:b34ac21286ae45938add627b418a4871",
|
||||
"appSecret:67526def9de11d4a64f5e80e60ed3372eea69"})
|
||||
Observable<ResponseData<String>> register(@Body User user);
|
||||
|
||||
|
||||
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
package com.android.model;
|
||||
|
||||
|
||||
import com.android.bean.ResponseData;
|
||||
import com.android.bean.User;
|
||||
|
||||
import io.reactivex.rxjava3.core.Observable;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.http.Body;
|
||||
import retrofit2.http.GET;
|
||||
import retrofit2.http.Headers;
|
||||
import retrofit2.http.POST;
|
||||
import retrofit2.http.Query;
|
||||
|
||||
/*
|
||||
"http://47.107.52.7:88/member/photo/user/login?password=123456&username=fangshicai"
|
||||
*/
|
||||
public interface longinHttp_Interface {
|
||||
@GET("demo/login")
|
||||
// @FormUrlEncoded
|
||||
@Headers({"appId:46351c5d3fdd44a084167c7186772a2e","appSecret:21671c3772dd71d3340f3ae77355421aa335f"})
|
||||
Call<ResponseData<User>> service(@Query("password") String password
|
||||
, @Query("username") String username
|
||||
);
|
||||
|
||||
@POST("demo/create")
|
||||
// @FormUrlEncoded
|
||||
@Headers({"appId:46351c5d3fdd44a084167c7186772a2e","appSecret:21671c3772dd71d3340f3ae77355421aa335f"})
|
||||
Call<ResponseData<String>> rejest(@Body User user);
|
||||
|
||||
|
||||
@GET("demo/login")
|
||||
@Headers({"appId:46351c5d3fdd44a084167c7186772a2e","appSecret:21671c3772dd71d3340f3ae77355421aa335f"})
|
||||
Observable<ResponseData<User>> getObservableTest(@Query("password") String password
|
||||
, @Query("username") String username
|
||||
);
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package com.android.utils.watcher;
|
||||
|
||||
import android.text.Editable;
|
||||
import android.text.TextWatcher;
|
||||
import android.widget.Button;
|
||||
|
||||
import com.android.activity.LoginActivity;
|
||||
|
||||
public class MyWatcher implements TextWatcher {
|
||||
|
||||
private Button getVerificationCode,registerButton;
|
||||
private LoginActivity loginActivity;
|
||||
|
||||
public MyWatcher() {
|
||||
|
||||
}
|
||||
|
||||
public MyWatcher(Button getVerificationCode, Button registerButton, LoginActivity loginActivity) {
|
||||
this.getVerificationCode = getVerificationCode;
|
||||
this.registerButton = registerButton;
|
||||
this.loginActivity = loginActivity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
||||
//当号码大于11位时显示按钮
|
||||
if(s.length()>=11){
|
||||
getVerificationCode.setEnabled(true);
|
||||
//注册按钮
|
||||
registerButton.setOnClickListener(loginActivity);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterTextChanged(Editable s) {
|
||||
|
||||
}
|
||||
}
|
Loading…
Reference in new issue