Primer paso de la investigacion. Se aportan el .apk, las carpetas con el apk extraido y el apk descompilado. El archivo API_DOCUMENTATION.md es un archivo donde se anotaran los descubrimientos del funcionamiento de la API, y los .py son scripts para probar la funcionalidad de la API con los métodos que vayamos encontrando. Finalmente, los archivos .js son scripts de Frida para extraer informacion de la APP durante la ejecucion.

This commit is contained in:
2025-12-04 13:59:54 +01:00
parent f2fd1c3bf5
commit e0133d2ca2
10432 changed files with 1019085 additions and 1 deletions

View File

@@ -0,0 +1,62 @@
package com.adif.elcanomovil.uiHome.databinding;
import a.AbstractC0105a;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.constraintlayout.widget.ConstraintLayout;
import com.adif.elcanomovil.uiHome.R;
/* loaded from: classes2.dex */
public final class FakeTabViewBinding {
public final Button buttonSheet;
public final ConstraintLayout containerButtonSheet;
private final ConstraintLayout rootView;
public final ImageView sliderImageController;
public final TextView userStationsTitle;
private FakeTabViewBinding(ConstraintLayout constraintLayout, Button button, ConstraintLayout constraintLayout2, ImageView imageView, TextView textView) {
this.rootView = constraintLayout;
this.buttonSheet = button;
this.containerButtonSheet = constraintLayout2;
this.sliderImageController = imageView;
this.userStationsTitle = textView;
}
public static FakeTabViewBinding bind(View view) {
int i = R.id.buttonSheet;
Button button = (Button) AbstractC0105a.t(view, i);
if (button != null) {
ConstraintLayout constraintLayout = (ConstraintLayout) view;
i = R.id.sliderImageController;
ImageView imageView = (ImageView) AbstractC0105a.t(view, i);
if (imageView != null) {
i = R.id.userStationsTitle;
TextView textView = (TextView) AbstractC0105a.t(view, i);
if (textView != null) {
return new FakeTabViewBinding(constraintLayout, button, constraintLayout, imageView, textView);
}
}
}
throw new NullPointerException("Missing required view with ID: ".concat(view.getResources().getResourceName(i)));
}
public static FakeTabViewBinding inflate(LayoutInflater layoutInflater) {
return inflate(layoutInflater, null, false);
}
public static FakeTabViewBinding inflate(LayoutInflater layoutInflater, ViewGroup viewGroup, boolean z3) {
View inflate = layoutInflater.inflate(R.layout.fake_tab_view, viewGroup, false);
if (z3) {
viewGroup.addView(inflate);
}
return bind(inflate);
}
public ConstraintLayout getRoot() {
return this.rootView;
}
}

View File

@@ -0,0 +1,63 @@
package com.adif.elcanomovil.uiHome.databinding;
import a.AbstractC0105a;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import androidx.coordinatorlayout.widget.CoordinatorLayout;
import com.adif.elcanomovil.uiHome.R;
import com.adif.elcanomovil.uiHome.views.HomeMapView;
/* loaded from: classes2.dex */
public final class FragmentHomeBinding {
public final FrameLayout frameFakeTab;
public final FakeTabViewBinding frameFakeTabInclude;
public final ViewHomeDetailBinding layoutHomeDetail;
public final HomeMapView layoutHomeMap;
private final CoordinatorLayout rootView;
private FragmentHomeBinding(CoordinatorLayout coordinatorLayout, FrameLayout frameLayout, FakeTabViewBinding fakeTabViewBinding, ViewHomeDetailBinding viewHomeDetailBinding, HomeMapView homeMapView) {
this.rootView = coordinatorLayout;
this.frameFakeTab = frameLayout;
this.frameFakeTabInclude = fakeTabViewBinding;
this.layoutHomeDetail = viewHomeDetailBinding;
this.layoutHomeMap = homeMapView;
}
public static FragmentHomeBinding bind(View view) {
View t2;
int i = R.id.frameFakeTab;
FrameLayout frameLayout = (FrameLayout) AbstractC0105a.t(view, i);
if (frameLayout != null && (t2 = AbstractC0105a.t(view, (i = R.id.frameFakeTabInclude))) != null) {
FakeTabViewBinding bind = FakeTabViewBinding.bind(t2);
i = R.id.layoutHomeDetail;
View t4 = AbstractC0105a.t(view, i);
if (t4 != null) {
ViewHomeDetailBinding bind2 = ViewHomeDetailBinding.bind(t4);
i = R.id.layoutHomeMap;
HomeMapView homeMapView = (HomeMapView) AbstractC0105a.t(view, i);
if (homeMapView != null) {
return new FragmentHomeBinding((CoordinatorLayout) view, frameLayout, bind, bind2, homeMapView);
}
}
}
throw new NullPointerException("Missing required view with ID: ".concat(view.getResources().getResourceName(i)));
}
public static FragmentHomeBinding inflate(LayoutInflater layoutInflater) {
return inflate(layoutInflater, null, false);
}
public static FragmentHomeBinding inflate(LayoutInflater layoutInflater, ViewGroup viewGroup, boolean z3) {
View inflate = layoutInflater.inflate(R.layout.fragment_home, viewGroup, false);
if (z3) {
viewGroup.addView(inflate);
}
return bind(inflate);
}
public CoordinatorLayout getRoot() {
return this.rootView;
}
}

