导航菜单

页面标题

页面副标题

SpeedCash v6.5.1482 - FastpayMapActivity.java 源代码

正在查看: SpeedCash v6.5.1482 应用的 FastpayMapActivity.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.bm.sc.bebasbayar.ui.activity.info;

import android.content.Intent;
import android.location.Location;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.util.DisplayMetrics;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.appcompat.widget.SearchView;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.bm.sc.bebasbayar.R;
import com.bm.sc.bebasbayar.adapter.entity.LoketFastpayEntity;
import com.bm.sc.bebasbayar.adapter.list.LoketFastpayAdapter;
import com.bm.sc.bebasbayar.handler.MessageComposer;
import com.bm.sc.bebasbayar.handler.MessageSender;
import com.bm.sc.bebasbayar.handler.QRISO;
import com.bm.sc.bebasbayar.helper.Affinity;
import com.bm.sc.bebasbayar.iface.BBCallback;
import com.bm.sc.bebasbayar.iface.MessageProcess;
import com.bm.sc.bebasbayar.message.BaseMessage;
import com.bm.sc.bebasbayar.message.MPMessage;
import com.bm.sc.bebasbayar.message.qr.DataMessage;
import com.bm.sc.bebasbayar.setting.ApiConfig;
import com.bm.sc.bebasbayar.setting.session.AppSession;
import com.bm.sc.bebasbayar.ui.BaseActivity;
import com.bm.sc.bebasbayar.ui.activity.info.FastpayMapActivity;
import com.bm.sc.util.common.Var;
import com.google.android.gms.location.FusedLocationProviderClient;
import com.google.android.gms.location.LocationCallback;
import com.google.android.gms.location.LocationRequest;
import com.google.android.gms.location.LocationResult;
import com.google.android.gms.location.LocationServices;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.CircleOptions;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.android.material.bottomsheet.BottomSheetBehavior;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Objects;

public class FastpayMapActivity extends BaseActivity implements OnMapReadyCallback, LoketFastpayAdapter.Callback {
    public Location d;
    public FusedLocationProviderClient e;
    public GoogleMap f;
    public BottomSheetBehavior<View> g;
    public LoketFastpayEntity h;
    public View i;
    public View j;
    public DisplayMetrics m;
    public LatLng n;
    public final int c = 87231;
    public boolean k = false;
    public boolean l = false;

    public class a extends LocationCallback {
        public a() {
        }

        public void onLocationResult(@NonNull LocationResult locationResult) {
        }
    }

    public class b implements MessageProcess {
        public final BBCallback a;

        public b(BBCallback bBCallback) {
            this.a = bBCallback;
        }

        public void b(BBCallback bBCallback, int i, Boolean bool) {
            if (!bool.booleanValue()) {
                FastpayMapActivity.this.finish();
            } else {
                FastpayMapActivity fastpayMapActivity = FastpayMapActivity.this;
                fastpayMapActivity.A(fastpayMapActivity.d, bBCallback);
            }
        }

        @Override
        public void afterProcess(BaseMessage baseMessage) {
            if (!Var.toString(baseMessage.getItem(MPMessage.INDEX_RC), "").equalsIgnoreCase("00")) {
                SearchView.OnQueryTextListener onQueryTextListener = FastpayMapActivity.this;
                final BBCallback bBCallback = this.a;
                Affinity.confirm(onQueryTextListener, "Gagal mengambil data", "Sepertinya kami gagal mengambil data lokasi loket Fastpay. Apakah Kamu ingin mencobanya kembali?", new BBCallback() {
                    @Override
                    public final void do_callback(int i, Object obj) {
                        FastpayMapActivity.b.this.b(bBCallback, i, (Boolean) obj);
                    }
                });
            } else {
                ArrayList arrayList = Var.toArrayList(baseMessage.getItem("data"));
                ArrayList arrayList2 = new ArrayList();
                arrayList2.addAll(arrayList);
                this.a.do_callback(0, arrayList2);
            }
        }

        @Override
        public void backgroundProcess(long j, long j2, boolean z) {
        }

        @Override
        public void preProcess() {
        }
    }

    public void B(ArrayList arrayList) {
        if (!this.k) {
            L(arrayList);
        } else {
            this.k = false;
            this.g.setState(5);
        }
    }

    public void C(final ArrayList arrayList) {
        new Handler().postDelayed(new Runnable() {
            @Override
            public final void run() {
                FastpayMapActivity.this.B(arrayList);
            }
        }, 1200L);
    }

    public void D() {
        this.g.setState(5);
    }

    public void E() {
        this.j.setVisibility(0);
        findViewById(R.id.loket_whatsapp).setVisibility(8);
    }

