use of androidx.lifecycle.ViewModelProvider in project FirebaseUI-Android by firebase.
the class PhoneActivity method onCreate.
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fui_activity_register_phone);
final PhoneProviderResponseHandler handler = new ViewModelProvider(this).get(PhoneProviderResponseHandler.class);
handler.init(getFlowParams());
handler.getOperation().observe(this, new ResourceObserver<IdpResponse>(this, R.string.fui_progress_dialog_signing_in) {
@Override
protected void onSuccess(@NonNull IdpResponse response) {
startSaveCredentials(handler.getCurrentUser(), response, null);
}
@Override
protected void onFailure(@NonNull Exception e) {
handleError(e);
}
});
mPhoneVerifier = new ViewModelProvider(this).get(PhoneNumberVerificationHandler.class);
mPhoneVerifier.init(getFlowParams());
mPhoneVerifier.onRestoreInstanceState(savedInstanceState);
mPhoneVerifier.getOperation().observe(this, new ResourceObserver<PhoneVerification>(this, R.string.fui_verifying) {
@Override
protected void onSuccess(@NonNull PhoneVerification verification) {
if (verification.isAutoVerified()) {
Toast.makeText(PhoneActivity.this, R.string.fui_auto_verified, Toast.LENGTH_LONG).show();
FragmentManager manager = getSupportFragmentManager();
if (manager.findFragmentByTag(SubmitConfirmationCodeFragment.TAG) != null) {
// Ensure the submit code screen isn't visible if there's no code to submit.
// It's possible to get into this state when an SMS is sent, but then
// automatically retrieved.
manager.popBackStack();
}
}
handler.startSignIn(verification.getCredential(), new IdpResponse.Builder(new User.Builder(PhoneAuthProvider.PROVIDER_ID, null).setPhoneNumber(verification.getNumber()).build()).build());
}
@Override
protected void onFailure(@NonNull Exception e) {
if (e instanceof PhoneNumberVerificationRequiredException) {
// already be visible so we have nothing to do.
if (getSupportFragmentManager().findFragmentByTag(SubmitConfirmationCodeFragment.TAG) == null) {
showSubmitCodeFragment(((PhoneNumberVerificationRequiredException) e).getPhoneNumber());
}
// Clear existing errors
handleError(null);
} else {
handleError(e);
}
}
});
if (savedInstanceState != null) {
return;
}
Bundle params = getIntent().getExtras().getBundle(ExtraConstants.PARAMS);
CheckPhoneNumberFragment fragment = CheckPhoneNumberFragment.newInstance(params);
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_phone, fragment, CheckPhoneNumberFragment.TAG).disallowAddToBackStack().commit();
}
use of androidx.lifecycle.ViewModelProvider in project android-mvvm-architecture by MindorksOpenSource.
the class ActivityModule method provideFeedViewModel.
@Provides
FeedViewModel provideFeedViewModel(DataManager dataManager, SchedulerProvider schedulerProvider) {
Supplier<FeedViewModel> supplier = () -> new FeedViewModel(dataManager, schedulerProvider);
ViewModelProviderFactory<FeedViewModel> factory = new ViewModelProviderFactory<>(FeedViewModel.class, supplier);
return new ViewModelProvider(activity, factory).get(FeedViewModel.class);
}
use of androidx.lifecycle.ViewModelProvider in project android-mvvm-architecture by MindorksOpenSource.
the class FragmentModule method provideBlogViewModel.
@Provides
BlogViewModel provideBlogViewModel(DataManager dataManager, SchedulerProvider schedulerProvider) {
Supplier<BlogViewModel> supplier = () -> new BlogViewModel(dataManager, schedulerProvider);
ViewModelProviderFactory<BlogViewModel> factory = new ViewModelProviderFactory<>(BlogViewModel.class, supplier);
return new ViewModelProvider(fragment, factory).get(BlogViewModel.class);
}
use of androidx.lifecycle.ViewModelProvider in project android-mvvm-architecture by MindorksOpenSource.
the class FragmentModule method provideAboutViewModel.
@Provides
AboutViewModel provideAboutViewModel(DataManager dataManager, SchedulerProvider schedulerProvider) {
Supplier<AboutViewModel> supplier = () -> new AboutViewModel(dataManager, schedulerProvider);
ViewModelProviderFactory<AboutViewModel> factory = new ViewModelProviderFactory<>(AboutViewModel.class, supplier);
return new ViewModelProvider(fragment, factory).get(AboutViewModel.class);
}
use of androidx.lifecycle.ViewModelProvider in project AudioVideo by JimSeker.
the class CameraFragment method onCreateView.
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
myViewModel = new ViewModelProvider(requireActivity()).get(videoViewModel.class);
View myView = inflater.inflate(R.layout.fragment_camera, container, false);
context = getContext();
preview = myView.findViewById(R.id.camera2_preview);
// Install a SurfaceHolder.Callback so we get notified when the
// underlying surface is created and destroyed.
mHolder = preview.getHolder();
mHolder.addCallback(this);
btn_takevideo = myView.findViewById(R.id.btn_takevideo);
btn_takevideo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!mIsRecordingVideo) {
// about to take a video
mIsRecordingVideo = true;
btn_takevideo.setText("Stop Recording");
startRecordingVideo();
} else {
stopRecordingVideo();
mIsRecordingVideo = false;
btn_takevideo.setText("Start Recording");
}
}
});
return myView;
}
Aggregations