导航菜单

页面标题

页面副标题

BodyTech v7.6.4 - SettingsFragment.java 源代码

正在查看: BodyTech v7.6.4 应用的 SettingsFragment.java JAVA 源代码文件

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


package com.fitnessmobileapps.fma.views;

import android.content.Intent;
import android.content.SharedPreferences;
import android.content.res.Resources;
import android.media.Ringtone;
import android.media.RingtoneManager;
import android.net.Uri;
import android.os.Bundle;
import android.os.Parcelable;
import android.provider.Settings;
import android.text.TextUtils;
import android.view.View;
import androidx.annotation.StringRes;
import androidx.appcompat.widget.Toolbar;
import androidx.collection.ArrayMap;
import androidx.fragment.app.FragmentActivity;
import androidx.navigation.Navigation;
import androidx.preference.CheckBoxPreference;
import androidx.preference.ListPreference;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import com.fitnessmobileapps.bodytech39559.R;
import com.fitnessmobileapps.fma.Application;
import com.fitnessmobileapps.fma.core.data.remote.model.GymInfo;
import com.fitnessmobileapps.fma.feature.common.navigation.ToolbarKt;
import com.fitnessmobileapps.fma.util.NavigationActivityHelper;
import java.util.Locale;

public class SettingsFragment extends PreferenceFragmentCompat implements Preference.OnPreferenceClickListener, Preference.OnPreferenceChangeListener {

    @StringRes
    public static final int[] f10640e = {R.string.preference_key_privacy, R.string.preference_key_calendar_reminder, R.string.preference_key_language, R.string.preference_key_geofence};

    private ArrayMap<String, Preference.OnPreferenceClickListener> f10641c = new ArrayMap<>();

    private ArrayMap<String, Preference.OnPreferenceChangeListener> f10642d = new ArrayMap<>();

    private void A() {
        FragmentActivity activity = getActivity();
        if (activity != null) {
            NavigationActivityHelper.d(activity);
        }
    }

    private void B(Preference preference, Ringtone ringtone) {
        preference.setSummary(ringtone != null ? ringtone.getTitle(preference.getContext()) : getString(R.string.preference_notification_no_sound));
    }

    private void C(Preference preference, String str) {
        B(preference, !TextUtils.isEmpty(str) ? RingtoneManager.getRingtone(preference.getContext(), Uri.parse(str)) : null);
    }

    private void v() {
        for (int i10 : f10640e) {
            Preference findPreference = getPreferenceManager().findPreference(getString(i10));
            if (findPreference != null) {
                this.f10641c.put(getString(i10), findPreference.getOnPreferenceClickListener());
                this.f10642d.put(getString(i10), findPreference.getOnPreferenceChangeListener());
                findPreference.setOnPreferenceClickListener(this);
                findPreference.setOnPreferenceChangeListener(this);
            }
        }
    }

    private String w() {
        return String.format(Locale.US, "%1$s (%2$d)", "7.6.4", 760400);
    }

    private Intent x() {
        GymInfo h10 = Application.d().c().h();
        if (h10 == null || h10.getContact() == null) {
            return null;
        }
        return new Intent("android.intent.action.VIEW", Uri.parse(!com.fitnessmobileapps.fma.util.u0.b(h10.getContact().getWebsite()) ? h10.getContact().getWebsite() : String.format(Locale.US, "https://clients.mindbodyonline.com/ws.asp?studioid=%1$s", h10.getContact().getSiteId())));
    }

    public boolean y(Preference preference, Object obj) {
        if (Boolean.TRUE.equals(obj)) {
            com.fitnessmobileapps.fma.util.j0.i(getActivity(), true);
        } else {
            com.fitnessmobileapps.fma.util.j0.j(getActivity());
        }
        return true;
    }

    public boolean z(Preference preference, Object obj) {
        Locale.setDefault(a4.a.b((String) obj));
        A();
        return true;
    }

    @Override
    public void onActivityResult(int i10, int i11, Intent intent) {
        if (i10 != 1337 || intent == null) {
            super.onActivityResult(i10, i11, intent);
            return;
        }
        Uri uri = (Uri) intent.getParcelableExtra("android.intent.extra.ringtone.PICKED_URI");
        String uri2 = uri != null ? uri.toString() : "";
        Preference findPreference = findPreference(getString(R.string.preference_key_notification_sound));
        if (findPreference != null) {
            SharedPreferences.Editor edit = findPreference.getSharedPreferences().edit();
            edit.putString(getString(R.string.preference_key_notification_sound), uri2);
            edit.apply();
        }
        Application.d().f();
        C(findPreference, uri2);
    }