View File

@@ -0,0 +1,73 @@
package com.adif.elcanomovil.uiHome.databinding;
import a.AbstractC0105a;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import androidx.constraintlayout.widget.ConstraintLayout;
import com.adif.elcanomovil.commonViews.UserStationsView;
import com.adif.elcanomovil.uiHome.R;
import com.adif.elcanomovil.uiHome.views.StationNearView;
import com.adif.elcanomovil.uiHome.views.UserFavoritesView;
/* loaded from: classes2.dex */
public final class ViewHomeDetailBinding {
public final ConstraintLayout layoutHomeDetail;
public final StationNearView layoutNearStation;
public final ViewHomeOffersBinding layoutStationOffers;
public final UserFavoritesView layoutUserFavorites;
public final UserStationsView layoutUserStations;
private final ConstraintLayout rootView;
public final ImageView sliderImageController;
private ViewHomeDetailBinding(ConstraintLayout constraintLayout, ConstraintLayout constraintLayout2, StationNearView stationNearView, ViewHomeOffersBinding viewHomeOffersBinding, UserFavoritesView userFavoritesView, UserStationsView userStationsView, ImageView imageView) {
this.rootView = constraintLayout;
this.layoutHomeDetail = constraintLayout2;
this.layoutNearStation = stationNearView;
this.layoutStationOffers = viewHomeOffersBinding;
this.layoutUserFavorites = userFavoritesView;
this.layoutUserStations = userStationsView;
this.sliderImageController = imageView;
}
public static ViewHomeDetailBinding bind(View view) {
View t2;
ConstraintLayout constraintLayout = (ConstraintLayout) view;
int i = R.id.layoutNearStation;
StationNearView stationNearView = (StationNearView) AbstractC0105a.t(view, i);
if (stationNearView != null && (t2 = AbstractC0105a.t(view, (i = R.id.layoutStationOffers))) != null) {
ViewHomeOffersBinding bind = ViewHomeOffersBinding.bind(t2);
i = R.id.layoutUserFavorites;
UserFavoritesView userFavoritesView = (UserFavoritesView) AbstractC0105a.t(view, i);
if (userFavoritesView != null) {
i = R.id.layoutUserStations;
UserStationsView userStationsView = (UserStationsView) AbstractC0105a.t(view, i);
if (userStationsView != null) {
i = R.id.sliderImageController;
ImageView imageView = (ImageView) AbstractC0105a.t(view, i);
if (imageView != null) {
return new ViewHomeDetailBinding(constraintLayout, constraintLayout, stationNearView, bind, userFavoritesView, userStationsView, imageView);
}
}
}
}
throw new NullPointerException("Missing required view with ID: ".concat(view.getResources().getResourceName(i)));
}
public static ViewHomeDetailBinding inflate(LayoutInflater layoutInflater) {
return inflate(layoutInflater, null, false);
}
public static ViewHomeDetailBinding inflate(LayoutInflater layoutInflater, ViewGroup viewGroup, boolean z3) {
View inflate = layoutInflater.inflate(R.layout.view_home_detail, viewGroup, false);
if (z3) {
viewGroup.addView(inflate);
}
return bind(inflate);
}
public ConstraintLayout getRoot() {
return this.rootView;
}
}

View File