    public boolean F(Marker marker) {
        new Handler().postDelayed(new Runnable() {
            @Override
            public final void run() {
                FastpayMapActivity.this.E();
            }
        }, 600L);
        this.g.setState(5);
        marker.showInfoWindow();
        this.n = marker.getPosition();
        this.l = false;
        return true;
    }

    public void G(int i, ArrayList arrayList) {
        if (arrayList.size() > 0) {
            final ArrayList arrayList2 = new ArrayList();
            Iterator it = arrayList.iterator();
            while (it.hasNext()) {
                HashMap hashMap = (HashMap) it.next();
                int i2 = Var.toInt(hashMap.get("jarak"), 0);
                String var = Var.toString(hashMap.get("nama_loket"), "");
                String var2 = Var.toString(hashMap.get("alamat_loket"), "");
                String var3 = Var.toString(hashMap.get("no_hp_loket"), "");
                double d = Var.toDouble(hashMap.get(AppSession.LATITUDE), 0.0d);
                double d2 = Var.toDouble(hashMap.get("longitude"), 0.0d);
                LoketFastpayEntity loketFastpayEntity = new LoketFastpayEntity();
                loketFastpayEntity.setJarak(i2);
                loketFastpayEntity.setNama_loket(var);
                loketFastpayEntity.setAlamat_loket(var2);
                loketFastpayEntity.setNo_hp_loket(var3);
                loketFastpayEntity.setLatitude(d);
                loketFastpayEntity.setLongitude(d2);
                arrayList2.add(loketFastpayEntity);
                this.f.addMarker(new MarkerOptions().position(new LatLng(d, d2)).title(var).icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_marker_loket_fastpay)));
            }
            LatLng latLng = new LatLng(this.d.getLatitude(), this.d.getLongitude());
            this.f.animateCamera(CameraUpdateFactory.newLatLng(latLng));
            this.f.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng, 14.0f));
            this.f.addCircle(new CircleOptions().center(latLng).radius(1000.0d).strokeColor(-3355444).fillColor(576355576).strokeWidth(5.0f));
            this.f.setOnCameraIdleListener(new GoogleMap.OnCameraIdleListener() {
                public final void onCameraIdle() {
                    FastpayMapActivity.this.C(arrayList2);
                }
            });
            this.f.setOnCameraMoveListener(new GoogleMap.OnCameraMoveListener() {
                public final void onCameraMove() {
                    FastpayMapActivity.this.D();
                }
            });
            this.f.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
                public final boolean onMarkerClick(Marker marker) {
                    boolean F;
                    F = FastpayMapActivity.this.F(marker);
                    return F;
                }
            });
        }
    }

    public void H(Location location) {
        if (location != null) {
            this.d = location;
            A(location, new BBCallback() {
                @Override
                public final void do_callback(int i, Object obj) {
                    FastpayMapActivity.this.G(i, (ArrayList) obj);
                }
            });
        }
    }

    public final void A(Location location, BBCallback<ArrayList<HashMap<String, Object>>> bBCallback) {
        MessageComposer messageComposer = new MessageComposer(99, ApiConfig.getBaseUrl()[0] + "loket-fastpay");
        messageComposer.addMessage(AppSession.LATITUDE, Double.valueOf(location.getLatitude()));
        messageComposer.addMessage("longitude", Double.valueOf(location.getLongitude()));
        messageComposer.addMessage(DataMessage.ID_OUTLET, this.appSession.retrieve(AppSession.PROPERTY_MERCHANT_ID));
        messageComposer.setRequest_method(MessageComposer.POST);
        messageComposer.setData_type(1);
        messageComposer.setShowProgressRegular(false);
        messageComposer.setIs_encrypted(false);
        messageComposer.setMessageProcess(new b(bBCallback));
        new MessageSender(this, messageComposer).execute();
    }

    public final String I(String str) {
        String replaceAll = str.replaceAll("\\D", "");
        if (!replaceAll.startsWith("0")) {
            return replaceAll;
        }
        return QRISO.ID_ADD_DATA + replaceAll.substring(1);
    }

    public final void J(double d, double d2) {
        Intent intent = new Intent("android.intent.action.VIEW", Uri.parse("google.navigation:q=" + d + "," + d2));
        intent.setPackage("com.google.android.apps.maps");
        if (intent.resolveActivity(getPackageManager()) != null) {
            startActivity(intent);
        }
    }

    public final void K() {
        startActivity(new Intent("android.intent.action.VIEW", Uri.parse("https://api.whatsapp.com/send?phone=" + I(this.h.getNo_hp_loket()))));
    }

    public final void L(ArrayList<LoketFastpayEntity> arrayList) {
        this.k = false;
        RecyclerView recyclerView = (RecyclerView) this.i.findViewById(R.id.list_loket_rv);
        recyclerView.setLayoutManager(new LinearLayoutManager(this, 1, false));
        LoketFastpayAdapter loketFastpayAdapter = new LoketFastpayAdapter(this);
        loketFastpayAdapter.updateList(arrayList);
        loketFastpayAdapter.setCallback(this);
        recyclerView.setAdapter(loketFastpayAdapter);
        this.i.setVisibility(0);
        this.g.setPeekHeight(this.m.heightPixels / 2);
        this.g.setState(3);
    }

    @Override
    public int getLayoutResource() {
        return R.layout.activity_fastpay_map;
    }

    @Override
    public String getWikiNameSpace() {
        return null;
    }

    @Override
    public boolean isEligibleForFavorit() {
        return false;
    }

    @Override
    public void onClick(View view) {
        double d;
        double d2;
        if (view.getId() == 2131364713) {
            if (this.h != null) {
                K();
            }
        } else {
            if (view.getId() != 2131364706) {
                super.onClick(view);
                return;
            }
            if (this.l) {
                d = this.h.getLatitude();
                d2 = this.h.getLongitude();
            } else {
                LatLng latLng = this.n;
                d = latLng.latitude;
                d2 = latLng.longitude;
            }
            J(d, d2);
        }
    }

    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        this.m = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(this.m);
        this.j = findViewById(R.id.loket_toolbar_container);
        View findViewById = findViewById(R.id.bottomsheet_container);
        this.i = findViewById;
        findViewById.setVisibility(8);
        BottomSheetBehavior<View> from = BottomSheetBehavior.from(this.i);
        this.g = from;
        from.setHideable(true);
        this.e = LocationServices.getFusedLocationProviderClient(getApplicationContext());
        SupportMapFragment findFragmentById = getSupportFragmentManager().findFragmentById(R.id.map);
        Objects.requireNonNull(findFragmentById);
        findFragmentById.getMapAsync(this);
        findViewById(R.id.loket_whatsapp).setOnClickListener(this);
        findViewById(R.id.loket_direction).setOnClickListener(this);
    }

    public void onMapReady(@NonNull GoogleMap googleMap) {
        googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(-0.789275d, 113.921327d), 4.0f));
        this.f = googleMap;
        if (ContextCompat.checkSelfPermission(this, "android.permission.ACCESS_FINE_LOCATION") == 0) {
            this.f.setMyLocationEnabled(true);
            this.f.getUiSettings().setZoomControlsEnabled(true);
        }
        z();
    }

    @Override
    public void onPickLoket(int i, LoketFastpayEntity loketFastpayEntity) {
        this.j.setVisibility(0);
        findViewById(R.id.loket_whatsapp).setVisibility(0);
        findViewById(R.id.loket_direction).setVisibility(0);
        y(new LatLng(loketFastpayEntity.getLatitude(), loketFastpayEntity.getLongitude()), loketFastpayEntity.getNama_loket());
        this.k = true;
        this.h = loketFastpayEntity;
        this.l = true;
    }

    @Override
    public void onRequestPermissionsResult(int i, @NonNull String[] strArr, @NonNull int[] iArr) {
        if (i != 87231) {
            super.onRequestPermissionsResult(i, strArr, iArr);
        } else {
            if (iArr.length <= 0 || iArr[0] != 0) {
                return;
            }
            z();
        }
    }

    @Override
    public void onResume() {
        super.onResume();
        z();
    }

    public final void y(LatLng latLng, String str) {
        Marker addMarker = this.f.addMarker(new MarkerOptions().position(latLng).title(str).icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_marker_loket_fastpay)));
        this.f.animateCamera(CameraUpdateFactory.newLatLng(latLng));
        this.f.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng, 18.0f));
        Objects.requireNonNull(addMarker);
        addMarker.showInfoWindow();
    }

    public final void z() {
        if (ContextCompat.checkSelfPermission(this, "android.permission.ACCESS_FINE_LOCATION") != 0 && ContextCompat.checkSelfPermission(this, "android.permission.ACCESS_COARSE_LOCATION") != 0) {
            if (Build.VERSION.SDK_INT >= 31) {
                ActivityCompat.requestPermissions(this, new String[]{"android.permission.ACCESS_FINE_LOCATION", "android.permission.ACCESS_COARSE_LOCATION"}, 87231);
                return;
            } else {
                ActivityCompat.requestPermissions(this, new String[]{"android.permission.ACCESS_FINE_LOCATION"}, 87231);
                return;
            }
        }
        LocationRequest create = LocationRequest.create();
        create.setInterval(60000L);
        create.setPriority(100);
        create.setFastestInterval(5000L);
        this.e.requestLocationUpdates(create, new a(), (Looper) null);
        this.e.getLastLocation().addOnSuccessListener(new OnSuccessListener() {
            public final void onSuccess(Object obj) {
                FastpayMapActivity.this.H((Location) obj);
            }
        });
    }
}