导航菜单

页面标题

页面副标题

Petal Maps v4.7.0.310001 - AspiegelLocationPermissionFragment.java 源代码

正在查看: Petal Maps v4.7.0.310001 应用的 AspiegelLocationPermissionFragment.java JAVA 源代码文件

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


package com.huawei.maps.app.setting.ui.fragment;

import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.text.SpannableStringBuilder;
import android.text.TextPaint;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.text.style.ForegroundColorSpan;
import android.view.View;
import android.widget.CompoundButton;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.core.app.ActivityCompat;
import androidx.core.content.PermissionChecker;
import androidx.fragment.app.FragmentActivity;
import androidx.navigation.fragment.NavHostFragment;
import com.huawei.hwidauth.api.Result;
import com.huawei.hwidauth.api.ResultCallBack;
import com.huawei.maps.app.R;
import com.huawei.maps.app.common.utils.ConstantUtil;
import com.huawei.maps.app.databinding.FragmentAspiegelLocationPermissionLayoutBinding;
import com.huawei.maps.app.setting.ui.fragment.AspiegelLocationPermissionFragment;
import com.huawei.maps.businessbase.ui.BaseFragment;
import com.huawei.maps.businessbase.utils.PermissionsUtil;
import com.huawei.maps.commonui.view.dialog.MapAlertDialog;
import com.huawei.maps.privacy.agreement.AgreementRequestHelper;
import com.huawei.secure.android.common.intent.SafeIntent;
import java.util.Locale;

public class AspiegelLocationPermissionFragment extends BaseFragment<FragmentAspiegelLocationPermissionLayoutBinding> {
    public static final String[] c = {"android.permission.ACCESS_FINE_LOCATION", "android.permission.ACCESS_COARSE_LOCATION"};

    @RequiresApi(api = 29)
    public static final String[] d = {"android.permission.ACCESS_FINE_LOCATION", "android.permission.ACCESS_COARSE_LOCATION", "android.permission.ACCESS_BACKGROUND_LOCATION"};

    public class a implements View.OnClickListener {
        public a() {
        }

        @Override
        public void onClick(View view) {
            NavHostFragment.findNavController(AspiegelLocationPermissionFragment.this).navigateUp();
        }
    }

    public class b extends ClickableSpan {
        public b() {
        }

        @Override
        public void onClick(View view) {
            AgreementRequestHelper.a1(AspiegelLocationPermissionFragment.this.getContext(), "privacy-statement.htm");
        }

        @Override
        public void updateDrawState(@NonNull TextPaint textPaint) {
            textPaint.setUnderlineText(false);
        }
    }

    public static String[] k() {
        int i = Build.VERSION.SDK_INT;
        return i >= 30 ? c : (i == 29 && b91.H) ? d : c;
    }

    public int getContentLayoutId() {
        return R.layout.fragment_aspiegel_location_permission_layout;
    }

