aaaa
plain_text
25 days ago
44 kB
3
Indexable
Never
/* * Copyright (c) 2018 SANTANDER BRASIL, All Rights Reserved. */ package com.santander.app.homelogada.presentation; /** * Created by Santander on 01/01/18. */ import static com.santander.app.homelogada.presentation.IdSantanderCallerKt.KEY_BLOCKED_ID_FLAG; import static com.santander.app.homelogada.presentation.IdSantanderCallerKt.PREFS_BLOCKED_ID_SNT; import static com.santander.app.homelogada.presentation.IdSantanderCallerKt.getDocumentKey; import android.app.Dialog; import android.content.Intent; import android.content.IntentSender; import android.content.SharedPreferences; import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.provider.Settings; import android.util.TypedValue; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.FrameLayout; import android.widget.LinearLayout; import androidx.activity.result.ActivityResult; import androidx.activity.result.ActivityResultCallback; import androidx.activity.result.contract.ActivityResultContracts; import androidx.annotation.NonNull; import androidx.appcompat.app.ActionBar; import androidx.fragment.app.Fragment; import com.google.android.play.core.appupdate.AppUpdateInfo; import com.google.android.play.core.appupdate.AppUpdateManager; import com.google.android.play.core.appupdate.AppUpdateManagerFactory; import com.google.android.play.core.install.model.AppUpdateType; import com.google.android.play.core.install.model.UpdateAvailability; import com.google.android.play.core.review.ReviewInfo; import com.google.android.play.core.review.ReviewManager; import com.google.android.play.core.review.ReviewManagerFactory; import com.google.android.play.core.tasks.OnCompleteListener; import com.google.android.play.core.tasks.OnFailureListener; import com.google.android.play.core.tasks.Task; import com.google.firebase.crashlytics.FirebaseCrashlytics; import com.santander.app.MinhaConta; import com.santander.app.R; import com.santander.app.acessocanal.task.FutureCallBackTask; import com.santander.app.analytics.AnalyticsTags; import com.santander.app.analytics.PerformanceTraces; import com.santander.app.analytics.firebase.Tags; import com.santander.app.authentication.SantanderIdEnablingData; import com.santander.app.avaliacaostore.presentation.AvaliacaoDialog; import com.santander.app.avaliacaostore.presentation.contract.IAvaliarAppView; import com.santander.app.avaliacaostore.presenter.AvaliacaoAppPresenter; import com.santander.app.biometric.facial.register.RegisterFacialBiometricsApplicationStarter; import com.santander.app.cartoes.parcelamentofatura.ParcelamentoFaturasApplicationStarter; import com.santander.app.chat.Chat; import com.santander.app.chat.ChatApplication; import com.santander.app.chat.controller.ChatController; import com.santander.app.components.view.SessionControlledActivity; import com.santander.app.components.view.avisofinalano.AvisoFinalAnoActivity; import com.santander.app.components.view.cardLayout.CardLayout; import com.santander.app.contacorrente.domain.Conta; import com.santander.app.crm.CrmShared; import com.santander.app.crm.PageEnum; import com.santander.app.datacontroller.ControllerResolver; import com.santander.app.datacontroller.DataController; import com.santander.app.dataservice.BannerService; import com.santander.app.deeplink.DeepLinkType; import com.santander.app.deeplink.MainDeepLinkRedirect; import com.santander.app.ecommerce.view.ECommerceDialog; import com.santander.app.ecommerce.view.ECommerceDialogImpl; import com.santander.app.homelogada.interactor.MenuInteractor; import com.santander.app.homelogada.interactor.MenuInteractorImpl; import com.santander.app.homelogada.novahome.presentation.HomeLoggedFragment; import com.santander.app.homelogada.presenter.HomeLogadaPresenter; import com.santander.app.homelogada.presenter.HomeLogadaPresenterImpl; import com.santander.app.idsantander.IdSantanderTipoConversaoEnum; import com.santander.app.idsantander.habilitacaoIdRemoto.features.offer.presentation.IdSantanderRemoteOfferActivity; import com.santander.app.idsantander.habilitargeolocalizacao.dialog.HabilitarIDGeoLocalizacao; import com.santander.app.idsantander.presentation.IdSantanderHabilitacaoActivity; import com.santander.app.idsantander.presentation.IdSantanderHabilitacaoSMSOfertaActivity; import com.santander.app.idsantander.presentation.IdSantanderOfertaActivity; import com.santander.app.idsantander.presentation.IdSantanderOtimizacaoActivity; import com.santander.app.meugerente.MeuGerenteApplicationStarter; import com.santander.app.meuperfil.presentation.EscolhaContaPreferencialActivity; import com.santander.app.newmenu.utils.DefaultDialogUtils; import com.santander.app.news.NewsActivity; import com.santander.app.pagamentos.titulos.presentation.PagamentosCodigoBarrasActivity; import com.santander.app.personaldataprotection.LgpdApplicationStarter; import com.santander.app.propostasemaberto.presentation.PropostasEmAbertoActivity; import com.santander.app.santanderon.controller.SantanderOnController; import com.santander.app.santanderwebviewbridge.common.WebViewBridgeConstants; import com.santander.app.santanderwebviewbridge.features.creditcardinvoicepayment.CreditCardInvoicePaymentApplicationStarter; import com.santander.app.sessionmanagement.domain.ISession; import com.santander.app.sessionmanagement.domain.Session; import com.santander.app.util.AvaliarHelperKt; import com.santander.app.util.DialogUtil; import com.santander.app.util.ImageUtil; import com.santander.app.util.NaoManterAtividadesHelperKt; import com.santander.app.util.NaoManterProperties; import com.santander.app.util.ReloadHomeServicesUtil; import com.santander.app.util.SecurityUtil; import com.santander.app.util.accessibility.AccessibilityUtil; import com.santander.app.util.dynamicauth.DynamicAuthApp; import com.santander.app.util.dynamicauth.DynamicAuthenticationService; import com.santander.app.util.encryptation.KeyStoreHelper; import com.santander.app.util.security.DeviceProfiler; import com.santander.app.util.toolbar.ToolBarHandler; import com.santander.app.validation.TipoUsuarioConsultivoEnum; import com.santander.app.validation.presentation.IdSantanderUsuarioConsultivoActivity; import com.santander.app.welcome.WelcomeLibApplicationStarter; import com.santander.interact.repository.model.offer.InteractionPoint; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import app.santander.com.module.SantanderLogger; import br.com.santander.analytics.SantanderAnalytics; import br.com.santander.chatbot.elegibilidade.core.Constants; import br.com.santander.commons.utils.firebase.FirebaseService; import br.com.santander.crmlib.lightbox.LightboxAd; import br.com.santander.modulo.mbbcoredomain.domain.UserProfile; import br.com.santander.modulo.welcomesantander.WelcomeApplication; import br.com.santander.modulo.welcomesantander.commons.WelcomeIDSantanderCallback; import br.com.santander.modulo.welcomesantander.feature.task.domain.TaskCash; import br.com.santander.modulo.welcomesantander.service.WelcomeService; import br.com.santander.preferences.Preferences; import br.com.santander.semaphore.SemaphoreApplication; import br.com.santander.semaphore.domain.SemaphoreCode; import br.com.santander.semaphore.interfaces.ISemaphoreCache; import br.com.santander.syncstorage.domain.Property; import br.com.santander.syncstorage.service.StorageService; import br.com.santander.ui.dialog.view.SantanderDialog; import br.com.santander.ui.iconBadge.SantanderIconWithBadge; @SuppressWarnings("all") public class HomeLogadaActivity extends SessionControlledActivity implements HomeLogadaView, IAvaliarAppView, ChatApplication.ChatComponentCallback { private ISession iSession = Session.getInstance(); private HomeLogadaActivity mActivity; private HomeLogadaPresenter homeLogadaPresenter; private AvaliacaoAppPresenter avaliacaoAppPresenter; private CardLayout cardlayoutCrm; private CrmShared crmShared; private MenuItem chatAction; private MenuInteractor menuInteractor; private SantanderIconWithBadge notificationIcon; private SantanderIconWithBadge attendanceIcon; private Conta conta = new Conta(); private AvaliacaoDialog avaliacaoDialog; private Dialog loadingDialog; private boolean mostrarNotificacao; private MeuGerenteApplicationStarter meuGerenteStarter; private ChatController chatController; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.home_logada_activity); try { if (!Session.getInstance().isInitedByLauncher() || Session.getInstance().getTokenSession() == null) { showEmptyHomeError(); } else { mActivity = this; SantanderLogger.w("LOGIN_PERFORMANCE_SENHA", "onCreate()"); DeviceProfiler.shareRsaKey(getApplicationContext()); //runs async :) SantanderLogger.w("TEST_LOGIN", "HomeLogadaPresenterImpl - END"); if (Session.getInstance().getUser().getValidacaoTransacional() == null) { SantanderAnalytics.getInstance().getMetricsAnalyticsInstance().logTextMetric( AnalyticsTags.OUTROS.OUTROS_DADOS_SESSAO_TRATAMENTO_EXCECAO, "Acao transacional invalida"); exitAppProperly(true, getBaseContext().getResources().getString(R.string.dialog_erro_reopen_app)); } else if (Session.getInstance().getUser().getAutenticarUsuario() == null) { SantanderAnalytics.getInstance().getMetricsAnalyticsInstance().logTextMetric( AnalyticsTags.OUTROS.OUTROS_DADOS_SESSAO_TRATAMENTO_EXCECAO, "Sessao AutenticarUsuario nulo"); } else { init(); SantanderAnalytics.getInstance().getFirebaseInstance().pushScreenview(this, Tags.ScreenView.HOME_LOGADA); verifyDeepLink(); SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty(Tags.Property.PRIMARY_SEGMENT, Session.getInstance().getUser().getAutenticarUsuario().getSegmentoPrimario()); SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty(Tags.Property.SECONDARY_SEGMENT, Session.getInstance().getUser().getAutenticarUsuario().getSegmentoSecundario()); if (Session.getInstance().getUser().getUserProfile() == UserProfile.SAVINGS_ACCOUNT) { SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty( Tags.Property.DIMENSION36, Tags.Property.SAVINGS_ACCOUNT); } else { SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty( Tags.Property.DIMENSION36, Tags.Property.CURRENT_ACCOUNT); } } if (!Session.getInstance().isChatInitialized()) { initChat(); } MinhaConta.getInstance().getSDDInstance().clearMotionEvents(); } } catch (Exception e) { FirebaseCrashlytics.getInstance().recordException(e); finish(); // android.os.Process.killProcess(android.os.Process.myPid()); // System.exit(0); } //fixToolbarOverlappingFragment(); } //TODO remover codigo na versão 12.4, já será possivel obeservar o comportamento em varios dispositivos. private void fixToolbarOverlappingFragment() { // It broke after migration to AndroidX if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) { FrameLayout fragmentContainer = findViewById(R.id.home_logada_fragment_container); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT ); int defaultMarginPx = 0; float actionbarSizeDp = 40f; int actionbarSizePx = (int) TypedValue.applyDimension( TypedValue.COMPLEX_UNIT_DIP, actionbarSizeDp, getResources().getDisplayMetrics() ); params.setMargins(defaultMarginPx, actionbarSizePx, defaultMarginPx, defaultMarginPx); fragmentContainer.setLayoutParams(params); } } private HomeLogadaPresenter getHomeLogadaPresenter() { if (!isDestroyed() && homeLogadaPresenter == null) { homeLogadaPresenter = new HomeLogadaPresenterImpl(this, HomeLogadaActivity.this); } return homeLogadaPresenter; } private AvaliacaoAppPresenter getAvaliacaoAppPresenter() { if (avaliacaoAppPresenter == null) { avaliacaoAppPresenter = new AvaliacaoAppPresenter(this); } return avaliacaoAppPresenter; } private void verifyDeepLink() { SantanderLogger.w("TEST_LOGIN", "verifyDeepLink - START"); if (SemaphoreApplication.getInstance().getSemaphoreCache().isOn(SemaphoreCode.MBB_NPS)) { getHomeLogadaPresenter().verifyDeepLinkNPS(); } getHomeLogadaPresenter().verifyDeepLink(); SantanderLogger.w("TEST_LOGIN", "verifyDeepLink - END"); } public static void exitAppProperly() { DialogUtil.showExitDialog(MinhaConta.getAppContext().getString(R.string.default_error), true); } public static void exitAppProperly(boolean showHome, String erroMessage) { DialogUtil.showExitDialog(erroMessage, showHome); } public void redirectDeepLink(Uri uri) { MainDeepLinkRedirect.getInstance().redirect(this, uri); } @Override public void init() { initViews(); initDynamicAuth(); montarActionBar(); getHomeLogadaPresenter().checkForBanners(); aplicarSegmentoCartao(); getHomeLogadaPresenter().checkOfferRegisterBiometricFacial(); checkWelcomeNeedExecute(); // menuAdicionarFoto(); renovarSessao(); homeLoaded(); getHomeLogadaPresenter().iniciarPreferencias(); getHomeLogadaPresenter().correcaoContaPreferencial(); getHomeLogadaPresenter().notificacaoFimAno(); getHomeLogadaPresenter().reloadDroppedCart(); getHomeLogadaPresenter().checkForNews(); getHomeLogadaPresenter().checkPropostas(); getHomeLogadaPresenter().checkLGPDLogin(); tagueamentoAndroidID(); tagueamentoMenu(); initFragment(); } private void checkForAppUpdate() { AppUpdateManager appUpdateManager = AppUpdateManagerFactory.create(this); Task<AppUpdateInfo> appUpdateInfoTask = appUpdateManager.getAppUpdateInfo(); appUpdateInfoTask.addOnSuccessListener(appUpdateInfo -> { if (appUpdateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE && appUpdateInfo.updatePriority() >= 4 /* high priority */ && appUpdateInfo.isUpdateTypeAllowed(AppUpdateType.IMMEDIATE)) { try { appUpdateManager.startUpdateFlowForResult( appUpdateInfo, AppUpdateType.FLEXIBLE, this, 100 ); } catch (IntentSender.SendIntentException e) { throw new RuntimeException(e); } } }); } private void showEmptyHomeError() { montarActionBar(); SantanderDialog.showSantanderDialog( this, new View.OnClickListener() { @Override public void onClick(View view) { DialogUtil.logoutApp(HomeLogadaActivity.this.getApplicationContext()); } }, null, null, getString(R.string.home_logada_erro_inicializacao), null, getString(R.string.ok ) ); } private void checkWelcomeNeedExecute() { ISemaphoreCache semaforoCache = SemaphoreApplication.getInstance().getSemaphoreCache(); String cpf = ""; try { cpf = Session.getInstance().getUser().getCpf().replace("\\D+", ""); } catch (Exception e) { cpf = ""; SantanderLogger.e(e); } startWelcomeApplicationCallback(); WelcomeService welcomeService = new WelcomeService(); TaskCash taskCash = welcomeService.getTaskCach(cpf); if (Session.getInstance().getUser().getWelcomeElegible() && semaforoCache.isOn(SemaphoreCode.MBB_BOAS_VINDAS) ) { if (taskCash.getShowWelcome()) { WelcomeApplication.Companion.getInstance().launchWelcome(this); } else if (taskCash.getShowWalkTrough()) { WelcomeApplication.Companion.getInstance().launchWalkTrough(this); } } else { idSantanderNeedExecute(); } } private void startWelcomeApplicationCallback() { WelcomeLibApplicationStarter controller = new WelcomeLibApplicationStarter(this); controller.setWelcomeIDSantanderCallback(new WelcomeIDSantanderCallback() { @Override public void openIDSantander() { SantanderIdEnablingData santanderIdEnablingData = Session.getInstance().getSantanderIdEnablingData(); if (santanderIdEnablingData != null && !showIdSantanderBlocked(santanderIdEnablingData)) { if (!Session.getInstance().isSantanderIdEnabled()) { IdSantanderCallerKt.callIdSantander(HomeLogadaActivity.this, santanderIdEnablingData); } } } }); controller.start(); } private void idSantanderNeedExecute() { SantanderIdEnablingData santanderIdEnablingData = Session.getInstance().getSantanderIdEnablingData(); if (santanderIdEnablingData != null && !showIdSantanderBlocked(santanderIdEnablingData)) { if (!Session.getInstance().isSantanderIdEnabled() && !Session.getInstance().isHomeLoaded()) { IdSantanderCallerKt.callIdSantander(this, santanderIdEnablingData); } } } private void initViews() { SantanderLogger.w("TEST_LOGIN", "bind view"); cardlayoutCrm = findViewById(R.id.cardlayout_crm); } @Override public void startLGPDLogin() { LgpdApplicationStarter starterLgpd = new LgpdApplicationStarter(); starterLgpd.launchLgpd(this, "Login"); } private void tagueamentoHome(Boolean tagHomeLogada) { if ((tagHomeLogada) && (iSession.getUser().getUserProfile() == UserProfile.CURRENT_ACCOUNT)) { String card = Session.getInstance().getUser().getCartaoCache().existemCartoes() ? Tags.Label.HOME_OWN_CARD : Tags.Label.HOME_NO_CARD; SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty(Tags.Property.HOME_CARD_STATUS, card); String loan = Session.getInstance().getUser().getEmprestimoCache().getEmprestimos().getValor() != null ? Tags.Label.HOME_OWN_LOAN : Tags.Label.HOME_NO_LOAN; SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty(Tags.Property.HOME_CARD_STATUS, loan); String savings = Session.getInstance().getUser().getContaCache().existePoupanca() ? Tags.Label.HOME_OWN_SAVINGS : Tags.Label.HOME_OWN_SAVINGS; SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty(Tags.Property.HOME_SAVINGS_STATUS, savings); String investiment = Session.getInstance().getUser().getInvestimentoCache().getInvestimentos().size() > 0 ? Tags.Label.HOME_OWN_INVESTIMENT : Tags.Label.HOME_NO_INVESTIMENT; SantanderAnalytics.getInstance().getFirebaseInstance().setUserProperty(Tags.Property.HOME_INVESTIMET_STATUS, investiment); } } private void initFragment() { Boolean tagHomeLogada = getIntent().getBooleanExtra("tagHomeLogada", false); Fragment homeLoggedFragment = HomeLoggedFragment.newInstance(); if (homeLoggedFragment.getArguments() == null) { Bundle bundle = new Bundle(); bundle.putBoolean("tagHomeLogada", tagHomeLogada); homeLoggedFragment.setArguments(bundle); } else { homeLoggedFragment.getArguments().putBoolean("tagHomeLogada", tagHomeLogada); } replaceFragment(homeLoggedFragment); tagueamentoHome(tagHomeLogada); } protected void replaceFragment(@NonNull Fragment fragment) { getSupportFragmentManager() .beginTransaction() .replace(R.id.home_logada_fragment_container, fragment, HomeLoggedFragment.TAG) .commit(); } @Override public void showInteractLightbox(LightboxAd lightboxView) { lightboxView.show(InteractionPoint.LIGHTBOX_HOME, this); } @Override public void initDynamicAuth() { SantanderLogger.w("TEST_LOGIN", "initDynamicAuth()"); DynamicAuthApp.configSyncCallback(); DynamicAuthenticationService.INSTANCE.init(this); } @Override public void initRegisterFacialBiometricsOffer() { if (!RegisterFacialBiometricsApplicationStarter.INSTANCE.getHasInitialized()) { RegisterFacialBiometricsApplicationStarter.INSTANCE.init(this); } RegisterFacialBiometricsApplicationStarter.INSTANCE.processorStatusEligibility( false, Session.getInstance().getFacialBiometricsRegisterStatus() ); } private void tagueamentoAndroidID() { try { SantanderAnalytics.getInstance().getMetricsAnalyticsInstance().logTextMetric( AnalyticsTags.IDSANTANDER.ID_SANTANDER_ANDROID_ID, "Android ID: " + Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID)); } catch (Exception e) { FirebaseCrashlytics.getInstance().recordException(e); SantanderAnalytics.getInstance().getMetricsAnalyticsInstance().logTextMetric(AnalyticsTags.IDSANTANDER.ID_SANTANDER_ANDROID_ID, "Unable to get Android ID"); } } private void tagueamentoMenu() { String chatLabel = Tags.Label.CHAT_NO_NOTIFICATION; if (Session.getInstance().getUser().getNotificacoes() > 0) { chatLabel = Tags.Label.CHAT_WITH_NOTIFICATION; } FirebaseService.pushEvent( Tags.ScreenView.HOME_LOGADA, Tags.Category.HOME_LOGADA + Tags.Label.HOME_CHAT, Tags.Action.EXIBIU, chatLabel ); if (SemaphoreApplication.getInstance().getSemaphoreCache().isOn( SemaphoreCode.MBB_ATENDIMENTO_VIA_HEADER)) { FirebaseService.pushEvent( Tags.ScreenView.HOME_LOGADA, Tags.Category.HOME_LOGADA + Tags.Label.HOME_CHAT, Tags.Action.EXIBIU, Tags.Label.CENTRAL_DE_ATENDIMENTO ); } } @Override public void showNews() { startActivity(new Intent(this, NewsActivity.class)); overridePendingTransition(R.anim.push_up_in, R.anim.push_up_out); } @Override public void showPropostasEmAberto() { startActivity(new Intent(this, PropostasEmAbertoActivity.class)); overridePendingTransition(R.anim.push_up_in, R.anim.push_up_out); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); verifyDeepLink(); } private View.OnClickListener getSantanderOnBannerClicked() { return new View.OnClickListener() { @Override public void onClick(View view) { SantanderOnController.deepLinkRedirect(mActivity, DeepLinkType.SANTANDER_ON, ""); } }; } private void checkDontKeepActivitiesIsEnabled() { if (NaoManterAtividadesHelperKt.isFinishActivitiesOptionEnabled(this, false)) { NaoManterAtividadesHelperKt.showNaoManterDialog(this, getSupportFragmentManager(), new NaoManterProperties(true, true, true, false)); } } private void storeShowDkaDialogStatus(boolean isChecked) { SharedPreferences mSharedPreferences = Preferences.get(getApplicationContext(), "dkaOption"); SharedPreferences.Editor mEditor = mSharedPreferences.edit(); mEditor.putBoolean("dkaStatus", isChecked); mEditor.apply(); } private boolean getShowDkaDialogDStatus() { SharedPreferences mSharedPreferences = Preferences.get(getApplicationContext(), "dkaOption"); return mSharedPreferences.getBoolean("dkaStatus", false); } @Override public void goToOnboardingFlow(boolean reoffer) { Intent intent = new Intent(this, IdSantanderHabilitacaoSMSOfertaActivity.class); intent.putExtra("onboarding", true); if (reoffer) intent.putExtra("reoffer", true); startActivity(intent); } @Override public void goToIdSantanderHabilitacaoSMS() { startActivity(new Intent(this, IdSantanderHabilitacaoSMSOfertaActivity.class)); } @Override public void goToIdSantanderHabilitacaoATM(Boolean isGeo) { Intent intent = new Intent(this, IdSantanderHabilitacaoActivity.class); intent.putExtra("atm", true); intent.putExtra("geo", isGeo); startActivity(intent); } @Override public void goToIdSantanderHabilitacaoATM_QR() { Intent intent = new Intent(this, IdSantanderHabilitacaoActivity.class); intent.putExtra("atm-qr", true); startActivity(intent); } @Override public void goToEnableIdSantanderRemote(boolean isOnboarding) { Intent intent = new Intent(this, IdSantanderRemoteOfferActivity.class); intent.putExtra(IdSantanderRemoteOfferActivity.EXTRA_IS_ONBOARDING, isOnboarding); startActivity(intent); } @Override public void goToEscolharContaPreferencial() { startActivity(new Intent(this, EscolhaContaPreferencialActivity.class)); } @Override public void goToIdSantanderCancelado() { Intent intent = new Intent(this, IdSantanderUsuarioConsultivoActivity.class); intent.putExtra("tipo", TipoUsuarioConsultivoEnum.ID_CANCELADO); startActivity(intent); } @Override public void goToIdSantanderSwipeObrigatoria() { startActivity(new Intent(this, IdSantanderOfertaActivity.class).putExtra("tipoConversao", IdSantanderTipoConversaoEnum.OBRIGATORIA)); } @Override public void goToIdSantanderSwipe() { startActivity(new Intent(this, IdSantanderOfertaActivity.class).putExtra("tipoConversao", IdSantanderTipoConversaoEnum.OPCIONAL)); } @Override public void checkFingerprintEnabling() { SantanderLogger.d("PAC", "Home - checkFingerprintEnabling"); iSession.getUser().setPerfil("2"); goToBloqueioADM(); } @Override public void initFinalAnoAviso() { startActivity(new Intent(this, AvisoFinalAnoActivity.class)); } @Override public void goToBloqueioADM() { Intent intent = new Intent(this, IdSantanderUsuarioConsultivoActivity.class); intent.putExtra("tipo", TipoUsuarioConsultivoEnum.BLOQUEIO_ADM); startActivity(intent); } @Override public void goToBloqueioCliente() { Intent intent = new Intent(this, IdSantanderUsuarioConsultivoActivity.class); intent.putExtra("tipo", TipoUsuarioConsultivoEnum.BLOQUEIO_CLIENTE); startActivity(intent); } @Override public void goToBloqueioTentativas() { Intent intent = new Intent(this, IdSantanderUsuarioConsultivoActivity.class); intent.putExtra("tipo", TipoUsuarioConsultivoEnum.BLOQUEIO_TENTATIVAS); startActivity(intent); } @Override public void goToErroInesperado() { Intent intent = new Intent(this, IdSantanderUsuarioConsultivoActivity.class); intent.putExtra("tipo", TipoUsuarioConsultivoEnum.ERRO_INESPERADO); startActivity(intent); } @Override public void goToOtimizacao() { startActivity(new Intent(this, IdSantanderOtimizacaoActivity.class)); } @Override public void goToUsuarioConsultivo() { Intent intent = new Intent(this, IdSantanderUsuarioConsultivoActivity.class); intent.putExtra("tipo", TipoUsuarioConsultivoEnum.USUARIO_CONSULTIVO); startActivity(intent); } @Override protected void onResume() { super.onResume(); PerformanceTraces.traceLoginDisplayHome.stop(); // Checks for transaction done and show the google review dialog getAvaliacaoAppPresenter().verificarExibicao(); HashMap<String, String> params = new HashMap<>(); String service = AccessibilityUtil.getEnabledAccessibilityService(this); if (!service.equals("")) { params.put(Tags.Category.MODO_ACESSIBILIDADE, "true"); params.put(Tags.Category.BIBLIOTECA_ACESSIBILIDADE, service); } else { params.put(Tags.Category.MODO_ACESSIBILIDADE, "false"); } SantanderAnalytics.getInstance().getFirebaseInstance().pushScreenview(this, Tags.ScreenView.HOME_LOGADA, params); checkDontKeepActivitiesIsEnabled(); DataController.getInstance().setActualActivity(this); SantanderLogger.w("TEST_LOGIN", "onResume"); if (Session.getInstance().isChatEnable()) { showChatIcon(true); } getHomeLogadaPresenter().setActivityResumed(true); invalidateOptionsMenu(); // Focus precisa estar sempre limpo, para não interferir nos scrolls if (getCurrentFocus() != null) { getCurrentFocus().clearFocus(); } } @Override protected void onPause() { super.onPause(); getHomeLogadaPresenter().setActivityResumed(false); DataController.getInstance().setActualActivity(null); } @Override public void montarActionBar() { SantanderLogger.w("TEST_LOGIN", "montarActionBar()"); ActionBar actionBar = this.getSupportActionBar(); if (actionBar != null) { actionBar.setDisplayShowHomeEnabled(false); actionBar.setDisplayShowTitleEnabled(false); actionBar.setElevation(0.0F); ToolBarHandler.INSTANCE.factoryToolBar(this, actionBar, null); } } private void aplicarSegmentoCartao() { SantanderLogger.w("TEST_LOGIN", "getSegmento()"); MinhaConta.setUrlSegmentoCartao(SecurityUtil.getCreditCardSegment()); } @Override public void menuAdicionarFoto() { SantanderLogger.w("TEST_LOGIN", "menuAdicionarFoto()"); ToolBarHandler.INSTANCE.setPhoto(ImageUtil.getSavedImage(this, iSession.getUser().getCpf()), this); } @Override public void renovarSessao() { SantanderLogger.w("TEST_LOGIN", "renovarSessao()"); iSession.setRenovarSessao(true); } @Override public boolean onCreateOptionsMenu(Menu menu) { menuInteractor = new MenuInteractorImpl(); menuInteractor.onCreateOptionsMenu(this, menu, getMenuInflater()); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { return menuInteractor.onOptionsItemSelected(this, item); } @Override public void onBackPressed() { DefaultDialogUtils.showExitAppDialog(HomeLogadaActivity.this); return; } @Override protected void onDestroy() { Date date = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy, HH:mm"); SharedPreferences settings = Preferences.get(getApplicationContext(), "homeLogadaWidget"); SharedPreferences.Editor editor = settings.edit(); editor.putString("lastConecctionDate", sdf.format(date)); editor.commit(); super.onDestroy(); } @Override public void homeLoaded() { SantanderLogger.w("TEST_LOGIN", "homeLoaded()"); if (!iSession.isHomeLoaded()) { iSession.setHomeLoaded(true); SharedPreferences settings = Preferences.get(MinhaConta.getAppContext(), "SovereignBrasilProfile"); SharedPreferences.Editor editor = settings.edit(); editor.putString("idsantander_logou", KeyStoreHelper.encryptString("true")); editor.commit(); new Thread(new Runnable() { @Override public void run() { try { final StorageService storageService = StorageService.getInstance(getApplicationContext()); storageService.addOrUpdateProperty(new Property("FIRST_LOGIN_" + Session.getInstance().getUser().getCpf(), "true")); SantanderLogger.w("TEST_LOGIN", "homeLoaded()"); } catch (Exception e) { FirebaseCrashlytics.getInstance().recordException(e); SantanderAnalytics.getInstance().getMetricsAnalyticsInstance().logTextMetric("FIRST_LOGIN", "Exception" + e.getMessage()); SantanderLogger.e(e); SantanderLogger.w("TEST_LOGIN", "homeLoaded() - Exception" + e.getMessage()); } } }).start(); } } @Override public void dialogAvaliarShow() { if (SemaphoreApplication.getInstance().getSemaphoreCache().isOn(SemaphoreCode.MBB_IN_APP_REVIEW)) { boolean showAvaliarDialog = AvaliarHelperKt.shouldShowAvaliarDialog(this); if (showAvaliarDialog) { final ReviewManager reviewManager = ReviewManagerFactory.create(this); Task<ReviewInfo> request = reviewManager.requestReviewFlow(); request.addOnCompleteListener(new OnCompleteListener<ReviewInfo>() { @Override public void onComplete(@NonNull Task<ReviewInfo> task) { if (task.isSuccessful()) { ReviewInfo reviewInfo = task.getResult(); Task<Void> flow = reviewManager.launchReviewFlow(HomeLogadaActivity.this, reviewInfo); flow.addOnCompleteListener(new OnCompleteListener<Void>() { @Override public void onComplete(@NonNull Task<Void> task) { SantanderLogger.d("Caixa de diálogo de revisão do Google exibida"); } }); flow.addOnFailureListener(new OnFailureListener() { @Override public void onFailure(Exception e) { SantanderLogger.d("Google App Review - ", e.getMessage()); } }); } else { SantanderLogger.d("Problema ao mostrar o Google na avaliação do aplicativo"); } } }); } } } @Override public void buscarBanner() { BannerService bannerService = ControllerResolver .getBannerService() .context(getApplicationContext()); bannerService.requestNewBanner(); SantanderLogger.w("TEST_LOGIN", "checkForBanners()"); } @Override public void goToIdSantanderHabilitacaoGEO() { final Dialog d = new HabilitarIDGeoLocalizacao().create(this); d.findViewById(R.id.button_access) .setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { d.dismiss(); goToIdSantanderHabilitacaoATM(true); } }); d.show(); } @Override public void showCampanha(String title, String body, String buttonLabel, String bitmapString, String deepLink, String approachId, String campaignId, String viewId) { ECommerceDialog eCommerceDialog = new ECommerceDialogImpl(this); eCommerceDialog.configure(title, body, buttonLabel, bitmapString, deepLink, approachId, campaignId, viewId); eCommerceDialog.show(); } @Override public void mensagemErroTratado() { mensagemErroTratado(getString(R.string.erro_retorno_service)); } @Override public void mensagemErroTratado(String mensagem) { DialogUtil.showDialogMessage(this, "Alerta", mensagem, false, "OK"); } @Override public void initChat() { meuGerenteStarter = new MeuGerenteApplicationStarter(mActivity); final ChatApplication.ChatAction chatAction = new ChatApplication.ChatAction() { @Override public void onAction() { meuGerenteStarter.start(); } }; ChatApplication.getInstance().openChat(Constants.SERVICE_MANAGER, HomeLogadaActivity.this, HomeLogadaActivity.this, chatAction, null); } @Override public void showChatIcon(boolean show) { if (show) { chatIconVisible(); } else { chatIconInvisible(); } } //Para deixar o icone do chat visivel private void chatIconVisible() { SantanderLogger.d("Chat", "ELEGIVEL - DISPONIVEL | DESABILITADO | FORA DO HORARIO"); if (chatAction != null) { chatAction.setVisible(true); } } //Para deixar o icone do chat oculto private void chatIconInvisible() { SantanderLogger.d("Chat", "NÃO ELEGIVEL - INDISPONIVEL"); if (chatAction != null) { chatAction.setVisible(false); } } //Validação de permissão para visibilidade do botão de chat @Override public void isAbleToInitChat(boolean isAble) { Session.getInstance().setChatEnable(isAble); if (isAble) { chatIconVisible(); getHomeLogadaPresenter().verifyDeepLinkChat(); } else { chatIconInvisible(); } ChatApplication.getInstance().chatElegible(isAble); } @Override public void goRedirectWay() { Bundle bundle = getIntent().getExtras(); if (bundle != null) { boolean isWay = bundle.getBoolean("isway", false); if (isWay) { String action = bundle.getString("way_action", ""); String numeroCartao = bundle.getString("NUMEROCARTAO"); doRedirectWay(action, numeroCartao); } } } private void doRedirectWay(String action, String numeroCartao) { final String finalNumeroCartao = numeroCartao; switch (action) { case "pagarFatura": ReloadHomeServicesUtil reloadHome = new ReloadHomeServicesUtil(); ReloadHomeServicesUtil.TipoReloadEnum[] tiposReload = new ReloadHomeServicesUtil.TipoReloadEnum[]{ReloadHomeServicesUtil.TipoReloadEnum.RELOAD_BALANCE_AND_CARD}; reloadHome.reloadDadosHome(tiposReload, new FutureCallBackTask() { @Override public void processFinish(Object output) { chamarPagamentoFatura(finalNumeroCartao); } }); break; case "parcelarFatura": chamarParcelamentoFatura(numeroCartao); break; case "pagarTitulos": chamarPagamentoTitulosEContas(); break; } } @Override public void atualizarNotificacoes() { invalidateOptionsMenu(); } private boolean showIdSantanderBlocked(SantanderIdEnablingData enablingData) { String key = KEY_BLOCKED_ID_FLAG + "_" + getDocumentKey(this); if (enablingData.getAction().equals("INFORMAR_BLOQUEIO") && Preferences.get(this, PREFS_BLOCKED_ID_SNT).getBoolean(key, false)) { SecurityUtil.setUsuarioConsultivo(); return true; } else { Preferences.get(this, PREFS_BLOCKED_ID_SNT).edit().putBoolean(key, false).apply(); return false; } } private void chamarPagamentoFatura(String numeroCartao) { CreditCardInvoicePaymentApplicationStarter applicationStarter = new CreditCardInvoicePaymentApplicationStarter(this, WebViewBridgeConstants.WEBVIEW_PATH_CREDIT_CARD_INVOICE_PAYMENT, numeroCartao); applicationStarter.start(); } private void chamarParcelamentoFatura(String numeroCartao) { ParcelamentoFaturasApplicationStarter parcelamentoFaturasApplicationStarter = new ParcelamentoFaturasApplicationStarter(this); parcelamentoFaturasApplicationStarter.start(); } private void chamarPagamentoTitulosEContas() { PagamentosCodigoBarrasActivity.alreadyLoaded = false; Intent intent = new Intent(this, PagamentosCodigoBarrasActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("isway", true); startActivity(intent); } @Override public Chat getChatComponent() { return ChatApplication.getInstance().getChatComponent(); } @Override public void startCrm() { crmShared = new CrmShared(this, cardlayoutCrm, PageEnum.Home); } private void mostrarNotificacao() { if (!mostrarNotificacao) { mostrarNotificacao = true; getHomeLogadaPresenter().notificacaoFimAno(); } } @Override public void showLoadingScreen() { loadingDialog = DialogUtil.showLoading(this); } @Override public void hideLoadingScreen() { if (loadingDialog != null) { loadingDialog.dismiss(); loadingDialog = null; } } public CrmShared getCrmShared() { return this.crmShared; } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); getHomeLogadaPresenter().onActivityResult(requestCode, resultCode, data); registerForActivityResult( new ActivityResultContracts.StartIntentSenderForResult(), new ActivityResultCallback<ActivityResult>() { @Override public void onActivityResult(ActivityResult result) { // handle callback if (resultCode != RESULT_OK) { SantanderLogger.d("Update flow failed! Result code: " + resultCode); // If the update is cancelled or fails, // you can request to start the update again. } } }); } /Users/t767903/Documents/Personal/ModulosLibs/gapzero-android/app/src/main/java/com/santander/app/homelogada/presentation/HomeLogadaActivity.java:340: error: incompatible types: com.google.android.gms.tasks.Task<AppUpdateInfo> cannot be converted to com.google.android.play.core.tasks.Task<AppUpdateInfo> Task<AppUpdateInfo> appUpdateInfoTask = appUpdateManager.getAppUpdateInfo(); ^ }