提交 4d6f0fe7 编写于 作者: A amitshekhariitbhu

Add Dummy Login for fb and google

上级 1dc4394b
......@@ -24,6 +24,7 @@ import android.os.Bundle;
import com.mindorks.framework.mvvm.R;
import com.mindorks.framework.mvvm.databinding.ActivityLoginBinding;
import com.mindorks.framework.mvvm.ui.base.BaseActivity;
import com.mindorks.framework.mvvm.ui.main.MainActivity;
import javax.inject.Inject;
......@@ -38,6 +39,8 @@ public class LoginActivity extends BaseActivity implements LoginCallback {
@Inject
LoginViewModel mLoginViewModel;
private ActivityLoginBinding binding;
public static Intent getStartIntent(Context context) {
Intent intent = new Intent(context, LoginActivity.class);
return intent;
......@@ -47,15 +50,16 @@ public class LoginActivity extends BaseActivity implements LoginCallback {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityLoginBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_login);
binding = DataBindingUtil.setContentView(this, R.layout.activity_login);
getActivityComponent().inject(this);
setUnBinder(ButterKnife.bind(this));
binding.setViewmodel(mLoginViewModel);
binding.setViewModel(mLoginViewModel);
mLoginViewModel.setCallback(this);
}
@Override
......@@ -63,4 +67,11 @@ public class LoginActivity extends BaseActivity implements LoginCallback {
super.onDestroy();
mLoginViewModel.onDestroy();
}
@Override
public void openMainActivity() {
Intent intent = MainActivity.getStartIntent(LoginActivity.this);
startActivity(intent);
finish();
}
}
......@@ -21,4 +21,7 @@ package com.mindorks.framework.mvvm.ui.login;
*/
public interface LoginCallback {
void openMainActivity();
}
......@@ -16,11 +16,15 @@
package com.mindorks.framework.mvvm.ui.login;
import com.androidnetworking.error.ANError;
import com.mindorks.framework.mvvm.data.DataManager;
import com.mindorks.framework.mvvm.data.network.model.LoginRequest;
import com.mindorks.framework.mvvm.data.network.model.LoginResponse;
import com.mindorks.framework.mvvm.ui.base.BaseViewModel;
import com.mindorks.framework.mvvm.utils.rx.SchedulerProvider;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.functions.Consumer;
/**
* Created by amitshekhar on 08/07/17.
......@@ -33,4 +37,68 @@ public class LoginViewModel extends BaseViewModel<LoginCallback> {
CompositeDisposable compositeDisposable) {
super(dataManager, schedulerProvider, compositeDisposable);
}
public void onServerLoginClick() {
}
public void onGoogleLoginClick() {
getCompositeDisposable().add(getDataManager()
.doGoogleLoginApiCall(new LoginRequest.GoogleLoginRequest("test1", "test1"))
.subscribeOn(getSchedulerProvider().io())
.observeOn(getSchedulerProvider().ui())
.subscribe(new Consumer<LoginResponse>() {
@Override
public void accept(LoginResponse response) throws Exception {
getDataManager().updateUserInfo(
response.getAccessToken(),
response.getUserId(),
DataManager.LoggedInMode.LOGGED_IN_MODE_GOOGLE,
response.getUserName(),
response.getUserEmail(),
response.getGoogleProfilePicUrl());
getCallback().openMainActivity();
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
// handle the login error here
if (throwable instanceof ANError) {
ANError anError = (ANError) throwable;
}
}
}));
}
public void onFbLoginClick() {
getCompositeDisposable().add(getDataManager()
.doFacebookLoginApiCall(new LoginRequest.FacebookLoginRequest("test3", "test4"))
.subscribeOn(getSchedulerProvider().io())
.observeOn(getSchedulerProvider().ui())
.subscribe(new Consumer<LoginResponse>() {
@Override
public void accept(LoginResponse response) throws Exception {
getDataManager().updateUserInfo(
response.getAccessToken(),
response.getUserId(),
DataManager.LoggedInMode.LOGGED_IN_MODE_FB,
response.getUserName(),
response.getUserEmail(),
response.getGoogleProfilePicUrl());
getCallback().openMainActivity();
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
// handle the login error here
if (throwable instanceof ANError) {
ANError anError = (ANError) throwable;
}
}
}));
}
}
......@@ -49,7 +49,7 @@ public class MainActivity extends BaseActivity {
setUnBinder(ButterKnife.bind(this));
binding.setViewmodel(mMainViewModel);
binding.setViewModel(mMainViewModel);
}
......
......@@ -56,7 +56,7 @@ public class SplashActivity extends BaseActivity implements SplashCallback {
setUnBinder(ButterKnife.bind(this));
binding.setViewmodel(mSplashViewModel);
binding.setViewModel(mSplashViewModel);
mSplashViewModel.setCallback(this);
......
......@@ -28,14 +28,14 @@
type="com.mindorks.framework.mvvm.ui.login.LoginActivity" />
<variable
name="viewmodel"
name="viewModel"
type="com.mindorks.framework.mvvm.ui.login.LoginViewModel" />
</data>
<RelativeLayout
android:id="@+id/activity_main"
android:id="@+id/activityMain"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_design">
......@@ -74,7 +74,7 @@
app:hintTextAppearance="@style/TextAppearence.App.TextInputLayout">
<android.support.design.widget.TextInputEditText
android:id="@+id/et_email"
android:id="@+id/etEmail"
style="@style/TextStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
......@@ -101,7 +101,7 @@
app:passwordToggleEnabled="true">
<android.support.design.widget.TextInputEditText
android:id="@+id/et_password"
android:id="@+id/etPassword"
style="@style/TextStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
......@@ -120,13 +120,14 @@
</android.support.design.widget.TextInputLayout>
<Button
android:id="@+id/btn_server_login"
android:id="@+id/btnServerLogin"
style="@style/Button.Primary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="15dp"
android:padding="10dp"
android:onClick="@{() -> viewModel.onServerLoginClick()}"
android:text="@string/login"
android:textSize="18dp" />
</LinearLayout>
......@@ -139,20 +140,22 @@
android:orientation="horizontal">
<ImageButton
android:id="@+id/ib_google_login"
android:id="@+id/ibGoogleLogin"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@color/transparent"
android:scaleType="centerCrop"
android:onClick="@{() -> viewModel.onGoogleLoginClick()}"
app:srcCompat="@drawable/ic_google_plus" />
<ImageButton
android:id="@+id/ib_fb_login"
android:id="@+id/ibFbLogin"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginLeft="24dp"
android:background="@color/transparent"
android:scaleType="centerCrop"
android:onClick="@{() -> viewModel.onFbLoginClick()}"
app:srcCompat="@drawable/ic_facebook" />
</LinearLayout>
</android.support.v7.widget.CardView>
......
......@@ -26,7 +26,7 @@
type="com.mindorks.framework.mvvm.ui.main.MainActivity" />
<variable
name="viewmodel"
name="viewModel"
type="com.mindorks.framework.mvvm.ui.main.MainViewModel" />
</data>
......@@ -39,7 +39,7 @@
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{viewmodel.value}" />
android:text="@{viewModel.value}" />
</LinearLayout>
......
......@@ -28,7 +28,7 @@
type="com.mindorks.framework.mvvm.ui.splash.SplashActivity" />
<variable
name="viewmodel"
name="viewModel"
type="com.mindorks.framework.mvvm.ui.splash.SplashViewModel" />
</data>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册