    @Override
    public void onCreatePreferences(Bundle bundle, String str) {
        addPreferencesFromResource(R.xml.activity_settings);
        Preference findPreference = findPreference(getString(R.string.preference_key_notification_sound));
        if (findPreference != null) {
            String string = findPreference.getSharedPreferences().getString(getString(R.string.preference_key_notification_sound), null);
            if (string == null) {
                Ringtone ringtone = RingtoneManager.getRingtone(findPreference.getContext(), Settings.System.DEFAULT_NOTIFICATION_URI);
                if (ringtone == null) {
                    ringtone = RingtoneManager.getRingtone(findPreference.getContext(), Settings.System.DEFAULT_RINGTONE_URI);
                }
                B(findPreference, ringtone);
            } else {
                C(findPreference, string);
            }
        }
        Resources resources = getResources();
        Preference findPreference2 = findPreference(getString(R.string.preference_key_version));
        if (findPreference2 != null) {
            findPreference2.setSummary(w());
        }
        Preference findPreference3 = findPreference(getString(R.string.preference_key_studio_policy));
        Intent x10 = x();
        if (findPreference3 != null) {
            if (x10 != null) {
                findPreference3.setTitle(getString(R.string.preference_studio_privacy_policy, getString(R.string.bma_app_name)));
                findPreference3.setIntent(x10);
                findPreference3.setEnabled(true);
            } else {
                findPreference3.setEnabled(false);
            }
        }
        CheckBoxPreference checkBoxPreference = (CheckBoxPreference) findPreference(getString(R.string.preference_key_notification));
        if (checkBoxPreference != null) {
            if (ea.g.m().g(checkBoxPreference.getContext()) != 0) {
                checkBoxPreference.setEnabled(false);
            }
            checkBoxPreference.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
                @Override
                public final boolean onPreferenceChange(Preference preference, Object obj) {
                    boolean y10;
                    y10 = SettingsFragment.this.y(preference, obj);
                    return y10;
                }
            });
        }
        Preference findPreference4 = findPreference(getString(R.string.preference_key_privacy));
        if (findPreference4 != null) {
            findPreference4.setIntent(new Intent("android.intent.action.VIEW", Uri.parse("https://company.mindbodyonline.com/legal/privacy-policy")));
        }
        ListPreference listPreference = (ListPreference) findPreference(getString(R.string.preference_key_language));
        if (listPreference != null) {
            listPreference.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
                @Override
                public final boolean onPreferenceChange(Preference preference, Object obj) {
                    boolean z10;
                    z10 = SettingsFragment.this.z(preference, obj);
                    return z10;
                }
            });
        }
        ListPreference listPreference2 = (ListPreference) findPreference(getString(R.string.preference_key_calendar_reminder));
        if (listPreference2 != null) {
            String[] stringArray = resources.getStringArray(R.array.settings_calendar_reminder);
            String[] strArr = new String[stringArray.length];
            strArr[0] = resources.getString(R.string.preference_calendar_reminder_none);
            for (int i10 = 1; i10 < stringArray.length; i10++) {
                strArr[i10] = resources.getString(R.string.preference_calendar_reminder_min, stringArray[i10]);
            }
            listPreference2.setEntries(strArr);
        }
        Preference findPreference5 = findPreference(getString(R.string.preference_key_geofence));
        h1.a k10 = h1.a.k(getContext());
        if (k10 != null && findPreference5 != null) {
            findPreference5.setVisible(k10.u());
        }
        v();
    }

    @Override
    public boolean onPreferenceChange(Preference preference, Object obj) {
        Preference.OnPreferenceChangeListener onPreferenceChangeListener = this.f10642d.get(preference.getKey());
        return onPreferenceChangeListener == null || onPreferenceChangeListener.onPreferenceChange(preference, obj);
    }

    @Override
    public boolean onPreferenceClick(Preference preference) {
        Preference.OnPreferenceClickListener onPreferenceClickListener = this.f10641c.get(preference.getKey());
        return onPreferenceClickListener != null && onPreferenceClickListener.onPreferenceClick(preference);
    }

    @Override
    public boolean onPreferenceTreeClick(Preference preference) {
        if (!preference.getKey().equals(getString(R.string.preference_key_notification_sound))) {
            return super.onPreferenceTreeClick(preference);
        }
        Intent intent = new Intent("android.intent.action.RINGTONE_PICKER");
        intent.putExtra("android.intent.extra.ringtone.TYPE", 2);
        intent.putExtra("android.intent.extra.ringtone.SHOW_DEFAULT", true);
        intent.putExtra("android.intent.extra.ringtone.SHOW_SILENT", true);
        Uri uri = Settings.System.DEFAULT_NOTIFICATION_URI;
        intent.putExtra("android.intent.extra.ringtone.DEFAULT_URI", uri);
        Preference findPreference = findPreference(getString(R.string.preference_key_notification_sound));
        if (findPreference != null) {
            String string = findPreference.getSharedPreferences().getString(getString(R.string.preference_key_notification_sound), null);
            if (string == null) {
                intent.putExtra("android.intent.extra.ringtone.EXISTING_URI", uri);
            } else if (string.length() == 0) {
                intent.putExtra("android.intent.extra.ringtone.EXISTING_URI", (Parcelable) null);
            } else {
                intent.putExtra("android.intent.extra.ringtone.EXISTING_URI", Uri.parse(string));
            }
        }
        startActivityForResult(intent, 1337);
        return true;
    }

    @Override
    public void onViewCreated(View view, Bundle bundle) {
        super.onViewCreated(view, bundle);
        ToolbarKt.h((Toolbar) view.findViewById(R.id.appToolbar), Navigation.findNavController(view), getActivity());
    }
}