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,165 @@
package com.google.android.gms.dynamic;
import android.annotation.SuppressLint;
import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import com.google.android.gms.common.annotation.KeepForSdk;
import com.google.android.gms.common.internal.Preconditions;
import com.google.android.gms.dynamic.IFragmentWrapper;
@KeepForSdk
@SuppressLint({"NewApi"})
/* loaded from: classes3.dex */
public final class FragmentWrapper extends IFragmentWrapper.Stub {
private Fragment zza;
private FragmentWrapper(Fragment fragment) {
this.zza = fragment;
}
@KeepForSdk
public static FragmentWrapper wrap(Fragment fragment) {
if (fragment != null) {
return new FragmentWrapper(fragment);
}
return null;
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzA() {
return this.zza.isVisible();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final int zzb() {
return this.zza.getId();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final int zzc() {
return this.zza.getTargetRequestCode();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final Bundle zzd() {
return this.zza.getArguments();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final IFragmentWrapper zze() {
return wrap(this.zza.getParentFragment());
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final IFragmentWrapper zzf() {
return wrap(this.zza.getTargetFragment());
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final IObjectWrapper zzg() {
return ObjectWrapper.wrap(this.zza.getActivity());
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final IObjectWrapper zzh() {
return ObjectWrapper.wrap(this.zza.getResources());
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final IObjectWrapper zzi() {
return ObjectWrapper.wrap(this.zza.getView());
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final String zzj() {
return this.zza.getTag();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzk(IObjectWrapper iObjectWrapper) {
View view = (View) ObjectWrapper.unwrap(iObjectWrapper);
Fragment fragment = this.zza;
Preconditions.checkNotNull(view);
fragment.registerForContextMenu(view);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzl(boolean z3) {
this.zza.setHasOptionsMenu(z3);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzm(boolean z3) {
this.zza.setMenuVisibility(z3);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzn(boolean z3) {
this.zza.setRetainInstance(z3);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzo(boolean z3) {
this.zza.setUserVisibleHint(z3);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzp(Intent intent) {
this.zza.startActivity(intent);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzq(Intent intent, int i) {
this.zza.startActivityForResult(intent, i);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final void zzr(IObjectWrapper iObjectWrapper) {
View view = (View) ObjectWrapper.unwrap(iObjectWrapper);
Fragment fragment = this.zza;
Preconditions.checkNotNull(view);
fragment.unregisterForContextMenu(view);
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzs() {
return this.zza.getRetainInstance();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzt() {
return this.zza.getUserVisibleHint();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzu() {
return this.zza.isAdded();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzv() {
return this.zza.isDetached();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzw() {
return this.zza.isHidden();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzx() {
return this.zza.isInLayout();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzy() {
return this.zza.isRemoving();
}
@Override // com.google.android.gms.dynamic.IFragmentWrapper
public final boolean zzz() {
return this.zza.isResumed();
}
}