    public void initDarkMode(boolean z) {
        super.initDarkMode(z);
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).settingPublicHead.setIsDark(z);
    }

    public void initViews() {
        com.huawei.maps.app.petalmaps.a.x1().S5();
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).settingPublicHead.setTitle(getString(R.string.location_data_permission));
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).settingPublicHead.closeIV.setOnClickListener(new a());
        n();
        o();
        kz3.a(getActivity(), ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).locationAuthorityImageview);
    }

    public final void j(final int i) {
        e4.a().checkUserPassword(this, e4.a().isChildren(), i, new ResultCallBack() {
            public final void onResult(Result result) {
                AspiegelLocationPermissionFragment.this.p(i, (ap0) result);
            }
        });
    }

    public final void l() {
        boolean m = m(o41.c(), k());
        boolean v = v(o41.c(), k());
        SafeIntent safeIntent = new SafeIntent(new Intent());
        if (v) {
            if (e4.a().isChildren()) {
                j(112);
                return;
            }
            safeIntent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
            safeIntent.setData(Uri.fromParts("package", o41.c().getPackageName(), null));
            u(R.string.permission_enable_required_title_location, R.string.location_confirm, safeIntent);
            return;
        }
        if (m) {
            safeIntent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
            safeIntent.setData(Uri.fromParts("package", o41.c().getPackageName(), null));
            u(R.string.location_turn_off_content, R.string.location_confirm, safeIntent);
        } else if (e4.a().isChildren()) {
            j(113);
        } else {
            t();
        }
    }

    public final boolean m(Context context, String... strArr) {
        if (strArr == null) {
            return true;
        }
        for (String str : strArr) {
            if ((!PermissionsUtil.n() || Build.VERSION.SDK_INT < 29 || !str.equals("android.permission.ACCESS_BACKGROUND_LOCATION")) && PermissionChecker.checkSelfPermission(context, str) != 0) {
                return false;
            }
        }
        return true;
    }

    public final void n() {
        String string = getResources().getString(R.string.location_authority_declare_part1);
        String string2 = getResources().getString(R.string.location_authority_declare_part2);
        String format = String.format(Locale.ENGLISH, string, string2);
        int indexOf = format.indexOf(string2);
        int length = string2.length() + indexOf;
        SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(format);
        spannableStringBuilder.setSpan(new b(), indexOf, length, 33);
        spannableStringBuilder.setSpan(new ForegroundColorSpan(getResources().getColor(R.color.emui_blue)), indexOf, length, 33);
        spannableStringBuilder.setSpan(z83.a().b(ConstantUtil.Typtface.TITLE.ordinal()), indexOf, length, 33);
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).locationAuthorityDeclare.setHighlightColor(getResources().getColor(android.R.color.transparent));
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).locationAuthorityDeclare.setMovementMethod(LinkMovementMethod.getInstance());
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).locationAuthorityDeclare.setText(spannableStringBuilder);
    }

    public final void o() {
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).swLocationAuthority.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public final void onCheckedChanged(CompoundButton compoundButton, boolean z) {
                AspiegelLocationPermissionFragment.this.q(compoundButton, z);
            }
        });
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).swLocationAuthority.setChecked(m(o41.c(), k()));
    }

    public void onActivityResult(int i, int i2, @Nullable Intent intent) {
        super/*androidx.fragment.app.Fragment*/.onActivityResult(i, i2, intent);
        if (112 == i && -1 == i2) {
            SafeIntent safeIntent = new SafeIntent(new Intent());
            safeIntent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
            safeIntent.setData(Uri.fromParts("package", o41.c().getPackageName(), null));
            u(R.string.permission_enable_required_title_location, R.string.location_confirm, safeIntent);
            return;
        }
        if (113 == i && -1 == i2) {
            t();
        }
    }

    public void onRequestPermissionsResult(int i, @NonNull String[] strArr, @NonNull int[] iArr) {
        super/*androidx.fragment.app.Fragment*/.onRequestPermissionsResult(i, strArr, iArr);
        if (i != 100) {
            return;
        }
        p79.g("SP_REQUEST_BACKGROUND_LOCATION", true, o41.c());
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).swLocationAuthority.setChecked(m(o41.c(), k()));
    }

    public void onResume() {
        super.onResume();
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).swLocationAuthority.setChecked(m(o41.c(), k()));
    }

    public final void p(int i, ap0 ap0Var) {
        if (ap0Var == null) {
            hm4.h("AspiegelLocationPermissionActivity", "msg:check Result == null");
            return;
        }
        if (!ap0Var.a()) {
            m5.j(ap0Var);
            return;
        }
        if (i != 112) {
            t();
            return;
        }
        SafeIntent safeIntent = new SafeIntent(new Intent());
        safeIntent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
        safeIntent.setData(Uri.fromParts("package", o41.c().getPackageName(), null));
        u(R.string.permission_enable_required_title_location, R.string.location_confirm, safeIntent);
    }

    public final void q(CompoundButton compoundButton, boolean z) {
        if (compoundButton.isPressed()) {
            l();
        }
    }

    public final void r(Intent intent, DialogInterface dialogInterface, int i) {
        startActivityForResult(new SafeIntent(intent), 111);
    }

    public final void s(DialogInterface dialogInterface) {
        ((FragmentAspiegelLocationPermissionLayoutBinding) ((BaseFragment) this).mBinding).swLocationAuthority.setChecked(m(o41.c(), k()));
    }

    public final void t() {
        FragmentActivity activity = getActivity();
        if (activity != null) {
            p79.g("SP_REQUEST_BACKGROUND_LOCATION", true, o41.c());
            ActivityCompat.requestPermissions(activity, k(), 100);
        }
    }

    public final void u(int i, int i2, final Intent intent) {
        new MapAlertDialog.Builder(getActivity()).j(i).v(i2, new DialogInterface.OnClickListener() {
            @Override
            public final void onClick(DialogInterface dialogInterface, int i3) {
                AspiegelLocationPermissionFragment.this.r(intent, dialogInterface, i3);
            }
        }).s(new DialogInterface.OnDismissListener() {
            @Override
            public final void onDismiss(DialogInterface dialogInterface) {
                AspiegelLocationPermissionFragment.this.s(dialogInterface);
            }
        }).n(R.string.cancel).F();
    }

    public final boolean v(Context context, String... strArr) {
        for (String str : strArr) {
            int checkSelfPermission = PermissionChecker.checkSelfPermission(context, str);
            FragmentActivity activity = getActivity();
            if (activity != null) {
                boolean shouldShowRequestPermissionRationale = ActivityCompat.shouldShowRequestPermissionRationale(activity, str);
                if (checkSelfPermission == -1 && !shouldShowRequestPermissionRationale) {
                    return true;
                }
            }
        }
        return false;
    }

    public void initData() {
    }
}