@@ -0,0 +1,48 @@
package com.adif.elcanomovil.uiHome.databinding;
import a.AbstractC0105a;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.fragment.app.FragmentContainerView;
import com.adif.elcanomovil.uiHome.R;
/* loaded from: classes2.dex */
public final class ViewHomeMapBinding {
public final ConstraintLayout layoutHomeMap;
public final FragmentContainerView map;
private final ConstraintLayout rootView;
private ViewHomeMapBinding(ConstraintLayout constraintLayout, ConstraintLayout constraintLayout2, FragmentContainerView fragmentContainerView) {
this.rootView = constraintLayout;
this.layoutHomeMap = constraintLayout2;
this.map = fragmentContainerView;
}
public static ViewHomeMapBinding bind(View view) {
ConstraintLayout constraintLayout = (ConstraintLayout) view;
int i = R.id.map;
FragmentContainerView fragmentContainerView = (FragmentContainerView) AbstractC0105a.t(view, i);
if (fragmentContainerView != null) {
return new ViewHomeMapBinding(constraintLayout, constraintLayout, fragmentContainerView);
}
throw new NullPointerException("Missing required view with ID: ".concat(view.getResources().getResourceName(i)));
}
public static ViewHomeMapBinding inflate(LayoutInflater layoutInflater) {
return inflate(layoutInflater, null, false);
}
public static ViewHomeMapBinding inflate(LayoutInflater layoutInflater, ViewGroup viewGroup, boolean z3) {
View inflate = layoutInflater.inflate(R.layout.view_home_map, viewGroup, false);
if (z3) {
viewGroup.addView(inflate);
}
return bind(inflate);
}
public ConstraintLayout getRoot() {
return this.rootView;
}
}

View File

@@ -0,0 +1,60 @@
package com.adif.elcanomovil.uiHome.databinding;
import a.AbstractC0105a;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.constraintlayout.widget.ConstraintLayout;
import com.adif.elcanomovil.commonViews.databinding.ViewBadgeBinding;
import com.adif.elcanomovil.uiHome.R;
/* loaded from: classes2.dex */
public final class ViewHomeOffersBinding {
public final ViewBadgeBinding offersLayoutBadge;
public final TextView offersSubtitle;
public final TextView offersTitle;
private final ConstraintLayout rootView;
private ViewHomeOffersBinding(ConstraintLayout constraintLayout, ViewBadgeBinding viewBadgeBinding, TextView textView, TextView textView2) {
this.rootView = constraintLayout;
this.offersLayoutBadge = viewBadgeBinding;
this.offersSubtitle = textView;
this.offersTitle = textView2;
}
public static ViewHomeOffersBinding bind(View view) {
int i = R.id.offersLayoutBadge;
View t2 = AbstractC0105a.t(view, i);
if (t2 != null) {
ViewBadgeBinding bind = ViewBadgeBinding.bind(t2);
int i4 = R.id.offersSubtitle;
TextView textView = (TextView) AbstractC0105a.t(view, i4);
if (textView != null) {
i4 = R.id.offersTitle;
TextView textView2 = (TextView) AbstractC0105a.t(view, i4);
if (textView2 != null) {
return new ViewHomeOffersBinding((ConstraintLayout) view, bind, textView, textView2);
}
}
i = i4;
}
throw new NullPointerException("Missing required view with ID: ".concat(view.getResources().getResourceName(i)));
}
public static ViewHomeOffersBinding inflate(LayoutInflater layoutInflater) {
return inflate(layoutInflater, null, false);
}
public static ViewHomeOffersBinding inflate(LayoutInflater layoutInflater, ViewGroup viewGroup, boolean z3) {
View inflate = layoutInflater.inflate(R.layout.view_home_offers, viewGroup, false);
if (z3) {
viewGroup.addView(inflate);
}
return bind(inflate);
}
public ConstraintLayout getRoot() {
return this.rootView;
}
}

View File

