Tesis 1.0.0
Loading...
Searching...
No Matches
MercadoPagoTester.java
Go to the documentation of this file.
1package com.example.food_front.utils;
2
3import android.content.Context;
4import android.os.Handler;
5import android.os.Looper;
6import android.util.Log;
7import android.widget.Toast;
8
9import com.example.food_front.models.MercadoPagoPreference;
10
15public class MercadoPagoTester {
16 private static final String TAG = "MPTester";
17
24 public static void testConnection(Context context, String email, boolean showToasts) {
25 final Handler mainHandler = new Handler(Looper.getMainLooper());
26
27 // Primero verificamos si el servidor está disponible
28 new Thread(new Runnable() {
29 @Override
30 public void run() {
31 boolean serverReachable = NetworkUtils.checkUrlAvailability("backmp.onrender.com", 5000);
32
33 mainHandler.post(new Runnable() {
34 @Override
35 public void run() {
36 if (serverReachable) {
37 Log.d(TAG, "✅ Servidor alcanzable");
38 if (showToasts) {
39 Toast.makeText(context, "✅ Servidor de pagos disponible", Toast.LENGTH_SHORT).show();
40 }
41
42 // Ahora probamos la creación de preferencia
43 testCreatePreference(context, email, showToasts);
44 } else {
45 Log.e(TAG, "❌ Servidor no alcanzable");
46 if (showToasts) {
47 Toast.makeText(context, "❌ Servidor de pagos no disponible", Toast.LENGTH_SHORT).show();
48 }
49 }
50 }
51 });
52 }
53 }).start();
54 }
55
59 private static void testCreatePreference(Context context, String email, boolean showToasts) {
60 MercadoPagoService mercadoPagoService = new MercadoPagoService(context);
61
62 mercadoPagoService.createPreference(email, new MercadoPagoService.MercadoPagoCallback() {
63 @Override
64 public void onSuccess(MercadoPagoPreference preference) {
65 Log.d(TAG, "✅ Preferencia creada correctamente");
66 Log.d(TAG, "URL: " + preference.getInitPoint());
67 Log.d(TAG, "ID Preferencia: " + preference.getPreferenceId());
68 Log.d(TAG, "ID Request: " + preference.getPaymentRequestId());
69
70 if (showToasts) {
71 Toast.makeText(context, "✅ Preferencia de pago creada", Toast.LENGTH_SHORT).show();
72 }
73 }
74
75 @Override
76 public void onError(String errorMessage) {
77 Log.e(TAG, "❌ Error al crear preferencia: " + errorMessage);
78
79 if (showToasts) {
80 Toast.makeText(context, "❌ Error: " + errorMessage, Toast.LENGTH_LONG).show();
81 }
82 }
83 });
84 }
85}
void createPreference(String email, MercadoPagoCallback callback)
static void testConnection(Context context, String email, boolean showToasts)
static boolean checkUrlAvailability(final String urlString, int timeout)