@@ -0,0 +1,95 @@
package com.adif.elcanomovil.uiHome.databinding;
import a.AbstractC0105a;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.constraintlayout.widget.ConstraintLayout;
import com.adif.elcanomovil.commonViews.StationOptionView;
import com.adif.elcanomovil.uiHome.R;
/* loaded from: classes2.dex */
public final class ViewStationNearBinding {
public final TextView nearStationInfo;
public final TextView nearStationSubtitle;
public final TextView nearStationTitle;
public final TextView permissionStatusTextView;
private final ConstraintLayout rootView;
public final StationOptionView stationInfoArrivals;
public final StationOptionView stationInfoComercial;
public final StationOptionView stationInfoDepartures;
public final StationOptionView stationInfoDetails;
public final ProgressBar stationOptionsLoading;
private ViewStationNearBinding(ConstraintLayout constraintLayout, TextView textView, TextView textView2, TextView textView3, TextView textView4, StationOptionView stationOptionView, StationOptionView stationOptionView2, StationOptionView stationOptionView3, StationOptionView stationOptionView4, ProgressBar progressBar) {
this.rootView = constraintLayout;
this.nearStationInfo = textView;
this.nearStationSubtitle = textView2;
this.nearStationTitle = textView3;
this.permissionStatusTextView = textView4;
this.stationInfoArrivals = stationOptionView;
this.stationInfoComercial = stationOptionView2;
this.stationInfoDepartures = stationOptionView3;
this.stationInfoDetails = stationOptionView4;
this.stationOptionsLoading = progressBar;
}
public static ViewStationNearBinding bind(View view) {
int i = R.id.nearStationInfo;
TextView textView = (TextView) AbstractC0105a.t(view, i);
if (textView != null) {
i = R.id.nearStationSubtitle;
TextView textView2 = (TextView) AbstractC0105a.t(view, i);
if (textView2 != null) {
i = R.id.nearStationTitle;
TextView textView3 = (TextView) AbstractC0105a.t(view, i);
if (textView3 != null) {
i = R.id.permissionStatusTextView;
TextView textView4 = (TextView) AbstractC0105a.t(view, i);
if (textView4 != null) {
i = R.id.stationInfoArrivals;
StationOptionView stationOptionView = (StationOptionView) AbstractC0105a.t(view, i);
if (stationOptionView != null) {
i = R.id.stationInfoComercial;
StationOptionView stationOptionView2 = (StationOptionView) AbstractC0105a.t(view, i);
if (stationOptionView2 != null) {
i = R.id.stationInfoDepartures;
StationOptionView stationOptionView3 = (StationOptionView) AbstractC0105a.t(view, i);
if (stationOptionView3 != null) {
i = R.id.stationInfoDetails;
StationOptionView stationOptionView4 = (StationOptionView) AbstractC0105a.t(view, i);
if (stationOptionView4 != null) {
i = R.id.stationOptionsLoading;
ProgressBar progressBar = (ProgressBar) AbstractC0105a.t(view, i);
if (progressBar != null) {
return new ViewStationNearBinding((ConstraintLayout) view, textView, textView2, textView3, textView4, stationOptionView, stationOptionView2, stationOptionView3, stationOptionView4, progressBar);
}
}
}
}
}
}
}
}
}
throw new NullPointerException("Missing required view with ID: ".concat(view.getResources().getResourceName(i)));
}
public static ViewStationNearBinding inflate(LayoutInflater layoutInflater) {
return inflate(layoutInflater, null, false);
}
public static ViewStationNearBinding inflate(LayoutInflater layoutInflater, ViewGroup viewGroup, boolean z3) {
View inflate = layoutInflater.inflate(R.layout.view_station_near, viewGroup, false);
if (z3) {
viewGroup.addView(inflate);
}
return bind(inflate);
}
public ConstraintLayout getRoot() {
return this.rootView;
}
}

View File

@@ -0,0 +1,65 @@
package com.adif.elcanomovil.uiHome.databinding;
import a.AbstractC0105a;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.TextView;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import com.adif.elcanomovil.uiHome.R;
/* loaded from: classes2.dex */
public final class ViewUserFavoritesBinding {
public final RecyclerView recycleViewFavouriteStations;
private final ConstraintLayout rootView;
public final ImageButton userFavoritesActionMore;
public final TextView userFavoritesTitle;
public final TextView viewFavouriteStationsEmpty;
private ViewUserFavoritesBinding(ConstraintLayout constraintLayout, RecyclerView recyclerView, ImageButton imageButton, TextView textView, TextView textView2) {
this.rootView = constraintLayout;
this.recycleViewFavouriteStations = recyclerView;
this.userFavoritesActionMore = imageButton;
this.userFavoritesTitle = textView;
this.viewFavouriteStationsEmpty = textView2;
}
public static ViewUserFavoritesBinding bind(View view) {
int i = R.id.recycleViewFavouriteStations;
RecyclerView recyclerView = (RecyclerView) AbstractC0105a.t(view, i);
if (recyclerView != null) {
i = R.id.userFavoritesActionMore;
ImageButton imageButton = (ImageButton) AbstractC0105a.t(view, i);
if (imageButton != null) {
i = R.id.userFavoritesTitle;
TextView textView = (TextView) AbstractC0105a.t(view, i);
if (textView != null) {
i = R.id.viewFavouriteStationsEmpty;
TextView textView2 = (TextView) AbstractC0105a.t(view, i);
if (textView2 != null) {
return new ViewUserFavoritesBinding((ConstraintLayout) view, recyclerView, imageButton, textView, textView2);
}
}
}
}
throw new NullPointerException("Missing required view with ID: ".concat(view.getResources().getResourceName(i)));
}
public static ViewUserFavoritesBinding inflate(LayoutInflater layoutInflater) {
return inflate(layoutInflater, null, false);
}
public static ViewUserFavoritesBinding inflate(LayoutInflater layoutInflater, ViewGroup viewGroup, boolean z3) {
View inflate = layoutInflater.inflate(R.layout.view_user_favorites, viewGroup, false);
if (z3) {
viewGroup.addView(inflate);
}
return bind(inflate);
}
public ConstraintLayout getRoot() {
return this.rootView;
}
}